--- /dev/null
+#!/usr/bin/env python
+import os, sys, pickle, signal, commands
+
+########## kills all salome processes with the given port ##########
+def killSalome(port):
+ filedict='/tmp/'+os.getenv('USER')+"_"+port+'_SALOME_pidict'
+ found = 0
+ try:
+ fpid=open(filedict, 'r')
+ found = 1
+ except:
+ print "le fichier %s des process SALOME n'est pas accessible"% filedict
+ pass
+
+ if found:
+ a = os.system("pid=`ps -eo pid,command | egrep \"[0-9] omniNames -start "+str(port)+"\" | sed -e \"s%[^0-9]*\([0-9]*\) .*%\\1%g\"`; kill -9 $pid")
+ try:
+ process_ids=pickle.load(fpid)
+ fpid.close()
+ for process_id in process_ids:
+
+ for pid, cmd in process_id.items():
+ try:
+ os.kill(int(pid),signal.SIGKILL)
+ except:
+ print " ------------------ process %s : %s inexistant"% (pid, cmd[0])
+ pass
+ pass
+ except:
+ pass
+ os.remove(filedict)
+ pid = commands.getoutput("ps -eo pid,command | egrep \"[0-9] omniNames -start "+str(port)+"\" | sed -e \"s%[^0-9]*\([0-9]*\) .*%\\1%g\"")
+ while pid != "":
+ a = os.system("pid=`ps -eo pid,command | egrep \"[0-9] omniNames -start "+str(port)+"\" | sed -e \"s%[^0-9]*\([0-9]*\) .*%\\1%g\"`; kill -9 $pid")
+ pid = commands.getoutput("ps -eo pid,command | egrep \"[0-9] omniNames -start "+str(port)+"\" | sed -e \"s%[^0-9]*\([0-9]*\) .*%\\1%g\"")
+
+
+if sys.argv[0] == "killSalomeWithPort.py":
+ for port in sys.argv[1:]:
+ killSalome(port)
--- /dev/null
+import os, glob, string, sys
+import xml.sax
+
+### xml reader for launch configuration file usage
+class xml_parser:
+ def __init__(self, fileName):
+ self.space = []
+ self.opts = {}
+ parser = xml.sax.make_parser()
+ parser.setContentHandler(self)
+ parser.parse(fileName)
+ pass
+
+ def CorrectBoolean(self, str):
+ if str in ("yes", "y", "1"):
+ return 1
+ elif str in ("no", "n", "0"):
+ return 0
+ else:
+ return str
+ pass
+
+ def startElement(self, name, attrs):
+ #print "startElement name=",name
+ #print "startElement attrs=",attrs.getNames()
+ self.space.append(name)
+ self.current = None
+
+ if self.space[:2] == ["Configuration-list","launchoptions"] and len(self.space) == 3:
+ self.current = name
+ elif self.space == ["Configuration-list","modules-list"]:
+ self.opts["modules"] = []
+ elif self.space == ["Configuration-list","modules-list","module"] and "name" in attrs.getNames():
+ for field in attrs.getNames():
+ if field == "name":
+ self.currentModuleName = str(attrs.getValue("name"))
+ self.opts["modules"].append(self.currentModuleName)
+ else:
+ self.opts[str(attrs.getValue("name"))+"_"+str(field)] = self.CorrectBoolean(attrs.getValue(field))
+ pass
+ pass
+ elif self.space == ["Configuration-list","modules-list","module","plugin"] and "name" in attrs.getNames():
+ key = str(self.currentModuleName)+"_plugins"
+ if not self.opts.has_key("key"):
+ self.opts[key]=[]
+ pass
+ self.opts[key].append(attrs.getValue("name"))
+ elif self.space == ["Configuration-list","containers-list"]:
+ self.opts["containers"] = []
+ pass
+ pass
+
+ def endElement(self, name):
+ p = self.space.pop()
+ self.current = None
+ pass
+
+ def characters(self, content):
+ #print "Characters content:",content
+ if self.current:
+ self.opts[self.current] = self.CorrectBoolean(content)
+ elif self.space == ["Configuration-list","containers-list", "containertype"]:
+ self.opts["containers"].append(content)
+ pass
+
+ def processingInstruction(self, target, data):
+ pass
+
+ def setDocumentLocator(self, locator):
+ pass
+
+ def startDocument(self):
+ self.read = None
+ pass
+
+ def endDocument(self):
+ self.read = None
+ pass
+
+### searching for launch configuration file : $HOME/.$(application_name)/$(application_name).launch
+appname = None
+filename = None
+for bindir in glob.glob(os.environ["KERNEL_ROOT_DIR"]+"/bin/*"):
+ appname = string.split(bindir, "/").pop()
+ print 'Application name: "'+appname+'"'
+ filename = os.environ["HOME"]+"/."+appname+"/"+appname+".launch"
+ if not os.path.exists(filename) and \
+ not os.path.exists(os.environ["KERNEL_ROOT_DIR"]+"/bin/"+appname+"/"+appname+".launch"):
+ filename = None
+ else:
+ break
+ pass
+if not appname:
+ print "Can not find application name"
+ if not os.have_key("KERNEL_ROOT_DIR"):
+ print "KERNEL_ROOT_DIR environment variable must be set"
+ pass
+ sys.exit(1);
+elif not filename or not os.path.exists(filename):
+ filename = os.environ["HOME"]+"/."+appname+"/"+appname+".launch"
+ print "Launch configuration file is not exist. Create default:",filename
+ os.system("mkdir -p "+os.environ["HOME"]+"/."+appname)
+ os.system("cp -f "+os.environ["KERNEL_ROOT_DIR"]+"/bin/"+appname+"/"+appname+".launch "+filename)
+ pass
+
+### get options from launch configuration file
+try:
+ p = xml_parser(filename)
+except:
+ print 'Can not read launch configuration file ', filename
+ filename = None
+ pass
+
+if filename:
+ args = p.opts
+else:
+ args = {}
+ pass
+
+args["appname"] = appname
+
+### searching for my port
+my_port = 2809
+try:
+ file = open(os.environ["OMNIORB_CONFIG"], "r")
+ s = file.read()
+ while len(s):
+ l = string.split(s, ":")
+ if string.split(l[0], " ")[0] == "ORBInitRef":
+ my_port = int(l[len(l)-1])
+ pass
+ s = file.read()
+ pass
+except:
+ pass
+
+args["port"] = my_port
+
+### command line options reader
+def options_parser(line):
+ source = line
+ list = []
+ for delimiter in [" ", ",", "="]:
+ for o in source:
+ list += string.split(o, delimiter)
+ pass
+ source = list
+ list = []
+ pass
+
+ result = {}
+ i = 0
+ while i < len(source):
+ if source[i][0] != '-':
+ key = None
+ elif source[i][1] == '-':
+ key = source[i][2]
+ else:
+ key = source[i][1]
+ pass
+
+ result[key] = []
+ if key:
+ i += 1
+ pass
+ while i < len(source) and source[i][0] != '-':
+ result[key].append(source[i])
+ i += 1
+ pass
+ pass
+ return result
+
+### read command-line options
+try:
+ opts = options_parser(sys.argv[1:])
+ kernel_root_dir=os.environ["KERNEL_ROOT_DIR"]
+except:
+ opts["h"] = 1
+ pass
+
+### check all options are right
+for opt in opts:
+ if not opt in ("h","g","l","x","m","c","p","k","t"):
+ opts["h"] = 1
+
+
+if opts.has_key("h"):
+ print """USAGE: runSalome.py [options]
+ [command line options] :
+ --help or -h : print this help
+ --gui or -g : lancement du GUI
+ --terminal -t : launching without gui (to deny --gui)
+ --logger or -l : redirection des messages dans un fichier
+ --xterm or -x : les serveurs ouvrent une fenêtre xterm et les messages sont affichés dans cette fenêtre
+ --modules=module1,module2,... : où modulen est le nom d'un module Salome à charger dans le catalogue
+ or -m=module1,module2,...
+ --containers=cpp,python,superv: lancement des containers cpp, python et de supervision
+ or -c=cpp,python,superv
+ --portkill or -p : kill the salome with current port
+ --killall or -k : kill salome
+
+ La variable d'environnement <modulen>_ROOT_DIR doit etre préalablement
+ positionnée (modulen doit etre en majuscule).
+ KERNEL_ROOT_DIR est obligatoire.
+ """
+ sys.exit(1)
+ pass
+
+### apply command-line options to the arguments
+for opt in opts:
+ if opt == 'g':
+ args['gui'] = 1
+ elif opt == 'l':
+ args['logger'] = 1
+ elif opt == 'x':
+ args['xterm'] = 1
+ elif opt == 'm':
+ args['modules'] = opts['m']
+ elif opt == 'c':
+ args['containers'] = opts['c']
+ elif opt == 'p':
+ args['portkill'] = 1
+ elif opt == 'k':
+ args['killall'] = 1
+ pass
+ pass
+
+# 'terminal' must be processed in the end: to deny any 'gui' options
+if 't' in opts:
+ args['gui'] = 0
+ pass
--- /dev/null
+#!/bin/csh -f
+
+runSalome --gui --modules=GEOM,SMESH,VISU,SUPERV,MED --containers=cpp,python --killall
--- /dev/null
+<Configuration-list>
+ <launchoptions>
+ <gui>yes</gui>
+ <logger>no</logger>
+ <xterm>no</xterm>
+ <portkill>yes</portkill>
+ <killall>no</killall>
+ </launchoptions>
+ <modules-list>
+ <module name="GEOM"/>
+ <module name="SMESH">
+ <plugin name="NETGENPlugin"/>
+ </module>
+ <module name="VISU"/>
+ <module name="SUPERV"/>
+ <module name="MED"/>
+ <module name="COMPONENT"/>
+ <module name="PYCALCULATOR"/>
+ </modules-list>
+ <containers-list>
+ <containertype>cpp</containertype>
+ <containertype>python</containertype>
+ <containertype>superv</containertype>
+ </containers-list>
+</Configuration-list>
--- /dev/null
+#! /bin/bash
+
+# print the help message ====================================
+
+# test $@="-h" -o -z $@
+
+hh=0
+
+if test "$#" = "0";then
+ hh=1
+else
+ for a in $@; do
+ if test "$a" = "-h"; then
+ hh=1
+ fi
+ done
+fi
+
+if test "$hh" = "1" ; then
+ echo ""
+ echo "Usage : "
+ echo ""
+ echo " to run IDLparser:"
+ echo ""
+ echo " $0 -Wbcatalog=<my_catalog.xml>[,icon=<pngfile>][,version=<num>][,author=<name>][,name=<component_name>][,multistudy=<component_multistudy>][,remove=component_name] <file.idl> "
+ echo ""
+ echo " to have omniidl help:"
+ echo ""
+ echo " $0 -u "
+ echo ""
+ exit 1
+fi
+#============================================================
+
+# environment ==============================================
+@ENVSCRIPT@
+
+cd $DIR
+
+PYTHONPATH=${PYTHONPATH}:${SALOME_HOME_DIR}/bin
+#============================================================
+
+# omiidl ====================================================
+omniidl -bIDLparser -I ${SALOME_SRC_DIR}/idl $@
+#============================================================
--- /dev/null
+#!/usr/bin/env python
+
+import orbmodule
+
+clt=orbmodule.client()
+
+clt.showNS()
--- /dev/null
+%!PS-Adobe-2.0
+%%Creator: dvips(k) 5.86 Copyright 1999 Radical Eye Software
+%%Title: DevelopersGuide.dvi
+%%Pages: 20
+%%PageOrder: Ascend
+%%BoundingBox: 0 0 596 842
+%%DocumentFonts: Times-Roman Helvetica-Bold Times-Bold Courier
+%%+ Times-Italic
+%%DocumentPaperSizes: a4
+%%EndComments
+%DVIPSWebPage: (www.radicaleye.com)
+%DVIPSCommandLine: dvips DevelopersGuide.dvi -o DevelopersGuide.ps
+%DVIPSParameters: dpi=600, compressed
+%DVIPSSource: TeX output 2002.07.01:0900
+%%BeginProcSet: texc.pro
+%!
+/TeXDict 300 dict def TeXDict begin/N{def}def/B{bind def}N/S{exch}N/X{S
+N}B/A{dup}B/TR{translate}N/isls false N/vsize 11 72 mul N/hsize 8.5 72
+mul N/landplus90{false}def/@rigin{isls{[0 landplus90{1 -1}{-1 1}ifelse 0
+0 0]concat}if 72 Resolution div 72 VResolution div neg scale isls{
+landplus90{VResolution 72 div vsize mul 0 exch}{Resolution -72 div hsize
+mul 0}ifelse TR}if Resolution VResolution vsize -72 div 1 add mul TR[
+matrix currentmatrix{A A round sub abs 0.00001 lt{round}if}forall round
+exch round exch]setmatrix}N/@landscape{/isls true N}B/@manualfeed{
+statusdict/manualfeed true put}B/@copies{/#copies X}B/FMat[1 0 0 -1 0 0]
+N/FBB[0 0 0 0]N/nn 0 N/IEn 0 N/ctr 0 N/df-tail{/nn 8 dict N nn begin
+/FontType 3 N/FontMatrix fntrx N/FontBBox FBB N string/base X array
+/BitMaps X/BuildChar{CharBuilder}N/Encoding IEn N end A{/foo setfont}2
+array copy cvx N load 0 nn put/ctr 0 N[}B/sf 0 N/df{/sf 1 N/fntrx FMat N
+df-tail}B/dfs{div/sf X/fntrx[sf 0 0 sf neg 0 0]N df-tail}B/E{pop nn A
+definefont setfont}B/Cw{Cd A length 5 sub get}B/Ch{Cd A length 4 sub get
+}B/Cx{128 Cd A length 3 sub get sub}B/Cy{Cd A length 2 sub get 127 sub}
+B/Cdx{Cd A length 1 sub get}B/Ci{Cd A type/stringtype ne{ctr get/ctr ctr
+1 add N}if}B/id 0 N/rw 0 N/rc 0 N/gp 0 N/cp 0 N/G 0 N/CharBuilder{save 3
+1 roll S A/base get 2 index get S/BitMaps get S get/Cd X pop/ctr 0 N Cdx
+0 Cx Cy Ch sub Cx Cw add Cy setcachedevice Cw Ch true[1 0 0 -1 -.1 Cx
+sub Cy .1 sub]/id Ci N/rw Cw 7 add 8 idiv string N/rc 0 N/gp 0 N/cp 0 N{
+rc 0 ne{rc 1 sub/rc X rw}{G}ifelse}imagemask restore}B/G{{id gp get/gp
+gp 1 add N A 18 mod S 18 idiv pl S get exec}loop}B/adv{cp add/cp X}B
+/chg{rw cp id gp 4 index getinterval putinterval A gp add/gp X adv}B/nd{
+/cp 0 N rw exit}B/lsh{rw cp 2 copy get A 0 eq{pop 1}{A 255 eq{pop 254}{
+A A add 255 and S 1 and or}ifelse}ifelse put 1 adv}B/rsh{rw cp 2 copy
+get A 0 eq{pop 128}{A 255 eq{pop 127}{A 2 idiv S 128 and or}ifelse}
+ifelse put 1 adv}B/clr{rw cp 2 index string putinterval adv}B/set{rw cp
+fillstr 0 4 index getinterval putinterval adv}B/fillstr 18 string 0 1 17
+{2 copy 255 put pop}for N/pl[{adv 1 chg}{adv 1 chg nd}{1 add chg}{1 add
+chg nd}{adv lsh}{adv lsh nd}{adv rsh}{adv rsh nd}{1 add adv}{/rc X nd}{
+1 add set}{1 add clr}{adv 2 chg}{adv 2 chg nd}{pop nd}]A{bind pop}
+forall N/D{/cc X A type/stringtype ne{]}if nn/base get cc ctr put nn
+/BitMaps get S ctr S sf 1 ne{A A length 1 sub A 2 index S get sf div put
+}if put/ctr ctr 1 add N}B/I{cc 1 add D}B/bop{userdict/bop-hook known{
+bop-hook}if/SI save N @rigin 0 0 moveto/V matrix currentmatrix A 1 get A
+mul exch 0 get A mul add .99 lt{/QV}{/RV}ifelse load def pop pop}N/eop{
+SI restore userdict/eop-hook known{eop-hook}if showpage}N/@start{
+userdict/start-hook known{start-hook}if pop/VResolution X/Resolution X
+1000 div/DVImag X/IEn 256 array N 2 string 0 1 255{IEn S A 360 add 36 4
+index cvrs cvn put}for pop 65781.76 div/vsize X 65781.76 div/hsize X}N
+/p{show}N/RMat[1 0 0 -1 0 0]N/BDot 260 string N/Rx 0 N/Ry 0 N/V{}B/RV/v{
+/Ry X/Rx X V}B statusdict begin/product where{pop false[(Display)(NeXT)
+(LaserWriter 16/600)]{A length product length le{A length product exch 0
+exch getinterval eq{pop true exit}if}{pop}ifelse}forall}{false}ifelse
+end{{gsave TR -.1 .1 TR 1 1 scale Rx Ry false RMat{BDot}imagemask
+grestore}}{{gsave TR -.1 .1 TR Rx Ry scale 1 1 false RMat{BDot}
+imagemask grestore}}ifelse B/QV{gsave newpath transform round exch round
+exch itransform moveto Rx 0 rlineto 0 Ry neg rlineto Rx neg 0 rlineto
+fill grestore}B/a{moveto}B/delta 0 N/tail{A/delta X 0 rmoveto}B/M{S p
+delta add tail}B/b{S p tail}B/c{-4 M}B/d{-3 M}B/e{-2 M}B/f{-1 M}B/g{0 M}
+B/h{1 M}B/i{2 M}B/j{3 M}B/k{4 M}B/w{0 rmoveto}B/l{p -4 w}B/m{p -3 w}B/n{
+p -2 w}B/o{p -1 w}B/q{p 1 w}B/r{p 2 w}B/s{p 3 w}B/t{p 4 w}B/x{0 S
+rmoveto}B/y{3 2 roll p a}B/bos{/SS save N}B/eos{SS restore}B end
+
+%%EndProcSet
+%%BeginProcSet: 8r.enc
+% @@psencodingfile@{
+% author = "S. Rahtz, P. MacKay, Alan Jeffrey, B. Horn, K. Berry",
+% version = "0.6",
+% date = "1 July 1998",
+% filename = "8r.enc",
+% email = "tex-fonts@@tug.org",
+% docstring = "Encoding for TrueType or Type 1 fonts
+% to be used with TeX."
+% @}
+%
+% Idea is to have all the characters normally included in Type 1 fonts
+% available for typesetting. This is effectively the characters in Adobe
+% Standard Encoding + ISO Latin 1 + extra characters from Lucida.
+%
+% Character code assignments were made as follows:
+%
+% (1) the Windows ANSI characters are almost all in their Windows ANSI
+% positions, because some Windows users cannot easily reencode the
+% fonts, and it makes no difference on other systems. The only Windows
+% ANSI characters not available are those that make no sense for
+% typesetting -- rubout (127 decimal), nobreakspace (160), softhyphen
+% (173). quotesingle and grave are moved just because it's such an
+% irritation not having them in TeX positions.
+%
+% (2) Remaining characters are assigned arbitrarily to the lower part
+% of the range, avoiding 0, 10 and 13 in case we meet dumb software.
+%
+% (3) Y&Y Lucida Bright includes some extra text characters; in the
+% hopes that other PostScript fonts, perhaps created for public
+% consumption, will include them, they are included starting at 0x12.
+%
+% (4) Remaining positions left undefined are for use in (hopefully)
+% upward-compatible revisions, if someday more characters are generally
+% available.
+%
+% (5) hyphen appears twice for compatibility with both
+% ASCII and Windows.
+%
+/TeXBase1Encoding [
+% 0x00 (encoded characters from Adobe Standard not in Windows 3.1)
+ /.notdef /dotaccent /fi /fl
+ /fraction /hungarumlaut /Lslash /lslash
+ /ogonek /ring /.notdef
+ /breve /minus /.notdef
+% These are the only two remaining unencoded characters, so may as
+% well include them.
+ /Zcaron /zcaron
+% 0x10
+ /caron /dotlessi
+% (unusual TeX characters available in, e.g., Lucida Bright)
+ /dotlessj /ff /ffi /ffl
+ /.notdef /.notdef /.notdef /.notdef
+ /.notdef /.notdef /.notdef /.notdef
+ % very contentious; it's so painful not having quoteleft and quoteright
+ % at 96 and 145 that we move the things normally found there to here.
+ /grave /quotesingle
+% 0x20 (ASCII begins)
+ /space /exclam /quotedbl /numbersign
+ /dollar /percent /ampersand /quoteright
+ /parenleft /parenright /asterisk /plus /comma /hyphen /period /slash
+% 0x30
+ /zero /one /two /three /four /five /six /seven
+ /eight /nine /colon /semicolon /less /equal /greater /question
+% 0x40
+ /at /A /B /C /D /E /F /G /H /I /J /K /L /M /N /O
+% 0x50
+ /P /Q /R /S /T /U /V /W
+ /X /Y /Z /bracketleft /backslash /bracketright /asciicircum /underscore
+% 0x60
+ /quoteleft /a /b /c /d /e /f /g /h /i /j /k /l /m /n /o
+% 0x70
+ /p /q /r /s /t /u /v /w
+ /x /y /z /braceleft /bar /braceright /asciitilde
+ /.notdef % rubout; ASCII ends
+% 0x80
+ /.notdef /.notdef /quotesinglbase /florin
+ /quotedblbase /ellipsis /dagger /daggerdbl
+ /circumflex /perthousand /Scaron /guilsinglleft
+ /OE /.notdef /.notdef /.notdef
+% 0x90
+ /.notdef /.notdef /.notdef /quotedblleft
+ /quotedblright /bullet /endash /emdash
+ /tilde /trademark /scaron /guilsinglright
+ /oe /.notdef /.notdef /Ydieresis
+% 0xA0
+ /.notdef % nobreakspace
+ /exclamdown /cent /sterling
+ /currency /yen /brokenbar /section
+ /dieresis /copyright /ordfeminine /guillemotleft
+ /logicalnot
+ /hyphen % Y&Y (also at 45); Windows' softhyphen
+ /registered
+ /macron
+% 0xD0
+ /degree /plusminus /twosuperior /threesuperior
+ /acute /mu /paragraph /periodcentered
+ /cedilla /onesuperior /ordmasculine /guillemotright
+ /onequarter /onehalf /threequarters /questiondown
+% 0xC0
+ /Agrave /Aacute /Acircumflex /Atilde /Adieresis /Aring /AE /Ccedilla
+ /Egrave /Eacute /Ecircumflex /Edieresis
+ /Igrave /Iacute /Icircumflex /Idieresis
+% 0xD0
+ /Eth /Ntilde /Ograve /Oacute
+ /Ocircumflex /Otilde /Odieresis /multiply
+ /Oslash /Ugrave /Uacute /Ucircumflex
+ /Udieresis /Yacute /Thorn /germandbls
+% 0xE0
+ /agrave /aacute /acircumflex /atilde
+ /adieresis /aring /ae /ccedilla
+ /egrave /eacute /ecircumflex /edieresis
+ /igrave /iacute /icircumflex /idieresis
+% 0xF0
+ /eth /ntilde /ograve /oacute
+ /ocircumflex /otilde /odieresis /divide
+ /oslash /ugrave /uacute /ucircumflex
+ /udieresis /yacute /thorn /ydieresis
+] def
+
+%%EndProcSet
+%%BeginProcSet: texps.pro
+%!
+TeXDict begin/rf{findfont dup length 1 add dict begin{1 index/FID ne 2
+index/UniqueID ne and{def}{pop pop}ifelse}forall[1 index 0 6 -1 roll
+exec 0 exch 5 -1 roll VResolution Resolution div mul neg 0 0]/Metrics
+exch def dict begin Encoding{exch dup type/integertype ne{pop pop 1 sub
+dup 0 le{pop}{[}ifelse}{FontMatrix 0 get div Metrics 0 get div def}
+ifelse}forall Metrics/Metrics currentdict end def[2 index currentdict
+end definefont 3 -1 roll makefont/setfont cvx]cvx def}def/ObliqueSlant{
+dup sin S cos div neg}B/SlantFont{4 index mul add}def/ExtendFont{3 -1
+roll mul exch}def/ReEncodeFont{CharStrings rcheck{/Encoding false def
+dup[exch{dup CharStrings exch known not{pop/.notdef/Encoding true def}
+if}forall Encoding{]exch pop}{cleartomark}ifelse}if/Encoding exch def}
+def end
+
+%%EndProcSet
+%%BeginProcSet: special.pro
+%!
+TeXDict begin/SDict 200 dict N SDict begin/@SpecialDefaults{/hs 612 N
+/vs 792 N/ho 0 N/vo 0 N/hsc 1 N/vsc 1 N/ang 0 N/CLIP 0 N/rwiSeen false N
+/rhiSeen false N/letter{}N/note{}N/a4{}N/legal{}N}B/@scaleunit 100 N
+/@hscale{@scaleunit div/hsc X}B/@vscale{@scaleunit div/vsc X}B/@hsize{
+/hs X/CLIP 1 N}B/@vsize{/vs X/CLIP 1 N}B/@clip{/CLIP 2 N}B/@hoffset{/ho
+X}B/@voffset{/vo X}B/@angle{/ang X}B/@rwi{10 div/rwi X/rwiSeen true N}B
+/@rhi{10 div/rhi X/rhiSeen true N}B/@llx{/llx X}B/@lly{/lly X}B/@urx{
+/urx X}B/@ury{/ury X}B/magscale true def end/@MacSetUp{userdict/md known
+{userdict/md get type/dicttype eq{userdict begin md length 10 add md
+maxlength ge{/md md dup length 20 add dict copy def}if end md begin
+/letter{}N/note{}N/legal{}N/od{txpose 1 0 mtx defaultmatrix dtransform S
+atan/pa X newpath clippath mark{transform{itransform moveto}}{transform{
+itransform lineto}}{6 -2 roll transform 6 -2 roll transform 6 -2 roll
+transform{itransform 6 2 roll itransform 6 2 roll itransform 6 2 roll
+curveto}}{{closepath}}pathforall newpath counttomark array astore/gc xdf
+pop ct 39 0 put 10 fz 0 fs 2 F/|______Courier fnt invertflag{PaintBlack}
+if}N/txpose{pxs pys scale ppr aload pop por{noflips{pop S neg S TR pop 1
+-1 scale}if xflip yflip and{pop S neg S TR 180 rotate 1 -1 scale ppr 3
+get ppr 1 get neg sub neg ppr 2 get ppr 0 get neg sub neg TR}if xflip
+yflip not and{pop S neg S TR pop 180 rotate ppr 3 get ppr 1 get neg sub
+neg 0 TR}if yflip xflip not and{ppr 1 get neg ppr 0 get neg TR}if}{
+noflips{TR pop pop 270 rotate 1 -1 scale}if xflip yflip and{TR pop pop
+90 rotate 1 -1 scale ppr 3 get ppr 1 get neg sub neg ppr 2 get ppr 0 get
+neg sub neg TR}if xflip yflip not and{TR pop pop 90 rotate ppr 3 get ppr
+1 get neg sub neg 0 TR}if yflip xflip not and{TR pop pop 270 rotate ppr
+2 get ppr 0 get neg sub neg 0 S TR}if}ifelse scaleby96{ppr aload pop 4
+-1 roll add 2 div 3 1 roll add 2 div 2 copy TR .96 dup scale neg S neg S
+TR}if}N/cp{pop pop showpage pm restore}N end}if}if}N/normalscale{
+Resolution 72 div VResolution 72 div neg scale magscale{DVImag dup scale
+}if 0 setgray}N/psfts{S 65781.76 div N}N/startTexFig{/psf$SavedState
+save N userdict maxlength dict begin/magscale true def normalscale
+currentpoint TR/psf$ury psfts/psf$urx psfts/psf$lly psfts/psf$llx psfts
+/psf$y psfts/psf$x psfts currentpoint/psf$cy X/psf$cx X/psf$sx psf$x
+psf$urx psf$llx sub div N/psf$sy psf$y psf$ury psf$lly sub div N psf$sx
+psf$sy scale psf$cx psf$sx div psf$llx sub psf$cy psf$sy div psf$ury sub
+TR/showpage{}N/erasepage{}N/copypage{}N/p 3 def @MacSetUp}N/doclip{
+psf$llx psf$lly psf$urx psf$ury currentpoint 6 2 roll newpath 4 copy 4 2
+roll moveto 6 -1 roll S lineto S lineto S lineto closepath clip newpath
+moveto}N/endTexFig{end psf$SavedState restore}N/@beginspecial{SDict
+begin/SpecialSave save N gsave normalscale currentpoint TR
+@SpecialDefaults count/ocount X/dcount countdictstack N}N/@setspecial{
+CLIP 1 eq{newpath 0 0 moveto hs 0 rlineto 0 vs rlineto hs neg 0 rlineto
+closepath clip}if ho vo TR hsc vsc scale ang rotate rwiSeen{rwi urx llx
+sub div rhiSeen{rhi ury lly sub div}{dup}ifelse scale llx neg lly neg TR
+}{rhiSeen{rhi ury lly sub div dup scale llx neg lly neg TR}if}ifelse
+CLIP 2 eq{newpath llx lly moveto urx lly lineto urx ury lineto llx ury
+lineto closepath clip}if/showpage{}N/erasepage{}N/copypage{}N newpath}N
+/@endspecial{count ocount sub{pop}repeat countdictstack dcount sub{end}
+repeat grestore SpecialSave restore end}N/@defspecial{SDict begin}N
+/@fedspecial{end}B/li{lineto}B/rl{rlineto}B/rc{rcurveto}B/np{/SaveX
+currentpoint/SaveY X N 1 setlinecap newpath}N/st{stroke SaveX SaveY
+moveto}N/fil{fill SaveX SaveY moveto}N/ellipse{/endangle X/startangle X
+/yrad X/xrad X/savematrix matrix currentmatrix N TR xrad yrad scale 0 0
+1 startangle endangle arc savematrix setmatrix}N end
+
+%%EndProcSet
+%%BeginProcSet: color.pro
+%!
+TeXDict begin/setcmykcolor where{pop}{/setcmykcolor{dup 10 eq{pop
+setrgbcolor}{1 sub 4 1 roll 3{3 index add neg dup 0 lt{pop 0}if 3 1 roll
+}repeat setrgbcolor pop}ifelse}B}ifelse/TeXcolorcmyk{setcmykcolor}def
+/TeXcolorrgb{setrgbcolor}def/TeXcolorgrey{setgray}def/TeXcolorgray{
+setgray}def/TeXcolorhsb{sethsbcolor}def/currentcmykcolor where{pop}{
+/currentcmykcolor{currentrgbcolor 10}B}ifelse/DC{exch dup userdict exch
+known{pop pop}{X}ifelse}B/GreenYellow{0.15 0 0.69 0 setcmykcolor}DC
+/Yellow{0 0 1 0 setcmykcolor}DC/Goldenrod{0 0.10 0.84 0 setcmykcolor}DC
+/Dandelion{0 0.29 0.84 0 setcmykcolor}DC/Apricot{0 0.32 0.52 0
+setcmykcolor}DC/Peach{0 0.50 0.70 0 setcmykcolor}DC/Melon{0 0.46 0.50 0
+setcmykcolor}DC/YellowOrange{0 0.42 1 0 setcmykcolor}DC/Orange{0 0.61
+0.87 0 setcmykcolor}DC/BurntOrange{0 0.51 1 0 setcmykcolor}DC
+/Bittersweet{0 0.75 1 0.24 setcmykcolor}DC/RedOrange{0 0.77 0.87 0
+setcmykcolor}DC/Mahogany{0 0.85 0.87 0.35 setcmykcolor}DC/Maroon{0 0.87
+0.68 0.32 setcmykcolor}DC/BrickRed{0 0.89 0.94 0.28 setcmykcolor}DC/Red{
+0 1 1 0 setcmykcolor}DC/OrangeRed{0 1 0.50 0 setcmykcolor}DC/RubineRed{
+0 1 0.13 0 setcmykcolor}DC/WildStrawberry{0 0.96 0.39 0 setcmykcolor}DC
+/Salmon{0 0.53 0.38 0 setcmykcolor}DC/CarnationPink{0 0.63 0 0
+setcmykcolor}DC/Magenta{0 1 0 0 setcmykcolor}DC/VioletRed{0 0.81 0 0
+setcmykcolor}DC/Rhodamine{0 0.82 0 0 setcmykcolor}DC/Mulberry{0.34 0.90
+0 0.02 setcmykcolor}DC/RedViolet{0.07 0.90 0 0.34 setcmykcolor}DC
+/Fuchsia{0.47 0.91 0 0.08 setcmykcolor}DC/Lavender{0 0.48 0 0
+setcmykcolor}DC/Thistle{0.12 0.59 0 0 setcmykcolor}DC/Orchid{0.32 0.64 0
+0 setcmykcolor}DC/DarkOrchid{0.40 0.80 0.20 0 setcmykcolor}DC/Purple{
+0.45 0.86 0 0 setcmykcolor}DC/Plum{0.50 1 0 0 setcmykcolor}DC/Violet{
+0.79 0.88 0 0 setcmykcolor}DC/RoyalPurple{0.75 0.90 0 0 setcmykcolor}DC
+/BlueViolet{0.86 0.91 0 0.04 setcmykcolor}DC/Periwinkle{0.57 0.55 0 0
+setcmykcolor}DC/CadetBlue{0.62 0.57 0.23 0 setcmykcolor}DC
+/CornflowerBlue{0.65 0.13 0 0 setcmykcolor}DC/MidnightBlue{0.98 0.13 0
+0.43 setcmykcolor}DC/NavyBlue{0.94 0.54 0 0 setcmykcolor}DC/RoyalBlue{1
+0.50 0 0 setcmykcolor}DC/Blue{1 1 0 0 setcmykcolor}DC/Cerulean{0.94 0.11
+0 0 setcmykcolor}DC/Cyan{1 0 0 0 setcmykcolor}DC/ProcessBlue{0.96 0 0 0
+setcmykcolor}DC/SkyBlue{0.62 0 0.12 0 setcmykcolor}DC/Turquoise{0.85 0
+0.20 0 setcmykcolor}DC/TealBlue{0.86 0 0.34 0.02 setcmykcolor}DC
+/Aquamarine{0.82 0 0.30 0 setcmykcolor}DC/BlueGreen{0.85 0 0.33 0
+setcmykcolor}DC/Emerald{1 0 0.50 0 setcmykcolor}DC/JungleGreen{0.99 0
+0.52 0 setcmykcolor}DC/SeaGreen{0.69 0 0.50 0 setcmykcolor}DC/Green{1 0
+1 0 setcmykcolor}DC/ForestGreen{0.91 0 0.88 0.12 setcmykcolor}DC
+/PineGreen{0.92 0 0.59 0.25 setcmykcolor}DC/LimeGreen{0.50 0 1 0
+setcmykcolor}DC/YellowGreen{0.44 0 0.74 0 setcmykcolor}DC/SpringGreen{
+0.26 0 0.76 0 setcmykcolor}DC/OliveGreen{0.64 0 0.95 0.40 setcmykcolor}
+DC/RawSienna{0 0.72 1 0.45 setcmykcolor}DC/Sepia{0 0.83 1 0.70
+setcmykcolor}DC/Brown{0 0.81 1 0.60 setcmykcolor}DC/Tan{0.14 0.42 0.56 0
+setcmykcolor}DC/Gray{0 0 0 0.50 setcmykcolor}DC/Black{0 0 0 1
+setcmykcolor}DC/White{0 0 0 0 setcmykcolor}DC end
+
+%%EndProcSet
+TeXDict begin 39158280 55380996 1000 600 600 (DevelopersGuide.dvi)
+@start /Fa 188[60 23[60 43[{TeXBase1Encoding ReEncodeFont}2
+99.6264 /Courier rf /Fb 139[72 72 4[72 72 72 72 1[72
+2[72 72 3[72 19[72 30[72 46[{TeXBase1Encoding ReEncodeFont}12
+119.552 /Courier rf
+%DVIPSBitmapFont: Fc cmsy10 10.95 1
+/Fc 1 16 df<EB0FFCEB3FFF90B512C0000314F04880488048804880A2481580A3B712C0
+AA6C1580A36C1500A26C5C6C5C6C5C6C5CC614C0013F90C7FCEB0FFC22227BA72D>15
+D E
+%EndDVIPSBitmapFont
+/Fd 134[40 2[40 45 25 35 35 1[45 45 45 1[25 40 1[25 45
+2[40 45 40 45 45 10[56 1[51 2[66 1[66 2[51 61 2[66 66
+56 1[66 61 13[45 11[30 30 40[{TeXBase1Encoding ReEncodeFont}32
+90.9091 /Times-Italic rf /Fe 134[50 1[72 1[55 33 39 44
+1[55 50 55 83 28 55 1[28 55 50 33 44 55 44 1[50 11[72
+4[61 6[39 4[72 72 13[50 50 50 50 50 2[25 43[55 2[{
+TeXBase1Encoding ReEncodeFont}32 99.6264 /Times-Bold
+rf /Ff 130[55 1[55 1[55 55 55 55 55 55 55 55 55 55 55
+55 55 55 55 1[55 55 55 55 55 55 55 55 55 1[55 2[55 2[55
+55 1[55 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55
+55 55 55 55 55 55 55 1[55 55 55 1[55 4[55 1[55 55 55
+1[55 55 55 55 55 1[55 55 55 2[55 55 55 34[{
+TeXBase1Encoding ReEncodeFont}72 90.9091 /Courier rf
+/Fg 135[42 1[42 42 23 32 28 1[42 42 42 65 23 2[23 42
+42 28 37 42 37 42 37 12[51 46 3[60 1[74 51 6[51 3[60
+18[21 1[21 41[46 2[{TeXBase1Encoding ReEncodeFont}30
+83.022 /Times-Roman rf /Fh 139[28 32 37 14[37 46 42 31[60
+65[{TeXBase1Encoding ReEncodeFont}7 83.022 /Times-Bold
+rf /Fi 134[45 45 66 45 51 30 35 40 1[51 45 51 76 25 2[25
+51 45 30 40 51 40 51 45 7[66 1[91 66 2[51 2[56 71 1[86
+61 2[35 3[61 66 66 1[66 6[30 45 45 45 45 45 45 45 45
+45 45 2[30 3[30 30 30 5[30 30[51 2[{TeXBase1Encoding ReEncodeFont}52
+90.9091 /Times-Bold rf /Fj 134[60 1[86 60 66 40 47 53
+1[66 60 66 100 33 2[33 66 60 40 53 66 53 66 60 9[120
+3[66 2[73 93 1[113 80 2[47 3[80 86 86 1[86 7[60 60 60
+60 60 60 60 60 60 60 8[40 36[66 2[{TeXBase1Encoding ReEncodeFont}44
+119.552 /Times-Bold rf /Fk 139[28 1[33 2[50 50 78 28
+50 28 28 50 3[50 44 50 44 12[61 3[55 2[89 5[72 1[61 1[66
+1[72 18[25 46[{TeXBase1Encoding ReEncodeFont}22 99.6264
+/Times-Roman rf /Fl 140[56 48 2[72 72 4[40 3[64 14[104
+34[72 2[72 1[36 46[{TeXBase1Encoding ReEncodeFont}10
+143.462 /Times-Roman rf /Fm 134[96 2[96 105 57 96 67
+2[105 105 153 48 2[48 105 105 1[96 105 96 105 96 11[124
+1[115 3[134 1[143 105 6[115 3[124 62[105 2[{
+TeXBase1Encoding ReEncodeFont}26 172.188 /Helvetica-Bold
+rf /Fn 107[40 40 24[40 45 45 66 45 45 25 35 30 45 45
+45 45 71 25 45 25 25 45 45 30 40 45 40 45 40 7[66 66
+86 66 66 56 51 61 66 51 66 66 81 56 66 1[30 66 66 51
+56 66 61 61 66 84 4[25 25 45 45 45 45 45 45 45 45 45
+45 25 23 30 23 51 1[30 30 30 5[30 29[51 51 2[{
+TeXBase1Encoding ReEncodeFont}76 90.9091 /Times-Roman
+rf end
+%%EndProlog
+%%BeginSetup
+%%Feature: *Resolution 600dpi
+TeXDict begin
+%%BeginPaperSize: a4
+a4
+%%EndPaperSize
+
+%%EndSetup
+%%Page: 1 1
+1 0 bop Black Black 1 TeXcolorgray 0 50 a Fn(.)p Black
+Black Black Black 510 3175 a @beginspecial 131 @llx 321
+@lly 481 @urx 471 @ury 3367 @rwi 1448 @rhi @setspecial
+%%BeginDocument: ../../../SALOME_ROOT/doc/DevelopersGuide/SALOME.ps
+%!PS-Adobe-2.0 EPSF-2.0
+%%Title: /home/tajchman/superv/GRAPHIQUES/SALOME.ps
+%%Creator: XV Version 3.10a Rev: 12/29/94 (PNG patch 1.2) - by John Bradley
+%%BoundingBox: 131 321 481 471
+%%Pages: 1
+%%DocumentFonts:
+%%EndComments
+%%EndProlog
+
+%%Page: 1 1
+
+% remember original state
+/origstate save def
+
+% build a temporary dictionary
+20 dict begin
+
+% define string to hold a scanline's worth of data
+/pix 1050 string def
+
+% define space for color conversions
+/grays 350 string def % space for gray scale line
+/npixls 0 def
+/rgbindx 0 def
+
+% lower left corner
+131 321 translate
+
+% size of image (on paper, in 1/72inch coords)
+349.99200 149.97600 scale
+
+% define 'colorimage' if it isn't defined
+% ('colortogray' and 'mergeprocs' come from xwd2ps
+% via xgrab)
+/colorimage where % do we know about 'colorimage'?
+ { pop } % yes: pop off the 'dict' returned
+ { % no: define one
+ /colortogray { % define an RGB->I function
+ /rgbdata exch store % call input 'rgbdata'
+ rgbdata length 3 idiv
+ /npixls exch store
+ /rgbindx 0 store
+ 0 1 npixls 1 sub {
+ grays exch
+ rgbdata rgbindx get 20 mul % Red
+ rgbdata rgbindx 1 add get 32 mul % Green
+ rgbdata rgbindx 2 add get 12 mul % Blue
+ add add 64 idiv % I = .5G + .31R + .18B
+ put
+ /rgbindx rgbindx 3 add store
+ } for
+ grays 0 npixls getinterval
+ } bind def
+
+ % Utility procedure for colorimage operator.
+ % This procedure takes two procedures off the
+ % stack and merges them into a single procedure.
+
+ /mergeprocs { % def
+ dup length
+ 3 -1 roll
+ dup
+ length
+ dup
+ 5 1 roll
+ 3 -1 roll
+ add
+ array cvx
+ dup
+ 3 -1 roll
+ 0 exch
+ putinterval
+ dup
+ 4 2 roll
+ putinterval
+ } bind def
+
+ /colorimage { % def
+ pop pop % remove 'false 3' operands
+ {colortogray} mergeprocs
+ image
+ } bind def
+ } ifelse % end of 'false' case
+
+
+
+350 150 8 % dimensions of data
+[350 0 0 -150 0 150] % mapping matrix
+{currentfile pix readhexstring pop}
+false 3 colorimage
+
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfdfdfdfdfdfdfdfdfdfdfd
+fefdfdfefdfefefdfefefdfefefdfefefdfefefdfefefdfefefdfefefdfefefdfefefdfe
+fefdfefefdfefefdfefefdfefefdfefefdfefefdfefefdfefefdfefdfdfdfdfdfdfdfdfd
+fdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfd
+fdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfd
+fdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfefdfefefdfe
+fefdfefefdfefefdfefefdfefefdfefefdfefefdfefefdfefefdfefefdfefefdfefefdfe
+fefdfefefdfefefdfefefdfefefdfefefdfefefdfefefdfefefdfefefdfefefdfefefdfe
+fefdfefefdfefefdfefefdfefefdfefefdfefefdfefefdfefefdfefefdfefefdfefefdfe
+fefdfefefdfefefdfefefdfefefdfefefdfefefdfefefdfefefdfefefdfefefdfefefdfe
+fefdfefefdfefefdfefefdfefefdfefefdfefefdfefefdfefefdfefefdfefefdfefefdfe
+fefdfefefdfefefdfefefdfefefdfefefdfefefdfefefdfefefdfefefdfefefdfefefdfe
+fefdfefefdfefefdfefefdfefefdfefefdfefefdfefefdfefefdfefefdfefefdfefefdfe
+fdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfefdfefefefefefefefefefefefefe
+fffefeffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffffefefefefefefefefe
+fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+fefefefefefefefefefefefefefefefefefefefefefefefefefefeffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fefefefefefefefefefefefefefefefdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfdfdfefdfefefdfefefdfefefdfe
+fefefeffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffefefefefefefefefefefefefefdfd
+fefdfdfefdfdfefdfdfefdfdfefdfdfefdfdfefdfdfefdfdfefdfdfefdfdfefdfdfefdfd
+fefdfdfefdfdfefdfdfefdfdfefdfdfefdfdfefdfdfefdfdfefdfdfefdfdfefdfdfefdfd
+fefdfdfefdfdfefdfdfefdfdfefdfdfefdfdfefdfdfefdfdfdfdfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefdfeffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffefefefefefefefefefefefefefefefefefe
+fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+fefefefefefefefefefefefefefefefefefefefefefefefefefefefefdfefdfdfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefefeffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffefefefefefefefefefefefefefefefefefefefefe
+fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefdfe
+fefdfefefdfefefdfefefdfefefdfefefdfefefdfefefdfefdfdfdfdfdfdfefdfefdfdfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefefeffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffefefefefefefefefefefefefefefefefefefefefefefefefefefe
+fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+fefdfefdfdfefdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefefeffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffefefeffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+fefefefefefefefefefefefefefefefefefefefefefefefefefefeffffffffffffffffff
+fefefefefefefdfdfdfdfdfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefefeffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffefefefefefeffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffefefe
+fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefdfdfd
+fdfdfdfdfdfdfdfdfdfdfdfdfefefefefefefefefefefefefefefefefefefefefefefefe
+fefefefefefefefefefefefefefefefefefeffffffffffffffffffffffffffffffffffff
+fffffffefefefefefefefefefefefefefdfdfefdfdfefdfdfefdfdfefdfdfdfdfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefefeffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffefefefefefefefefefefefeffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffefefe
+fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+fefefefefefefefefefdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfd
+fdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfefefefefefefefefe
+fefefefefefefefefefefefefefefefefefeffffffffffffffffffffffffffffffffffff
+fefefefefefefefefefdfefefefefefefefefefefefefefefefefefefefefdfdfdfdfdfd
+fdfdfdfdfcfcfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefefeffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fefefeffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffefefefefefefefefefefefefefefefefefeffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffefefefefefe
+fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefdfdfd
+fdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfd
+fdfdfdfdfdfdfcfcfcfcfcfcfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfefefe
+fefefefefefefefefefefefefefefefefefefffffffffffffffffffefefefefefefefefe
+fefefefefefefcfcfcfdfdfdfdfdfdfdfefefdfcfcfdfdfdfcfdfdfcfdfdfdfdfdfdfdfd
+fdfdfdfdfdfdfcfcfcfcfcfcfcfcfcfdfdfdfdfdfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefefeffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffffbfcfdf4f6fbeef1f8
+e9edf6e5eaf4e4eaf4e2e8f4e0e7f2e3e9f4e4eaf4e5ebf5eaeef6eff2f9f9fafcfefeff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffefefe
+fefefefefefefefefefffffffffffffffffffffffffffffffffffffffffffffffffefefe
+fefefefefefefffffffffffffefefffafafdfdfefeffffffffffffffffffffffffffffff
+fffffffffffffffffffefefefefefefefefefefefefefefefefefeffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffefefefefefefefefefefefefefefe
+fefefeffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffefefff8f9fceff2f9e8ecf5e3e9f3dfe6f2
+dfe6f1dfe6f1e0e7f2e4eaf3e8ecf5eff1f7f8f9fbfdfdfdfdfdfdfdfdfdfdfdfdfdfdfd
+fdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfcfcfcfcfcfcfdfdfd
+fdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfcfcfcfcfcfcfcfcfcfafafbf7f8faf6f7fa
+fbfbfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfdfdfd
+fdfdfdfefefefefefefefefefefefefefefefffffffffefefefdfcfdfdfcfdfcfbfcfcfb
+fcfcfbfdfdfcfcfcfbfcfcfbfcfcfcfcfcfbfcfcfbfcfcfbfdfdfdfdfdfdfcfcfcfcfcfc
+fcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfdfcfcfdfdfdfdfdfdfdfdfdfdfdfd
+fdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfd
+fdfdfdfdfdfdfdfdfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefefeffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffbfcfeecf0f8dbe3f1cad9eaadc6e08faed4779bca
+668dc35481bc5280bb4a79b84172b44c7bb95280bb5783bd678fc47fa1cea3bfdcc8d7e9
+dde4f2f2f5fafefeffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffefefe
+fefefefefefefefefefefefefefefefffffffffffffffffffffffffffffffbfcfdf1f3f9
+e7ecf5dee5f2d7dfefccdaebbbd1e5a7c1dec6d5e8ffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffefefefefefefefefefefefefefefefefefefefefefefefe
+fffffffffffffffffffffffffffffffffffff0f3f9dde4f1dae2f0dae2f0dae2f0dae2f0
+dae2f0dae2f0dae2f0dae2f0eaeef6fbfbfdfefefefefefefefefefefefefefefefefefe
+fefefefefefefefefefefefeffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffdfdfeeff2f9dae2f0c4d5e8a1bcdb7c9fcc628cc2517fba4172b3
+3f71b33f71b34476b55582bc668fc382a4cea7c1ddc7d6e8dbe2efeff2f7fbfbfbfcfcfc
+fcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfc
+fcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcf4f5f9dde3f0c8d7e8b3cae1a5bfdca4bfdb
+b6cde2c8d7e8d9e1eef0f3f8fcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfc
+fcfcfcfdfdfdfdfdfdfdfdfdfdfdfdfefefefefefefefefefefefefdfdfdfdfcfcfcfcfb
+fcfcfbfcfcfbfcfcfbfcfcfbfcfcfbfcfcfbfcfcfcfdfdfdf7f8fae1e7f2d7dfedd7dfed
+d7dfedd7dfedd7dfeddce2eff4f6f9fcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfc
+fcfcfcfcfcfcfbfcfceef0f7dee4f0d8e0eed7dfedd7dfedd7dfedd7dfedd7dfedd7dfed
+d7e0eed8e0eed8e0eed8e0eed8e0eed8e0eed8e0eed8e0eed8e0eed8e0eed8e0eed8e0ee
+d8e0eed8e0eed8e0eed8e0eed8e0eed8e0eed8e0eedce3f0f9f9fbfdfdfdfdfdfdfdfdfd
+fdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfdfdfdfdfdfdfdfdfdfdfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefefeffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffff8f9fcd6dfefaec5df7aa0cc4d7eba2165a90459a000579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e01589f2366aa
+5282bc8aadd3c8d5eaf8fafcffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffefefe
+fefefefefefefefefefefefefefefefefefefffffffffffffffffff1f4f9b9cbe487aad1
+6f97c75886be4376b52667ab0659a000579e2769abe9eef7ffffffffffffffffffffffff
+fffffffffffffffffffffffffefefefefefefefefefefefefefefefefefefefefefefefe
+fefefefefefeffffffffffffffffffffffff99b5d85281bc4a7cb84a7cb84a7cb84a7cb8
+4a7cb84a7cb84a7cb84d7db989a6d1e4e9f4fefefefefefefefefefefefefefefefefefe
+fefefefefefefefefefefefefefefeffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffbfcfde0e6f3b9cbe481a6cf4c7db91a62a701589f00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e02589f2266a95483bb88abd1bdcde4e1e7f2
+fafafbfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfc
+fcfcfcfcfcfcfcfcfcfcfcfcfcfcfceff2f7aabfdc5885bd2265aa0459a000579e00579e
+02589f2366a94e7fba8daed2dae1effcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfbfbfbfbfbfb
+fcfcfcfcfcfcfcfcfcfcfcfcfdfdfdfcfcfcfdfdfdfdfdfdfefefefefefefefefdfdfdfc
+fcfcfbfcfcfbfcfcfbfcfcfbfcfcfbfcfcfbfdfdfdf5f7fabacae3638ec2497bb7497bb7
+497bb7497bb7497bb75583bbb9c8e1f8f8fafcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfc
+fcfcfcfafafbd4deec8baad15a87bf4b7cb8497bb7497bb7497bb7497bb7497bb7497bb7
+497bb7497bb7497bb7497bb7497bb7497bb7497bb7497bb7497bb7497bb7497bb7497bb7
+497bb7497bb7497bb7497bb7497bb7497bb7497bb75383bce0e6f2fdfdfdfdfdfdfdfdfd
+fdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfd
+fefefefefefefefefefffffffefefefefdfefefdfefdfdfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefefeffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffd5deef95b4d64e82bb1861a600579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e01589f3a74b3c5d2e8ffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffefefe
+fefefefefefefefefefefefefefefefefefefefefefffffffcfcfebed0e62c6dae00579e
+00579e00579e00579e00579e00579e00579e03599f9db2d9ffffffffffffffffffffffff
+fffffffffffffffffffffffffefefefefefefefefefefefefefefefefefefefefefefefe
+fefefefefefefefefeffffffffffffffffff3a7bb301589e00579e00579e00579e00579e
+00579e00579e00579e00579e356eb0c7d3e8fefefefefefefefefefefefefefefefefefe
+fefefefefefefefefefefefefefefefefefeffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffefeff
+e3e9f4abc0dd5f8ec22567ab00579e00579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579e01589f2c6bad6694c4
+b0c2dee6eaf4fcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfc
+fcfcfcfcfcfcfcfcfcfcfcfcf9fafbc2d2e6296bac00579e00579e00579e00579e00579e
+00579e00579e00579e055aa0638fc2ebeef5fafafafafafafafafafafafafafafafafafa
+fafafafbfbfbfbfbfbfbfbfbfbfbfbfbfbfbfbfbfbfcfcfcfcfcfcfdfdfdfdfdfdfdfdfd
+fdfdfcfdfdfcfcfcfbfcfcfbfcfcfbfcfcfbfafafbcad6e93b76b300579e00579e00579e
+00579e00579e00579e00579e678cc2f0f3f7fcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfc
+fcfcfcdde3f06590c20d5da200579e00579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e1b62a7d6e0eefcfcfcfdfdfdfdfdfd
+fdfdfdfdfdfdfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfdfdfdfdfdfdfdfdfdfdfdfd
+fefefefefefefffffffffffffffffffffffffffffffffffffdfdfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefefeffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+f8f9fcb6c6e14f84bc0d5ca200579e00579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e88a2d0fffffffefefefefefefefefefefefefefefefefefefefefe
+fefefefefefefefefefefefefffffffffffffffffffffffffffffffffffffffffffefefe
+fefefefefefefefefefefefefefefefefefefefefefefefeecf0f77ca2cd01589f00579e
+00579e00579e00579e00579e00579e00579e01579e447ab7f2f4faffffffffffffffffff
+fffffffffffffffffffffffffefefefefefefefefefefefefefefefefefefefefefefefe
+fefefefefefefefefefefefefefefeffffff3177b000579e00579e00579e00579e00579e
+00579e00579e00579e00579e336cafc6d2e7fefefefefefefefefefefefefefefefefefe
+fefefefefefefefefefefefefefefefefefefefefefefefeffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffdfefebfcde5
+6292c32265a900579e00579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e
+2767ab6b98c6c5d1e6fafbfbfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfbfbfbfbfbfb
+fbfbfbfbfbfbfbfbfbfbfbfbf5f6f9a4beda00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e1161a4aabbdbf9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9
+f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9fafafafafafafbfbfbfcfcfcfdfdfd
+fdfdfdfdfdfdfdfdfcfcfcfcfcfcfcfbfbfbe9eef56892c301589f00579e00579e00579e
+00579e00579e00579e00579e5c84beeff2f7fcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfc
+fbfbfbb4c2df2e6eae00579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e638ac1f1f3f7fcfcfcfcfcfcfcfcfc
+fcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfdfdfdfefefefefefe
+fefefefefefefffffffffffffffffffffffffffffffffffffdfdfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefefeffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff5f7fb
+96b2d5306eae00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e819dcdfefefefefefefefefefefefefefefefefefefefefefefefe
+fefefefefefefefefefefefefefefefefefefffffffffffffffffffffffffffffffefefe
+fefefefefefefefefefefefefefefefefefefefefefdfdfecedbeb2e6fae00579e00579e
+00579e00579e00579e00579e00579e00579e00579e1061a5b7c5e3ffffffffffffffffff
+fffffffffffffffffffffffffefefefefefefefefefefefefefefefefefefefefefefefe
+fefefefefefefefefefefefefefefefefefe3177b000579e00579e00579e00579e00579e
+00579e00579e00579e00579e336cafc6d2e7fefefefefefefefefefefefefefefefefefe
+fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+fefefefefefefefefefefefefefefefffffffffffffffffffffffff5f6fba3b9da3875b2
+01589f00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e
+01579e0f5da40c5ca300579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e0359a0427ab5a4bbd9f1f3f7fbfbfbfbfbfbfbfbfbfbfbfbfbfbfbfafafafafafa
+fafafaf9f9f9f9f9f9fafafaf4f5f8a3bcda00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e0559a04c81b9e5e9f1f8f8f8f8f8f8f7f7f7f7f7f7f7f7f7
+f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f8f8f8f8f8f8f7f7f7f9f9f9fafafafbfbfb
+fbfbfbfcfcfcfcfcfcfcfcfcfcfcfcf8f9fa9bb3d7135fa400579e00579e00579e00579e
+00579e00579e00579e00579e5c84bdeef1f6fbfbfbfbfbfbfbfbfbfbfbfbfbfbfbfafafa
+fafafaadbddb296bac00579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e065aa1adc2def8f9fafbfbfbfbfbfbfbfbfb
+fbfbfbfbfbfbfbfbfbfbfbfbfbfbfbfcfcfcfcfcfcfcfcfcfcfcfcfdfdfdfefefefefefe
+fefefefefefefffffffffffffffffffffffffffffffffffffdfdfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefefeffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffdfefe9eb5d8
+2368aa01589e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e819dcdfefefefefefefefefefefefefefefefefefefefefefefefe
+fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+fefefefefefefefefefefefefefefefefefefefefef3f5fa8fadd30559a000579e00579e
+00579e00579e00579e00579e00579e00579e00579e055aa05a8abffcfcfeffffffffffff
+fffffffffffffffffffffffffefefefefefefefefefefefefefefefefefefefefefefefe
+fefefefefefefefefefefefefefefefefefe3177b000579e00579e00579e00579e00579e
+00579e00579e00579e00579e336cafc6d2e7fdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfd
+fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+fefefefefefefefefefefefefefefefefefefefefefefefef4f5fb8dacd22669ab01579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579e2266a95685bd7da3cc
+9bbcd7a8c2dca6c1db95b7d4769ec94b7eb81961a600579e00579e00579e00579e00579e
+00579e00579e03589f2a6cac92aed2eff1f6f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9
+f9f9f9f9f9f9f8f8f8f8f8f8f3f4f6a3bcd900579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e1964a7a4b6d7f7f7f7f7f7f7f6f6f6f6f6f6f6f6f6
+f6f6f6f6f6f6f6f6f6f5f5f5f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f7f7f7f8f8f8
+f9f9f9fafafafbfbfbfbfbfbfcfcfccdd8ea276bac00579e00579e00579e00579e00579e
+00579e00579e00579e00579e5c83bdeef1f6fafafafafafafafafaf9f9f9f9f9f9f9f9f8
+f8f8f7abbcda296bac00579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e01589f4c80badfe6f0fafafafafafafafafafafafa
+fafafafafafafafafafafafafafafafbfbfbfcfcfcfcfcfcfcfcfcfdfdfdfefefefefefe
+fffffffffffffffffffffffffffffffffffffffffffffffffdfdfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefefeffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc2cfe73573b1
+03589f00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e
+1a62a64c7db96a92c680a3ce86a9d186a9d184a7d07b9fcc6991c5517fbb2869ac075aa0
+00579e00579e00579e819dcdfefefefefefefefefefefefefefefefefefefefefefefefe
+fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+fefefefefefefefefefefefefefefefefefefefefee2eaf33b74b300579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e01579e236babc9d4e9ffffffffffff
+fffffffffffffffffffffffffefefefefefefefefefefefefefefefefefefefefefefefe
+fdfdfdfefefefefefefefefefefefefefefe3177b000579e00579e00579e00579e00579e
+00579e00579e00579e00579e336cafc5d1e6fcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfc
+fdfdfdfdfdfdfdfdfdfefefefefefefefefefefefefefefefefefefefefefefefefefefe
+fefefefefefefefefefefefefefefefefefefefefef8f9fc92aed32168a902589f00579e
+00579e00579e00579e00579e00579e00579e00579e1862a66794c4b6c9e1dae1efeceef5
+f9fafafafafafafafaf6f7f8e8ebf3d3dceba7bedb5486bb115ea300579e00579e00579e
+00579e00579e00579e03589f266aab94b0d2f4f5f7f9f9f9f9f9f9f9f9f9f9f9f9f8f8f8
+f8f8f8f8f8f8f8f8f8f7f7f7f2f3f5a2bcd800579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e0559a04c83b8e1e4eef5f5f5f5f5f5f5f5f5f5f5f5
+f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f6f6f6f6f6f6
+f6f6f6f7f7f7f9f9f9fafafaf3f4f75485bc00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e5c83bdedf0f5fafafaf9f9f9f9f9f9f8f8f8f8f8f8f7f7f7
+f6f6f5abbcda296bac00579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e0b5ca23871b1628cc17ca0cc91b0d49bb8d89bb8d89bb8d89bb7d7
+9ab7d69ab7d69ab7d69ab7d69ab7d6a1bdd8cfd9e9f5f5f7f9f9f8f9f9f8f9f9f8f9f9f8
+f9f9f8f9f9f9f9f9f9f9f9f9fafafafbfbfbfcfcfcfcfcfcfdfdfdfefefefefefefefefe
+fffffffffffffffffffffffffffffffffffffffffffffffffdfdfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefefeffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffff5f6fb5e91c1085ba1
+00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e2c6bad83a4cf
+c6d6e9dee6f2e8ecf6eff2f9f1f3faf1f3f9eff2f9ecf0f7e7ebf5dfe6f2d2deedb1c7e1
+7c9ecc4877b62b69acb0c0e0fefefefefefefefefefefefefefefefefefefefefefefefe
+fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+fefefefefefefefefefefefefefefefefefef9fafca5bbdc085aa100579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e0d5ea37b9dcafefefeffffff
+fffffffffffffffffffffffffefefefefefefefefefefefefefefefefefefefefefdfdfd
+fdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfd3077b000579e00579e00579e00579e00579e
+00579e00579e00579e00579e336cafc4d0e6fbfbfbfbfbfbfbfbfbfbfbfbfbfbfbfbfbfb
+fcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfd
+fefefefefefefefefefefefefefefefefefefefefeb5c4e13070af03589f00579e00579e
+00579e00579e00579e00579e00579e00579e296aac9ab4d6e3e9f3f8f9fbfbfbfbfafafa
+fafafaf9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f3f4f7dbe3ed85a3cd1c64a700579e00579e
+00579e00579e00579e00579e03589f3372afb3c3def8f8f8f7f7f7f7f7f7f7f7f7f7f7f7
+f7f7f7f7f7f7f7f7f7f7f7f7f2f2f5a2bcd800579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e1f67a8a0b3d5f4f4f4f4f4f4f4f4f4f4f4f4
+f4f4f4f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f4f4f4f4f4f4
+f5f5f5f5f5f5f6f6f6f7f7f79bafd40c5ca200579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e5c83bdeceff4f9f9f9f8f8f8f7f7f7f6f6f6f5f5f5f5f5f4
+f5f5f4aabbd9296bac00579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e2064a9698fc3afc4ded4deece2e7f1ebeef5f1f3f7f4f5f9f4f5f8f4f5f8f3f4f7
+f3f4f6f3f4f6f3f4f6f3f4f6f3f4f6f5f6f7f9f9f8f9f9f9f9f9f8f9f9f8f9f9f8f8f8f7
+f8f8f7f9f9f8faf9f9fafafafafafafbfbfbfcfcfcfdfdfdfdfdfdfefefefefefefefefe
+fffffffffffffffffffffffffffffffffffffffffffefefefdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefefeffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffc3d0e82f72af00579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579e457db8bfcfe6f2f5fa
+fdfdfefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefafbfc
+f0f3f9e6ebf4e1e9f2f4f6fafefefefefefefefefefefefefefefefefefefefefefefefe
+fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+fefefefefefefefefefefefefefefefefefef0f3f9537dba00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e01589e3777b2dce2f1fefefe
+fffffffffffffffffffffffffffffffefefefefefefefefefefefefefefefefefefefefe
+fdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfcfcfc3077b000579e00579e00579e00579e00579e
+00579e00579e00579e00579e336cafc3cfe4f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9
+fafafafafafafbfbfbfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfc
+fcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfce4e8f35389bd055aa000579e00579e00579e
+00579e00579e00579e00579e00579e2266a99bb3d6f1f4f8fcfcfcfbfbfbfafafaf9f9f9
+f9f9f9f9f9f9f9f9f9f9f9f9f8f8f8f8f8f8f8f8f8f7f7f8ebedf2819fcb1561a500579e
+00579e00579e00579e00579e00579e0559a0578bbddbe1edf7f7f7f7f7f7f7f7f7f7f7f7
+f6f6f6f6f6f6f6f6f6f5f5f5f0f1f3a1bbd800579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e04599f4d85b8dce0eaf3f3f3f3f3f3f3f3f3
+f2f2f2f2f2f2f1f1f1f1f1f1f2f2f2f2f2f2f2f2f2f2f2f2f1f1f1f1f1f1f2f2f2f2f2f2
+f3f3f3f4f4f4f5f5f5cad3e6226aaa00579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e5c83bdebeef3f8f8f8f6f6f6f5f5f5f5f5f4f4f4f4f4f4f4
+f4f4f3aabbd8296bac00579e00579e00579e00579e00579e00579e00579e00579e0559a0
+447db6b6c6e0e8ecf3f6f7f9fbfbfbfafafafbfbfbfbfbfbfbfafafbfbfbfafaf9fafaf9
+fafaf9fafaf9fafaf9fbfbfafbfbfafbfbfafbfbfafafafaf9f9f9f9f9f9f9f9f9fafaf9
+f9f9f8f9faf9fafbfafbfbfbfbfbfbfcfcfcfdfdfdfefefefefefefefefeffffffffffff
+fffffffffffffffffffefefefefefefefefefefefefffffffdfdfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefefeffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffff94abd41962a600579e
+00579e00579e00579e00579e00579e00579e00579e00579e306eafb7c8e3fbfcfdfefefe
+fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+fefefefefefefefefefefefefefefefdfdfec1cfe70559a000579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579e1a64a79ab0d7fefefe
+fefefefffffffffffffffffffffffffefefefefefefefefefefefefefefefefefefefefe
+fefefefdfdfdfdfdfdfdfdfdfcfcfcfcfcfc3077b000579e00579e00579e00579e00579e
+00579e00579e00579e00579e326caec2cee3f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8
+f8f8f8f8f8f8f9f9f9f9f9f9f9f9f9fafafafafafafbfbfbfcfcfcfcfcfcfcfcfcfcfcfc
+fcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcaebfde286cac00579e00579e00579e00579e
+00579e00579e00579e00579e01589f6193c2e7eaf4fbfbfbfafafafafafaf9f9f9f8f8f8
+f8f8f8f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7e4e7f0407db602589f
+00579e00579e00579e00579e00579e00579e286aaba9bad9f6f6f6f5f5f5f5f5f5f5f5f5
+f5f5f5f5f5f5f5f5f5f5f5f5eff0f3a0b9d600579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e2267a99fb2d4f1f1f1f0f0f0f0f0f0
+f0f0f0f1f1f1f0f0f0f0f0f0efefefefefefefefefefefeff0f0f0f0f0f0f0f0f0f1f1f1
+f1f1f1f2f2f2eaecef5183b90559a000579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e5b83bdeaedf2f5f5f5f5f5f5f3f3f3f2f2f2f2f2f2f2f2f2
+f3f3f3a9bad7296bab00579e00579e00579e00579e00579e00579e00579e075aa05487bc
+d7deecf5f6f7f9f9f9f9f9f9f9f9f9fafafafbfafafbfbfbfbfbfbfafaf9fafaf9fafaf9
+fafaf9fafaf9fbfbfafbfbfafbfbfafbfbfafbfbfafbfbfafafaf9fafaf9fafaf9fafaf9
+fafafafcfcfcfcfcfcfcfcfcfcfcfcfdfdfdfefefefefefefefefefefefeffffffffffff
+fffffffefefefefefefefefefefefefefefefffffffffffffdfdfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefefeffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffff6597c40559a000579e
+00579e00579e00579e00579e00579e00579e00579e01589e73a0caf2f3f9fefefefefefe
+fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+fefefefefefefefefefefefefefefefefefefdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfd
+fdfdfdfdfdfdfefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+fefefefefefefefefefefefefefefefafbfd5d86bf00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579e01579e4684b9ebeff7
+fefefefefefefefefefffffffffffffffffffffffffefefefefefefefefefefefefefefe
+fefefefefefefdfdfdfcfcfcfcfcfcfcfcfc3077b000579e00579e00579e00579e00579e
+00579e00579e00579e00579e326caec1cee2f7f7f7f7f7f7f7f7f7f6f6f6f7f7f7f7f7f7
+f6f6f6f6f6f6f7f7f7f7f7f7f8f8f8f8f8f8f8f8f8f9f9f9f9f9f9fafafafafafafafafa
+fbfbfbfbfbfbfbfbfbfbfbfbfbfbfbfafafb719ec7075aa000579e00579e00579e00579e
+00579e00579e00579e00579e2265a9a3b6d8fafafafafafaf9f9f9f9f9f9f8f8f8f7f7f7
+f7f7f7f6f6f6f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f6f6f6f6f6f6f6f6f68ca3ce1360a4
+00579e00579e00579e00579e00579e00579e01589f6d9cc5eeeff2f5f5f5f4f4f4f4f4f4
+f4f4f4f4f4f4f3f3f3f3f3f3edeef19fb9d500579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e4c84b7d5dae6efefefeeeeee
+eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeefefef
+efefefedeeef8aa2cb1260a400579e00579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e5b82bce8ebf0f4f4f4f2f2f2f0f0f0f0f0f0f0f0f0f0f0f0
+f0f0f0a8b8d6296aab00579e00579e00579e00579e00579e00579e03599f447fb6dde1ed
+f6f6f6f7f7f7f8f8f8f9f9f9f9f9f9f9f9f9f9f9f8fafaf9f9f9f8fafaf9fafaf9fafaf9
+fafaf9f9f9f9f9f9f9f9f9f9fafaf9f9f9f9f9f9f9f8f8f8fafaf9fafaf9fafaf9fafaf9
+fbfbfafcfcfcfcfcfcfcfcfcfdfdfdfefefefefefefefefefefefefefefefefefefefefe
+fefefefefefefefefefefefefefefefefefefffffffffffffdfdfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefefeffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffafbfd5790bf00579e00579e
+00579e00579e00579e00579e00579e00579e00579e1760a59ab6d7fefefefefefefefefe
+fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+fefefefefefefefefefefefefdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfd
+fdfdfdfdfdfdfdfdfdfdfdfdfefefefefefefefefefefefefefefefefefefefefefefefe
+fefefefefefefefefefefefefefefed7dff0065aa000579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e246aaba9bcdc
+fefefefefefefefefefefefefffffffffffffffffffefefefefefefefefefefefefefefe
+fefefefefefefdfdfdfcfcfcfcfcfcfcfcfc3077b000579e00579e00579e00579e00579e
+00579e00579e00579e00579e326caec1cde2f7f7f7f6f6f6f7f7f7f7f7f7f7f7f7f6f6f6
+f7f7f7f7f7f7f6f6f6f7f7f7f6f6f6f7f7f7f7f7f7f8f8f8f8f8f8f8f8f8f9f9f9f9f9f9
+f9f9f9fafafafafafafafafafafafae5e9f2548bbd00579e00579e00579e00579e00579e
+00579e00579e00579e00579e2b6cacafbfddfafafaf9f9f9f9f9f9f8f8f8f8f8f8f7f7f7
+f6f6f6f7f7f7f7f7f7f6f6f6f6f6f6f6f6f6f6f6f6f5f5f5f5f5f5f5f5f5a2b4d61864a6
+00579e00579e00579e00579e00579e00579e00579e568abcd9deeaf3f3f3f3f3f3f3f3f3
+f3f3f3f2f2f2f2f2f2f3f3f3ecedf09db7d400579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e2367a99cb1d1ececedeeeeee
+eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee
+ededeeb8c5dc266dab00579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e5b82bce6e9eef1f1f1f0f0f0efefefefefefefefefeeeeee
+eeeeeea7b7d5296aab00579e00579e00579e00579e00579e00579e1a65a7a2b4d6f5f5f5
+f5f5f5f6f6f6f7f7f7f8f8f8f9f8f8f9f8f8f8f8f7f8f8f7f8f8f8f8f8f8f8f8f8f8f8f8
+f8f8f8f8f8f8f8f8f8f8f8f7f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f9f9f9fafaf9fafaf9
+fcfcfcfcfcfcfcfcfcfdfdfdfefefefefefefefefefefefefefefefefefefefefefefefe
+fefefefefefefefefefefefefefefefffffffffffffffffffdfdfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefefeffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffff1f3fa518bbd00579e00579e
+00579e00579e00579e00579e00579e00579e00579e1f64a8a4badafefefefefefefefefe
+fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+fefefefefefefdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfcfcfcfcfcfcfcfcfcfcfcfc
+fcfcfcfcfcfcfcfcfcfdfdfdfdfdfdfdfdfdfdfdfdfefefefefefefefefefefefefefefe
+fefefefefefefefefefefefefdfdfd7395c800579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e075aa06595c4
+f2f4f9fefefefefefefefefefefefefffffffffffffffffffffffffefefefefefefefefe
+fefefefefefefdfdfdfcfcfcfcfcfcfcfcfc3077b000579e00579e00579e00579e00579e
+00579e00579e00579e00579e326caec0cce1f5f5f5f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6
+f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f7f7f7f6f6f6f6f6f6f7f7f7f7f7f7f7f7f7
+f7f7f7f7f7f7f8f8f8f8f8f8f8f8f8d8dfec4a84b900579e00579e00579e00579e00579e
+00579e00579e00579e00579e2b6cacaebedcf8f8f8f8f8f8f7f7f7f7f7f7f7f7f7f6f6f6
+f6f6f6f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5a1b3d51863a6
+00579e00579e00579e00579e00579e00579e00579e4b81b7cdd4e4f2f2f2f2f2f2f2f2f2
+f1f1f1f1f1f1f1f1f1f1f1f1e9eaee94b0d000579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e01589f578abbd3d9e3ececec
+ecececececececececececececececedededededededededeeeeeeeeeeeeeeeeeeeeeeee
+d8dce65485b9075aa000579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e5a82bae2e5eaededededededecececececececececececec
+edededa6b6d4296aab00579e00579e00579e00579e00579e00579e2970acd9dee9f4f4f4
+f4f4f4f5f5f5f6f6f5f6f6f5f6f6f5f6f6f5f5f5f5f5f5f5f5f4f4f5f4f4f5f5f5f5f5f5
+f5f5f5f5f5f5f5f5f4f5f5f4f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f6f6f5f8f8f7f9f9f9
+fbfbfbfcfcfcfcfcfcfdfdfdfefefefefefefefefefefefdfefefdfefefefefefefefefe
+fefefefefefefefefefefefefffffffffffffffffffffffffdfdfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefdfefefefefefefefefefefefefe
+fefefefefefefefefefefefefefefefefefeffffffffffffffffff5e94c202589f00579e
+00579e00579e00579e00579e00579e00579e00579e085aa17ea6cdf4f6fafefefefefefe
+fefefefefefefefefefefefefefefefefefefefefefefefefefefefdfdfdfdfdfdfdfdfd
+fdfdfdfdfdfdfdfdfdfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfc
+fcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfdfdfdfdfdfdfdfdfdfefefe
+fefefefefefefefefefefefee1e6f21c66a800579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e3574b1
+bfcde5fefefefefefefefefefefefefefefefefefefffffffffffffefefefefefefefefe
+fefefefefefefdfdfdfcfcfcfcfcfcfcfcfc3077b000579e00579e00579e00579e00579e
+00579e00579e00579e00579e326caebfcce1f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5
+f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f6f6f6f6f6f6f6f6f6
+f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6d6ddeb4a83b900579e00579e00579e00579e00579e
+00579e00579e00579e00579e2b6cacadbddbf7f7f7f7f7f7f6f6f6f6f6f6f6f6f6f5f5f5
+f5f5f5f4f4f4f4f4f4f4f4f4f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3a0b2d51863a6
+00579e00579e00579e00579e00579e00579e00579e497fb7cad2e3f0f0f0f0f0f0efefef
+efefefefefefefefefeeeeeee4e6eb86a6cb00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579e2468a99db3d1e8e8ea
+ecececececececececedededededededededeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee5e7eb
+87a4ca1963a600579e00579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e5a81badfe2e7eaeaeae9e9e9e9e9e9e9e9e9e9e9e9eaeaea
+eaeaeaa4b4d2286aaa00579e00579e00579e00579e00579e00579e2d73ade9ebeef2f2f2
+f2f2f2f3f3f2f3f3f2f3f3f2f4f4f3f3f3f2f2f2f2f2f2f2f2f1f1f2f1f0f2f1f0f2f2f2
+f2f2f2f2f1f1f2f2f1f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f4f4f3f6f6f5f7f7f7
+f9f9f9fbfbfbfcfcfcfdfdfdfefefefefefefefefefdfdfcfdfdfcfefefefefefefefefe
+fefefefefefefffffffffffffffffffffffffffffffffffffdfdfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefdfefefefefefefefefefefefefe
+fefefefefefefefefefefefefefefefefefefefefefefefeffffff7ba1cb0e5da300579e
+00579e00579e00579e00579e00579e00579e00579e00579e3d79b5bdcde5f9fafcfefefe
+fefefefefefefefefefefefefefefefefefefefefefdfdfdfdfdfdfdfdfdfdfdfdfdfdfd
+fdfdfdfdfdfdfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfc
+fcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfdfdfdfdfdfdfdfdfd
+fdfdfdfdfdfdfdfdfdfdfdfd89a6d0075ba000579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e115ea4
+83a6cef5f7fafefefefefefefefefefefefefefefefefefefffffffefefefefefefefefe
+fefefefefefefdfdfdfcfcfcfcfcfcfcfcfc3077b000579e00579e00579e00579e00579e
+00579e00579e00579e00579e326caebecbe0f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3
+f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5
+f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5d5dcea4983b800579e00579e00579e00579e00579e
+00579e00579e00579e00579e2b6bacacbcdaf6f6f6f5f5f5f5f5f5f5f5f5f4f4f4f3f3f3
+f3f3f3f3f3f3f3f3f3f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f1f1f1a0b1d41863a6
+00579e00579e00579e00579e00579e00579e00579e497fb6c8d0e1efefefeeeeeeeeeeee
+eeeeeeeeeeeeedededededede2e4e986a5cb00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579e01589f5c8cbcd2d7e3
+ecececededededededededededededeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeecededb0c2d9
+3173ae00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e5980b8dcdee3e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7
+e8e8e8a3b3d02869aa00579e00579e00579e00579e00579e00579e256daacad1e2efefef
+f0f0eff0f0f0f1f1f0f1f1f0f1f1f0f0f0efefefeeefeeeeefeeeeefeeedefeeedf0efee
+f0efeeefeeedefeeedefeeedefeeedefeeedefeeeef0efeff0f0f0f1f1f0f3f3f3f4f4f4
+f6f6f6f9f9f9fbfbfbfcfcfcfdfdfdfefefefefefefefefefefefefefefefefefefefefe
+fefefefefefefffffffffffffffffffffffffffffffffffffdfdfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefdfefefefefefefefefefefefefe
+fefefefefefefefefefefefefefefefefefefefefefefefefefefeaabcdd2369ab00579e
+00579e00579e00579e00579e00579e00579e00579e00579e085aa15288bcbdcee5f5f7fa
+fefefefefefefefefefdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfcfcfcfcfcfc
+fcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfc
+fbfbfbfbfbfbfbfbfbfbfbfbfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfbfbfbfcfcfcfcfcfc
+fbfbfbfbfbfbfbfbfbe3e8f23775b202589f00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e
+4a82b9d2dbecfefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+fefefefefefefdfdfdfcfcfcfcfcfcfcfcfc3077b000579e00579e00579e00579e00579e
+00579e00579e00579e00579e326caebecadff2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2
+f2f2f2f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f4f4f4f4f4f4f4f4f4f4f4f4
+f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4d4dbe94983b800579e00579e00579e00579e00579e
+00579e00579e00579e00579e2a6bacabbcd9f4f4f4f4f4f4f4f4f4f3f3f3f3f3f3f2f2f2
+f2f2f2f3f3f3f2f2f2f2f2f2f1f1f1f1f1f1f1f1f1f0f0f0f0f0f0f0f0f09fb0d31763a6
+00579e00579e00579e00579e00579e00579e00579e497eb6c8cfe0eeeeeeedededededed
+edededececececececebebebe1e3e886a5ca00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e2166a8a0b6d2
+e9e9ebeeeeeeeeeeeeeeeeeeeeeeeeefefefefefefefefefefefefefefefd2d8e45d8bbc
+085aa000579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e5980b8dadde2e6e6e6e5e5e5e6e6e6e6e6e6e6e6e6e5e5e5
+e6e6e6a2b2cf2869aa00579e00579e00579e00579e00579e00579e1361a485a2c8e8e8ea
+ededeceeeeedededecededececececebebeaebeae9ebeae9ebeae9ebeae9ebeae9ecebea
+ecebeaebeae9ebeae9ebeae9ebeae9ebeaeaebeaeaecebebededecededeceeeeeef0f0f0
+f3f3f3f6f6f6f9f9f9fbfbfbfcfcfcfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfefefe
+fefefefefefefffffffffffffffffffffffffffffffffffffdfdfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefdfefefefefefefefefefefefefe
+fefefefefefefefefefefefefefefefefefefefefefefefefefefedee4f1447fb703589f
+00579e00579e00579e00579e00579e00579e00579e00579e00579e075aa03c7bb494afd4
+dae1f0fbfbfdfdfdfdfdfdfdfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfc
+fcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfbfbfbfbfbfbfbfbfbfbfbfbfafafafafafa
+fafafafafafafafafafafafafafafafbfbfbfbfbfbfbfbfbfbfbfbf9f9f9f9f9f9f9f9f9
+f9f9f9f9f9f9f9f9f99eb2d71160a400579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e
+1a64a79ab7d7f9fafcfdfdfdfefefefefefefefefefefefefefefefefefefefefefefefe
+fefefefefefefdfdfdfcfcfcfcfcfcfcfcfc3077b000579e00579e00579e00579e00579e
+00579e00579e00579e00579e326cadbdc9def1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f2f2f2
+f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2
+f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2d3dae84982b800579e00579e00579e00579e00579e
+00579e00579e00579e00579e2a6bacaabbd8f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f1f1f1
+f0f0f0f1f1f1f0f0f0efefefefefefefefefefefefefefefefefefefefef9fb0d31763a6
+00579e00579e00579e00579e00579e00579e00579e487eb5c6cedfecececebebebebebeb
+ebebebeaeaeae9e9e9e9e9e9dfe1e684a4c800579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e01589f5f8cbd
+d4dae5eeeeeeeeeeeeefefefefefeff0f0f0f0f0f0f0f0f0f0f0f0e4e6ec89a7cc1963a6
+00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e5880b7d8dbe0e3e3e3e3e3e3e3e3e3e4e4e4e4e4e4e3e3e3
+e3e3e3a0b1ce2869a900579e00579e00579e00579e00579e00579e03589f3472aeb1bfd7
+e8e9eaeaeae9e8e8e8e8e8e8e8e8e7e8e7e6e7e7e6e7e6e5e7e6e6e8e7e7e8e7e7e8e8e7
+e8e8e7e8e8e7e8e7e7e8e7e7e8e8e7e8e8e8e7e7e7e8e8e8e8e8e8e9e9e8eaeaeaebebeb
+eeeeeef2f2f2f5f5f5f7f7f7f9f9f9fafafafbfbfbfbfbfbfcfcfcfcfcfcfefefefefefe
+fefefefffffffffffffffffffffffffffffffffffffffffffdfdfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfd
+fdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfcfcfd94b0d51763a6
+00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e1c63a7
+4b84ba90abd2c6d1e8f6f7fafcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfc
+fcfcfcfbfbfbfbfbfbfbfbfbfbfbfbfbfbfbfafafafafafafafafafafafaf9f9f9f9f9f9
+f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f8f8f8f7f7f7f7f7f7
+f8f8f8f8f8f8e6e9f14b81b80559a000579e00579e00579e00579e00579e1863a65a89bd
+81a8cc739dc72d6fae05599f00579e00579e00579e00579e00579e00579e00579e00579e
+01589f6090c2dfe5f1fcfcfcfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfefefefefefefefefe
+fefefefefefefdfdfdfcfcfcfcfcfcfcfcfc3077b000579e00579e00579e00579e00579e
+00579e00579e00579e00579e326badbcc9ddf0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0
+f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2
+f2f2f2f1f1f1f1f1f1f1f1f1f1f1f1d2d8e74982b700579e00579e00579e00579e00579e
+00579e00579e00579e00579e2a6baba9bad7f1f1f1f1f1f1f0f0f0f0f0f0f0f0f0efefef
+eeeeeeefefefeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeedededededed9eafd21763a6
+00579e00579e00579e00579e00579e00579e00579e487eb5c5cddde9e9e9e9e9e9e9e9e9
+e8e8e8e8e8e8e7e7e7e7e7e7dde0e483a3c700579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e1c65a7
+a4bad4e9eaeceeeeeeefefefefefefefefeff0f0f0f0f0f0eeeeefb3c5db3373af00579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e587fb7d7dadee2e2e2e2e2e2e1e1e1e2e2e2e2e2e2e2e2e2
+e2e2e29fafcd2869a900579e00579e00579e00579e00579e00579e00579e095ba14479b3
+a7b8d2dddfe2e5e5e5e6e5e5e6e6e5e6e6e5e6e6e5e6e6e5e6e6e5e6e6e5e6e6e5e6e6e5
+e6e6e6e6e6e6e6e6e5e5e5e4e5e5e5e5e5e4e6e5e5e6e6e5e5e5e5e5e5e5e5e5e5e6e6e6
+e8e8e8ecececefefeff2f2f2f4f4f4f7f7f7f8f8f8fafafafcfcfcfdfdfdfefefeffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffdfdfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfd
+fdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfde7ebf4678fc3
+0a5ca100579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e1961a63676b25b90c09bb1d6cad3e9f1f3f8fcfcfcfcfcfcfcfcfcfbfbfbfbfbfb
+fbfbfbfbfbfbfafafafafafafafafaf9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9
+f9f9f9f8f8f8f8f8f8f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7
+f7f7f7f6f6f6acbcda1d67a800579e00579e00579e00579e00579e0b5ca2628fc0d6dde9
+eceef2e4e8ef93add21e67a800579e00579e00579e00579e00579e00579e00579e00579e
+00579e276bacb3c7e0fbfcfcfcfcfcfcfcfcfcfcfcfdfdfdfdfdfdfdfdfdfdfdfdfdfdfd
+fdfdfdfdfdfdfdfdfdfcfcfcfcfcfcfcfcfc3077b000579e00579e00579e00579e00579e
+00579e00579e00579e00579e326badbcc9ddf0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0
+f0f0f0f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2
+f2f2f2f1f1f1f1f1f1f1f1f1f0f0f0d1d8e64882b700579e00579e00579e00579e00579e
+00579e00579e00579e00579e2a6baba8b8d6efefefefefefeeeeeeeeeeeeeeeeeeededed
+edededededededededededededededededededededecececebebebebebeb9caed01763a5
+00579e00579e00579e00579e00579e00579e00579e487db4c4cbdce7e7e7e7e7e7e7e7e7
+e7e7e7e6e6e6e6e6e6e6e6e6dcdee282a1c600579e00579e00579e00579e00579e00579e
+00579e00579e085ba15380b7789bc2628cbc1f63a600579e00579e00579e00579e01579e
+608abdd5dae4edededeeeeeeeeeeeeeeeeeeefefefefefefd1d8e55e8abd075aa000579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e587fb7d7dadee2e2e2e0e0e0e1e1e1e1e1e1e1e1e1e0e0e0
+e0e0e09eaecc2869a900579e00579e00579e00579e00579e00579e00579e00579e085aa0
+2c6eab7498c0bfc7d7dfe0e1e4e4e3e5e5e4e4e4e4e5e5e4e4e4e3e4e4e3e4e4e3e3e3e2
+e3e3e2e3e3e2e3e3e2e2e2e1e2e2e2e3e2e2e3e3e2e3e3e3e1e2e1e1e1e1e1e1e1e2e2e2
+e2e2e2e6e6e6e9e9e9edededf1f1f1f4f4f4f8f8f8fafafafcfcfcfefefeffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffdfdfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfd
+fcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcdce4f0
+5c87bf0559a000579e00579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e04599f1c65a82e72af4883b8799bc9a8b9dbd1d8ebf1f2f7fafafa
+fafafafafafaf9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f8f8f8f8f8f8f8f8f8f8f8f8
+f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f6f6f6f6f6f6f6f6f6
+f5f5f5ebedf1588bbd075aa000579e00579e00579e00579e00579e266baba9bbd9f4f4f4
+f4f4f4f4f4f4dfe3ec407db502589f00579e00579e00579e00579e00579e00579e00579e
+00579e0559a0789ecae9ecf5fcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfc
+fcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfc3077b000579e00579e00579e00579e00579e
+00579e00579e00579e00579e326badbcc9ddf0f0f0f0f0f0f0f0f0f0f0f0f1f1f1f0f0f0
+f1f1f1f1f1f1f2f2f2f2f2f2f2f2f2f2f2f2f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f2f2f2
+f2f2f2f2f2f2f2f2f2f1f1f1f0f0f0d1d7e64881b700579e00579e00579e00579e00579e
+00579e00579e00579e00579e2a6baba8b8d5eeeeeeededededededededededededececec
+ecececececececececebebebebebebebebebebebebebebebeaeaeaeaeaea9caed01763a5
+00579e00579e00579e00579e00579e00579e00579e477db4c3cadbe7e7e7e6e6e6e6e6e6
+e6e6e6e5e5e5e4e4e4e4e4e4dadce082a1c600579e00579e00579e00579e00579e00579e
+00579e00579e82a2c5c7cddad6d9dfcad0db789bc200579e00579e00579e00579e00579e
+1360a491abcde2e3e8ebebebedededededededededd5dbe56e93c2115fa300579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e5880b8d8dbe0e3e3e3e1e1e1e1e1e1e1e1e1e0e0e0e0e0e0
+e0e0e09eaecc2869a900579e00579e00579e00579e00579e00579e00579e00579e00579e
+01579e1160a32e71ac648cbb9aabccbec7d8d9dae0e3e3e3e3e3e3e3e2e1e2e3e3e1e2e1
+e0e1e0e1e1e1e1e0e0e0e0e0e0e0e0e0e0e0e1e0e0e0e0e0dfdfdfdededededededddddd
+dededee1e1e1e5e5e5eaeaeaf0f0f0f4f4f4f9f9f9fbfbfbfdfdfdfefefeffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffefdfefdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfd
+fcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfc
+e1e8f26b8fc400579e00579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e03589f0e5da31a65a7246dab417cb57899c9
+b4c2dfebeef4f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f7f7f7f7f7f7f7f7f7f7f7f7
+f7f7f7f7f7f7f7f7f7f7f7f7f6f6f6f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5
+f5f5f5bac6df2b6fad00579e00579e00579e00579e00579e02589f4581b6dfe3ebf2f2f2
+f3f3f3f3f3f3f2f3f387a3cc1360a400579e00579e00579e00579e00579e00579e00579e
+00579e00579e3f75b4cbd6e9fcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfc
+fcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfc3077b000579e00579e00579e00579e00579e
+00579e00579e00579e00579e326badbcc9ddf0f0f0f0f0f0f0f0f0f1f1f1f1f1f1f1f1f1
+f2f2f2f2f2f2f2f2f2f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f5f5f5f4f4f4f4f4f4f4f4f4
+f3f3f3f2f2f2f2f2f2f2f2f2f1f1f1d1d7e54881b700579e00579e00579e00579e00579e
+00579e00579e00579e00579e2a6baba7b7d4ecececebebebebebebebebebebebebeaeaea
+eaeaeaebebebeaeaeae9e9e9e9e9e9e9e9e9e9e9e9e8e8e8e8e8e8e8e8e89badcf1763a5
+00579e00579e00579e00579e00579e00579e00579e477db3c1c9d9e5e5e5e5e5e5e4e4e4
+e3e3e3e3e3e3e2e2e2e2e2e2d9dbdf82a1c600579e00579e00579e00579e00579e00579e
+00579e00579ec4ced8e0e0e0e0e0e0e0e0e0b6c2d3336cac00579e00579e00579e00579e
+00579e1764a56f90c0b1bdd6d2d6e1c7cfdf99adcf4b7db50f5ea300579e00579e00579e
+00579e00579e00579e5481b8acbfd7bccedd6d93c200579e00579e00579e00579e00579e
+00579e00579e00579e00579e5980b8d9dce1e4e4e4e3e3e3e2e2e2e2e2e2e1e1e1e0e0e0
+e1e1e19fb0cd2869a900579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e0b5ca11863a5216aa8276faa3074ac497db4497db3497db4497db3
+4f7fb46f8fbdaab6cfd6d7dcdedededededededededddddddcdcdcdadadadadadad9d9d9
+dbdbdbdfdfdfe5e5e5ecececf2f2f2f7f7f7fbfbfbfdfdfdfefefeffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffefefefdfdfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefdfefefefefefefefdfdfdfdfdfd
+fdfdfdfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfc
+fcfcfceef1f798b1d62365a900579e00579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e03589f0a5ca1
+1262a52b6fad7f9ccbd4dbebf7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f6f6f6
+f6f6f6f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5
+f2f2f36d98c30b5ca200579e00579e00579e00579e00579e1762a68fa8cef0f0f1f1f1f1
+f2f2f2f2f2f2f3f3f3cad3e5256dab00579e00579e00579e00579e00579e00579e00579e
+00579e00579e065aa093b2d4f2f4f8fbfbfbfbfbfbfbfbfbfbfbfbfcfcfcfcfcfcfcfcfc
+fcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfbfbfb3076b000579e00579e00579e00579e00579e
+00579e00579e00579e00579e326cadbdcadff2f2f2f2f2f2f3f3f3f3f3f3f3f3f3f3f3f3
+f4f4f4f4f4f4f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f6f6f6f6f6f6f6f6f6f6f6f6f5f5f5
+f6f6f6f4f4f4f3f3f3f3f3f3f2f2f2d1d7e64881b700579e00579e00579e00579e00579e
+00579e00579e00579e00579e2a6aaba6b5d2eaeaeae9e9e9e9e9e9e9e9e9e8e8e8e9e9e9
+e9e9e9e8e8e8e8e8e8e7e7e7e8e8e8e8e8e8e7e7e7e7e7e7e7e7e7e7e7e79bacce1763a5
+00579e00579e00579e00579e00579e00579e00579e477cb3c0c7d8e3e3e3e3e3e3e1e1e1
+e0e0e0e0e0e0e1e1e1e1e1e1d7d9de809fc400579e00579e00579e00579e00579e00579e
+00579e00579ec8d1d8dfdfdfdedededededed1d3da7296be00579e00579e00579e00579e
+00579e00579e0a5ba11261a41765a51564a50f5fa305599f00579e00579e00579e00579e
+00579e00579e4677b3c9d2dfe9eaebebededc9d5e200579e00579e00579e00579e00579e
+00579e00579e00579e00579e5980b8dbdee3e7e7e7e6e5e4e5e5e4e4e4e4e3e3e3e3e3e3
+e3e3e3a1b1ce2869aa00579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e01579e04599f04599f04599f04599f
+05599f095ba11863a57699bfced1d8dbdbdbdbdbdbd9d9d9d8d8d8d5d5d5d6d6d6d7d7d7
+dbdbdbe2e2e2eaeaeaf1f1f1f7f7f7fbfbfbfdfdfdffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffefefefdfdfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefdfefefefefefefefefefefefefe
+fefefefdfdfdfdfdfdfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfbfbfb
+fbfbfbfbfbfbf8f8fae0e5f07e9ccb2769ab065aa002589f00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e01579e04599f0b5ea37593c6d7ddebf3f4f5f6f6f6f5f5f5f5f5f5f5f5f5f5f5f5
+f5f5f5f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f3f3f3f3f3f3f3f3f3
+c2cce13876b100579e00579e00579e00579e00579e00579e2e72adced5e4f0f0f0f0f0f0
+f1f1f1f2f2f2f3f3f3f3f4f45e8abe075aa000579e00579e00579e00579e00579e00579e
+00579e00579e00579e4f7fbad7deedfafafafafafafafafafafafafafafafafafafafafa
+fafafafafafafafafafafafafafafafafafa3076b000579e00579e00579e00579e00579e
+00579e00579e00579e00579e326caebfcce0f4f4f4f4f4f4f5f5f5f5f5f5f5f5f5f5f5f5
+f5f5f5f5f5f5f6f6f6f6f6f6f7f7f7f7f7f7f7f7f7f8f8f8f8f8f8f8f8f8f8f8f8f7f7f7
+f6f6f6f6f6f6f5f5f5f5f5f5f3f3f3d2d9e74882b700579e00579e00579e00579e00579e
+00579e00579e00579e00579e296aaaa4b4d1e8e8e8e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7
+e7e7e7e7e7e7e7e7e7e7e7e7e6e6e6e7e7e7e6e6e6e6e6e6e5e5e5e5e5e59aaacc1762a5
+00579e00579e00579e00579e00579e00579e00579e467cb3bec6d6e1e1e1e0e0e0e0e0e0
+e0e0e0e0e0e0e0e0dfe0e0e0d6d8dd809fc300579e00579e00579e00579e00579e00579e
+00579e00579ec6cfd6dcdcdcdcdcdcdcdcdcdbdbdbacb9ce2e69aa00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e105da3a4bad3e6e7e8ebebebeaeaebbac8db00579e00579e00579e00579e00579e
+00579e00579e00579e00579e5980b9dde0e5e8e8e8e7e7e7e8e8e8e7e7e7e6e6e6e7e7e7
+e6e6e6a2b2cf2869aa00579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e3e73afb1bbced9d9d9d7d7d7d4d4d4d2d2d2d2d2d2d5d5d5dbdbdb
+e2e2e2eaeaeaf1f1f1f7f7f7fbfbfbfdfdfdffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffefefefdfdfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefefefefefefefefefefefefefefe
+fefefefefefefefefefdfdfdfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfbfbfbfbfbfb
+fbfbfbfafafafafafafafafaf9f9f9e5eaf2a4b6da5684bc1e69a91161a40c5da204599f
+00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e01579e1f67a99bb0d4eaecf1f4f4f4f4f4f4f4f4f4f4f4f4
+f3f3f3f3f3f3f3f3f3f3f3f3f2f2f2f2f2f2f3f3f3f2f2f2f2f2f2f2f2f2f2f2f2eeeff0
+82a2c9135fa400579e00579e00579e00579e00579e0c5ca27193c2eeeeeeefefefefefef
+f0f0f0f2f2f2f3f3f3f5f5f5b0bedc1562a500579e00579e00579e00579e00579e00579e
+00579e00579e00579e085ba2abc3ddf6f6f8fafafafafafaf9f9f9f9f9f9f9f9f9f9f9f9
+f9f9f9f9f9f9fafafafafafafafafafafafa3076b000579e00579e00579e00579e00579e
+00579e00579e00579e00579e326caec0cce1f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5
+f6f6f6f7f7f7f8f8f8f9f9f9f9f9f9f9f9f9fafafafafafafbfbfbfbfbfbfafafafafafa
+f8f8f8f8f8f8f6f6f6f5f5f5f4f4f4d3d9e74882b700579e00579e00579e00579e00579e
+00579e00579e00579e00579e296aaaa4b4d0e6e6e6e6e6e6e6e6e6e6e6e6e7e7e7e6e6e6
+e7e7e7e6e6e6e6e6e6e6e6e6e5e5e5e5e5e5e4e4e4e4e4e4e3e3e3e3e3e399aacc1762a5
+00579e00579e00579e00579e00579e00579e00579e467cb2bec5d6e0e0e0e0e0e0e0e0e0
+dfdfdfdfdfdfdfdfdfdfdfdfd6d8dc809fc300579e00579e00579e00579e00579e00579e
+00579e00579ec5ced5d9dadadbdbdbdadadad9d9d9c9ccd5658db903589f00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e
+05599f6e93bfd3d7dfe6e6e6e7e7e7e5e6e6b3c2d700579e00579e00579e00579e00579e
+00579e00579e00579e00579e5981b9dee1e6eaeaeaeaeaeae9e9e9e9e9e9e8e8e8e8e8e8
+e8e8e8a2b3d02869aa00579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e00579e065aa05280b4b9c0ced4d4d4d2d2d2d0d0d0d0d0d0d4d4d4dbdbdbe4e4e4
+ecececf3f3f3f9f9f9fcfcfcfefefeffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffefefefdfdfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefefefffffffffffffffffffefefe
+fefefefefefefefefefefefefdfdfdfdfdfdfcfcfcfcfcfcfcfcfcfcfcfcfbfbfbfbfbfb
+fafafaf9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f7f8f8dee3efaebedd839dcc4d82b9
+2d73af226baa1864a70d5ca200579e00579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e1360a47b9ac7e0e4ebf2f2f2f2f2f2f3f3f3
+f3f3f3f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f1f1f1f1f1f1f0f0f0f0f0f0f0f0f0ccd3e3
+467fb600579e00579e00579e00579e00579e00579e1c66a7b5c0daeeeeeeeeeeeeefefef
+f0f0f0f1f1f1f3f3f3f5f5f5ebedf23475b001589e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e628cc1e3e8f0f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9
+f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f93076af00579e00579e00579e00579e00579e
+00579e00579e00579e00579e326caec1cde2f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6
+f7f7f7f8f8f8f9f9f9fafafafafafafbfbfbfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfc
+fafafaf8f8f8f7f7f7f5f5f5f4f4f4d3d9e74882b700579e00579e00579e00579e00579e
+00579e00579e00579e00579e296aaaa3b3d0e5e5e5e5e5e5e5e5e5e5e5e5e6e6e6e5e5e5
+e5e5e5e5e5e5e5e5e5e4e4e4e3e3e3e3e3e3e2e2e2e2e2e2e2e2e2e1e1e198aacb1762a5
+00579e00579e00579e00579e00579e00579e00579e467bb2bdc5d5e0e0e0e0e0e0e0e0e0
+dfdfdfdedfdfdfdfdfdfdfdfd5d7dc809fc300579e00579e00579e00579e00579e00579e
+00579e00579ec1cad3dadadad9d9d9d9d9d9d9d9d9d9d9d99db1c82366a700579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e
+3670adb6c3d5e2e2e2e3e3e3e3e3e3e2e3e4a2b4d000579e00579e00579e00579e00579e
+00579e00579e00579e00579e5980b9dee1e6eaeaeaeaeaeaeaeaeae9e9e9e9e9e9e8e8e8
+e8e8e8a2b3d02869aa00579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e03589f0e5da21964a51c66a61c65a61c65a61c65a61b65a61b65a51b65a51b65a5
+1c65a5216aa75382b4afb9cbd2d2d2d0d0d0cdcdcdccccccd1d1d1dadadae3e3e3eeeeee
+f5f5f5f9f9f9fdfdfdfefefeffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffefdfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefefeffffffffffffffffffffffff
+fffffffefefefefefefefefefdfdfdfdfdfdfcfcfcfcfcfcfcfcfcfcfcfcfbfbfbfbfbfb
+fafafaf9f9f9f9f9f9f9f9f9f9f9f9f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f9f9f9
+e9ecf4c8d0e7a2b5d87497c73b7db5246bab0e5da200579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e1661a57f9fc8e3e6ecf0f0f0f1f1f1
+f0f0f0f0f0f0f0f0f0f0f0f0efefefefefefefefefefefefefefefefefefebebed94adcf
+1d64a700579e00579e00579e00579e00579e03599f467db5e7e8ebeeeeeeeeeeeeeeeeee
+f0f0f0f1f1f1f3f3f3f5f5f5f5f5f592a7d0075ba000579e00579e00579e00579e00579e
+00579e00579e00579e00579e1c62a7c3d2e5f7f7f8f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9
+f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f93076af00579e00579e00579e00579e00579e
+00579e00579e00579e00579e326caec0cde2f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f7f7f7
+f8f8f8f9f9f9f9f9f9fafafafbfbfbfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfbfbfbfbfbfb
+fafafaf8f8f8f6f6f6f5f5f5f3f3f3d2d8e64881b700579e00579e00579e00579e00579e
+00579e00579e00579e00579e296aaaa2b2cfe3e3e3e4e4e4e4e4e4e4e4e4e5e5e5e4e4e4
+e4e4e4e3e3e3e3e3e3e3e3e3e2e2e2e2e2e2e1e1e1e1e1e1e1e1e1e0e0e098a9ca1762a5
+00579e00579e00579e00579e00579e00579e00579e467cb2bdc5d6e0e0e0e0e0e0e0e0e0
+e1e1e1e0e1e1e0e0e0e0e0e0d6d8dd809fc400579e00579e00579e00579e00579e00579e
+00579e00579eb1bdcfdadadadadadad9d9d9d9d9d9d9d9d9c2c8d35886b603589f00579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e115fa3
+82a0c3d5d6dbdfdfdfdfdfdfdfdfdfdededf96abcb00579e00579e00579e00579e00579e
+00579e00579e00579e00579e5980b8dcdfe4e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e7e8e8
+e7e8e8a2b3d02869aa00579e00579e00579e00579e00579e00579e00579e00579e00579e
+085aa02f6fab7193bf9faecca9b5d0a8b4cfa8b4cea7b3cda6b2cca5b1cba5b1cba5b1ca
+a7b2cab9bfcecfd0d3d2d2d2cdcdcdcacacacacacacececed8d8d8e3e3e3edededf6f6f6
+fbfbfbfdfdfdfefefefefefeffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffefefefdfdfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefefeffffffffffffffffffffffff
+fffffffffffffefefefefefefefefefefefefdfdfdfcfcfcfcfcfcfcfcfcfcfcfcfbfbfb
+f9f9f9f9f9f9f9f9f9f8f8f8f8f8f8f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f6f6f6f6f6f6
+f7f7f7f8f8f8fafafafafbfbe7ebf4b1c1df7198c63274b00f5da300579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e276caba2b7d4ecedeeefefef
+eeeeeeeeeeeeefefefefefefeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeedededd2d8e45689bb
+01589f00579e00579e00579e00579e00579e0c5ea29aadd0ececececececedededeeeeee
+efefeff1f1f1f4f4f4f5f5f5f6f6f6d9deec1d65a800579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e7d9ecbeef0f5f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9
+f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f93076af00579e00579e00579e00579e00579e
+00579e00579e00579e00579e326caec0cde2f6f6f6f6f6f6f6f6f6f7f7f7f7f7f7f7f7f7
+f8f8f8f9f9f9f9f9f9fbfbfbfcfcfcfcfcfcfcfcfcfcfcfcfcfcfbfbfbfafafaf9fafaf9
+f8f8f7f6f6f5f4f5f4f3f3f3f1f1f1d0d7e44881b600579e00579e00579e00579e00579e
+00579e00579e00579e00579e296aaaa1b1cde2e2e2e3e3e3e3e3e3e4e4e4e4e4e4e3e3e3
+e3e3e3e2e2e2e2e2e2e2e2e2e1e1e1e1e1e0e0e0e0e0e0e0e0e0e0e0e0e097a8ca1762a5
+00579e00579e00579e00579e00579e00579e00579e467cb3c0c7d8e3e3e3e3e3e3e4e3e3
+e4e4e4e4e4e4e4e4e4e4e4e4dadce182a1c600579e00579e00579e00579e00579e00579e
+00579e00579eb0bdd0dbdbdbdadadad9d9d9d9d9d9d9d9d9d7d7d88ea7c41d64a500579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e05599f5281b4
+bdc4d2dadadadbdbdadbdbdadcdcdbdadadb8ca2c600579e00579e00579e00579e00579e
+00579e00579e00579e00579e5880b8d9dce1e5e5e5e6e6e6e5e6e6e6e6e6e6e6e6e6e7e6
+e6e7e7a2b2d02869aa00579e00579e00579e00579e00579e00579e00579e00579e00579e
+2c6caaa0b1ccdddedfe0e0e0dfdfdfdedfdfdddddddbdbdbdadadad9dad9d9d9d8d8d8d8
+d6d6d6d4d4d4d1d1d1cdcdcdc8c8c8c6c6c6cacacad4d4d4e2e2e2edededf6f6f6fbfbfb
+fdfdfdffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffefdfefdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefdfefefefefefefefefefeffffff
+fffffffefefefefefefefefefefefefefefefefefefdfdfdfcfcfcfcfcfcfcfcfcfbfbfb
+fafafaf9f9f9f9f9f9f8f8f8f7f7f7f7f7f7f7f7f7f6f6f6f6f6f6f6f6f6f5f5f5f5f5f5
+f6f6f6f6f6f6f7f7f7f9f9f9fafafafbfbfbf0f3f7bfcde46d95c51c66a800579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e04599f598bbbd5dbe5eeeeee
+ededededededededededededededededededececececececececece9e9eaa2b7d32669aa
+00579e00579e00579e00579e00579e00579e2d6dabd5d9e3ebebebebebebecececeeeeee
+efefeff2f2f2f4f4f4f5f5f5f6f6f6f7f7f7628ac000579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e2f6daed8e0edfafafafafafafafafafafafafafafa
+fafafafafafafafafafafafafafafafafafa3076b000579e00579e00579e00579e00579e
+00579e00579e00579e00579e326caec0cde2f6f6f6f6f6f6f6f6f6f6f6f6f7f7f7f7f7f7
+f8f8f8f9f9f9f9f9f9fbfbfbfcfcfcfcfcfbfbfbfbfbfbfafbfbfafafaf9f9f9f8f8f8f7
+f6f6f5f4f4f4f3f3f2f1f1f1efeeeeced5e34781b600579e00579e00579e00579e00579e
+00579e00579e00579e00579e2969a9a1b1cde2e2e2e3e3e3e4e4e4e4e4e4e4e4e4e3e3e3
+e3e3e3e2e2e2e2e2e2e2e2e2e1e1e1e0e0e0e0e0e0e0e0e0e0e0e0e0e0e098a8ca1762a4
+00579e00579e00579e00579e00579e00579e00579e477db4c4cbdce9e9e9eaeaeaeaeaea
+e9e9e9e9e9e9e9e9e9e9e9e9dfe1e684a3c800579e00579e00579e00579e00579e00579e
+00579e00579eb2bfd1dddddddcdcdcdbdbdbdadadad9d9d9d8d8d8bec4d14c80b202589f
+00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e266aa896acc6
+d6d6d8d9d9d9d8d8d8d8d9d8d9d9d8d6d6d7819ac100579e00579e00579e00579e00579e
+00579e00579e00579e00579e577eb6d6d8dde1e1e1e2e2e2e2e2e2e3e3e2e4e4e3e4e4e4
+e5e5e5a1b2cf2869aa00579e00579e00579e00579e00579e00579e00579e00579e00579e
+467eb3c4cad8dfdfdfdedededcdddddcdcdcdadbdbd9dad9d8d9d8d9d9d9d8d8d8d7d7d7
+d5d5d5d2d2d2cecececacacac6c6c6c7c7c7cfcfcfddddddeaeaeaf5f5f5fbfbfbfdfdfd
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffefefefdfdfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefdfefefefefefefefefefefefefe
+fefefefefefefefefefefefefefefefefefefefefefdfdfdfcfcfcfcfcfcfcfcfcfcfcfc
+fafafaf9f9f9f9f9f9f8f8f8f8f8f8f7f7f7f6f6f6f5f5f5f5f5f5f5f5f5f4f4f4f4f4f4
+f4f4f4f4f4f4f5f5f5f6f6f6f6f6f6f8f8f8f9f9f9fafafae0e6f081a3cd1d67a800579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579e2d6dacabbcd6ececec
+ececececececebebebebebebebebebebebebeaeaeaeaeaeaeaeaead7dbe36a94c00559a0
+00579e00579e00579e00579e00579e02589f7895c2e8e8e8eaeaeaeaeaeaebebebededed
+efefeff2f2f2f4f4f4f5f5f5f6f6f6f7f7f7b8c5df04599f00579e00579e00579e00579e
+00579e00579e00579e00579e00579e01589f9ab2d6f8f8fafbfbfbfbfbfbfbfbfbfbfbfb
+fbfbfbfbfbfbfbfbfbfbfbfbfbfbfbfbfbfb3076b000579e00579e00579e00579e00579e
+00579e00579e00579e00579e326caec0cde2f6f6f6f6f6f6f6f6f6f6f6f6f7f7f7f7f7f7
+f8f8f8f9f9f9fafafafbfbfbfbfbfbfafafafafaf9fbfbfaf9f9f8f9f9f8f7f7f6f5f5f4
+f3f3f2f2f2f1f0f0efeeeeedecececccd3e04780b500579e00579e00579e00579e00579e
+00579e00579e00579e00579e296aaaa2b1cee3e4e3e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4
+e3e3e3e2e2e2e2e2e2e2e2e2e1e1e1e1e1e1e1e1e1e1e1e1e2e2e2e2e2e299aacb1762a5
+00579e00579e00579e00579e00579e00579e00579e497fb6c9d0e1f0f0f0f1f1f1f0f0f0
+f0f0f0f0f0f0efefefeeeeeee3e6ea86a6cb00579e00579e00579e00579e00579e00579e
+00579e00579eb5c2d4e1e1e1dedededddddddcdcdcdadadad9d9d9d6d6d8819fc01862a4
+00579e00579e00579e00579e00579e00579e00579e00579e00579e105da26c90bac8ccd4
+d8d8d8d7d7d7d7d7d7d7d7d7d7d7d7d3d4d57692bd00579e00579e00579e00579e00579e
+00579e00579e00579e00579e577db5d3d5dadedededededddfdfdfdfdfdfe0e0e0e1e1e1
+e2e2e2a0b0ce2869a900579e00579e00579e00579e00579e00579e00579e00579e00579e
+477fb3c4cad6dddddddcdcdbdbdbdbdadadad8d9d9d8d8d8d7d7d7d6d6d6d5d5d5d4d4d4
+d1d1d1cecececbcbcbc9c9c9c9c9c9cececed9d9d9e6e6e6f2f2f2fafafafdfdfdfefefe
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffefefefefdfefdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefdfefefefefefefefefefefefefe
+fefefefefefefefefefefefefefefefefefefefefefdfdfdfcfcfcfcfcfcfcfcfcfcfcfc
+fbfbfbf9f9f9f9f9f9f8f8f8f8f8f8f7f7f7f6f6f6f5f5f5f4f4f4f4f4f4f3f3f3f3f3f3
+f3f3f3f2f2f2f3f3f3f3f3f3f4f4f4f5f5f5f7f7f7f7f7f7f7f7f7dfe4ee7197c5115fa4
+00579e00579e00579e00579e00579e00579e00579e00579e00579e0d5ca284a6c9e8e8e9
+eaeaeae9e9e9e9e9e9e8e8e8e9e9e9e9e9e9e8e8e8e8e8e8e7e8e8b0c1d6306ead00579e
+00579e00579e00579e00579e00579e03589fa6b3d1e7e7e7e8e8e8e9e9e9ebebebededed
+efefeff2f2f2f4f4f4f5f5f5f6f6f6f7f7f7ebeef31460a500579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e3e77b3f0f3f7fcfcfcfcfcfcfcfcfcfcfcfc
+fcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfc3077b000579e00579e00579e00579e00579e
+00579e00579e00579e00579e326caec0cde2f6f6f6f6f6f6f6f6f6f6f6f6f7f7f7f7f7f7
+f9f8f8f9f9f8fafaf9fafaf9fafaf9fafaf9fafaf9f9f9f8f7f7f6f6f6f5f4f4f3f3f3f2
+f1f1f0efefeeedececebebebe9e9e9cad1de467fb400579e00579e00579e00579e00579e
+00579e00579e00579e00579e296aaaa3b2cfe5e5e4e5e5e5e5e6e5e5e5e5e5e5e5e5e5e5
+e5e5e5e5e5e5e4e4e4e4e4e4e4e4e4e4e4e4e5e5e5e5e5e5e6e6e6e7e7e79badcf1763a5
+00579e00579e00579e00579e00579e00579e00579e4a80b8cdd5e6f5f5f5f6f6f6f5f5f5
+f5f5f5f5f5f5f4f4f4f2f2f2e7e9ee88a7cd00579e00579e00579e00579e00579e00579e
+00579e00579eb7c4d7e4e4e5e2e2e2dfdfdfdedededbdbdbdadadad9d9d9b9c1d03e79af
+01579e00579e00579e00579e00579e00579e00579e00579e01589e3b76adb0baccd7d6d6
+d7d7d7d6d6d6d6d6d6d6d6d6d6d6d6d2d3d56e8cbb00579e00579e00579e00579e00579e
+00579e00579e00579e00579e577db5d0d3d8dadadadadad9dbdbdbdcdcdcdddddddedede
+dfdfdf9eafcc2869a900579e00579e00579e00579e00579e00579e00579e00579e00579e
+467eb2c3c9d5dbdcdbdadadad8d8d8d6d6d6d2d2d2d0d0d0cecececdcdcdcdcdcdcecece
+cececececececfcfcfd0d0d0d5d5d5dcdcdce6e6e6f0f0f0f8f8f8fdfdfdfefefeffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffdfdfefdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefdfefefefefefefefefefefefefe
+fefefefefefefefefefefefefefefefefefefefefefdfdfdfdfdfdfcfcfcfcfcfcfcfcfc
+fbfbfbfafafaf9f9f9f9f9f9f8f8f8f7f7f7f5f5f5f5f5f5f4f4f4f3f3f3f2f2f2f2f2f2
+f1f1f1f0f0f0f1f1f1f1f1f1f1f1f1f2f2f2f4f4f4f4f4f4f4f4f4f4f4f4becae03574b0
+00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e6795bfdbdee4
+e8e8e8e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7d9dce27a9dc4085aa000579e
+00579e00579e00579e00579e00579e02589e7592c0dedfe2e6e6e6e7e7e7eaeaeaececec
+eeeeeef1f1f1f4f4f4f5f5f5f6f6f6f7f7f7c6d0e50b5ca200579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e085ba1b7c6e2fdfdfdfdfdfdfdfdfdfdfdfd
+fdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfcfcfc3077b000579e00579e00579e00579e00579e
+00579e00579e00579e00579e326caec1cde2f7f7f7f6f6f5f7f6f5f5f5f5f6f6f6f7f7f6
+f9f8f7f9f9f8fafaf9fafaf9fafaf9fafaf9f9f9f8f8f7f6f5f6f5f4f4f3f3f3f2f1f1f1
+efeeeeedecebeaeae9e8e8e8e7e7e7c9d0dc467fb300579e00579e00579e00579e00579e
+00579e00579e00579e00579e296aaaa4b4d0e8e7e7e8e8e7e8e8e8e8e8e8e8e8e8e8e8e8
+e8e8e8e8e8e8e8e8e8e8e8e8e9e9e9eaeaeaebebebecececedededefefef9fb1d31863a6
+00579e00579e00579e00579e00579e00579e00579e4b81b9d0d8eaf9f9f9f9f9f9f8f8f8
+f8f8f8f7f7f7f6f6f6f5f5f5e9ebf089a8cf00579e00579e00579e00579e00579e00579e
+00579e00579eb6c4d8e7e7e7e5e5e5e1e1e1dfdfdfdddddddbdbdbdadadad4d5d77898be
+1460a300579e00579e00579e00579e00579e00579e00579e1a64a5829ec1d1d3d6d7d8d7
+d7d7d7d7d7d6d6d7d6d5d6d5d5d5d5d1d2d56484b800579e00579e00579e00579e00579e
+00579e00579e00579e00579e567db4cdd0d5d8d7d7d8d7d7d8d8d8d9d9d9dadadadbdbdb
+dddede9dadca2768a900579e00579e00579e00579e00579e00579e00579e00579e00579e
+467eb2c0c6d2d6d6d6d2d2d2ccccccc9c9c9c6c6c6c6c6c6c8c8c8cccccccfcfcfd4d4d4
+d8d8d8dbdbdbdededee2e2e2e6e6e6ecececf2f2f2f8f8f8fcfcfcfefefeffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffefdfefdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefdfefefefefefefefefefefefefe
+fefefefefefefefefefefefefefefefefefefefefefefefefdfdfdfdfdfdfcfcfcfcfcfc
+fcfcfcfafafafafafaf9f9f9f8f8f8f7f7f7f5f5f5f5f5f5f4f4f4f3f3f3f1f1f1f0f0f0
+f0f0f0efefefefefefefefefefefeff0f0f0f0f0f0f1f1f1f1f1f1f1f1f1e6e8ec548abb
+03589f00579e00579e00579e00579e00579e00579e00579e00579e00579e5c8cbbd1d6e0
+e6e6e6e6e6e6e6e6e6e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5bec8d84075b000579e00579e
+00579e00579e00579e00579e00579e00579e1a63a55b8ab996a9cba8b6d1b1bcd5b3bed7
+b4c0dab6c1dcb7c3ddb8c4dea8b9d98ba4ce3676b100579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e5d86bffefefefefefefefefefefefe
+fefefefefefefdfdfdfcfcfcfcfcfcfcfcfc3076b000579e00579e00579e00579e00579e
+00579e00579e00579e00579e326caec0cde1f6f6f5f7f7f6f7f7f6f7f7f6f8f8f7f9f9f8
+fafaf9fbfbfafafaf9fbfaf9fbfaf9faf9f8f8f8f7f6f6f6f5f5f5f4f4f4f1f1f1f0f0f0
+eeeeededececebebeae8e8e8e8e8e8cad0dd467fb400579e00579e00579e00579e00579e
+00579e00579e00579e00579e2a6baba7b7d4ecececededededededededededededededed
+ededededededeeeeeeefefeff1f1f1f2f2f2f3f3f3f3f3f3f4f4f4f6f6f6a2b4d71864a6
+00579e00579e00579e00579e00579e00579e00579e4b82b9d2daecfbfbfbfbfbfbfafafa
+f9f9f9f9f9f9f8f8f8f6f6f6eaecf189a9cf00579e00579e00579e00579e00579e00579e
+00579e00579ea7b9d5e7e8e8e6e6e6e2e2e2e0e0e0dedededbdbdbd9d9d9d9d9d9b4bdce
+3172ab00579e00579e00579e00579e00579e00579e085aa05282b4c6c9d3d9d8d8d9d9d9
+d8d8d8d8d8d8d8d7d7d8d8d7d7d7d7d1d2d45b80b500579e00579e00579e00579e00579e
+00579e00579e00579e00579e557cb3c9cdd1d5d5d4d7d6d6d8d8d8d9d9d9dadbdbdcdcdc
+dedede9eaecb2769a900579e00579e00579e00579e00579e00579e00579e00579e00579e
+447cafb8becac9c9c9c3c3c3bfbfbfc0c0c0c6c6c6cdcdcdd6d6d6dddddde3e3e3e8e8e8
+ecececefefeff1f1f1f3f3f3f6f6f6f9f9f9fbfbfbfdfdfdfefefeffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fefefefdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfdfdfefefefefefefefefefefefe
+fefefefefefefefefefefefefefefefefefefefefefefefefdfdfdfdfdfdfcfcfcfcfcfc
+fcfcfcfbfbfbfafafaf9f9f9f9f9f9f7f7f7f6f6f6f5f5f5f4f4f4f3f3f3f1f1f1f0f0f0
+efefefeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeededed7097c2
+0d5ca200579e00579e00579e00579e00579e00579e00579e00579e00579e5a8abacfd4de
+e5e5e5e4e4e4e4e4e4e3e3e3e3e3e3e2e2e2e2e2e2dbdde08da9c90b5ba100579e00579e
+00579e00579e00579e00579e00579e00579e00579e085ba01a64a61f67a72269a8226aa9
+236aa9236aaa236aaa236baa1e67a81560a501579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e1360a4d7deeffefefefefefefefefe
+fdfdfdfcfcfcfbfbfbfafafaf8f8f8f7f7f72f76af00579e00579e00579e00579e00579e
+00579e00579e00579e00579e326caec0cde1f6f6f5f7f7f6f8f8f7fafaf9fbfbfbfcfbfb
+fcfbfbfdfcfbfcfbfbfbfbfafafaf9f9f8f8f8f7f7f6f6f6f4f4f4f3f3f3f2f1f1f1f0f0
+efefefeeedededecececebebebeaead0d5e14982b600579e00579e00579e00579e00579e
+00579e00579e00579e00579e2a6baca9bad7f1f1f1f1f1f1f2f2f2f2f2f2f3f3f3f3f3f3
+f3f3f3f4f4f4f5f5f5f6f6f6f7f7f7f7f7f7f8f8f8f9f9f9f9f9f9f9f9f9a4b5d91864a6
+00579e00579e00579e00579e00579e00579e00579e5085bbd6ddecfbfbfbfbfbfbfbfbfb
+fafafaf9f9f9f8f8f8f7f7f7eaecf189a9cf00579e00579e00579e00579e00579e00579e
+00579e00579ea0b4d2e5e5e6e3e3e3e1e1e1dfdfdfdddddddbdbdbd9d9d9d9d9d9d4d5d8
+7090bc105ea200579e00579e00579e00579e03589f3170abaab7cbd9d9d9dbdadadadada
+dadadadadadadad9d9d9dad9d9dad9d3d4d75279b400579e00579e00579e00579e00579e
+00579e00579e00579e00579e567cb3cccfd4d7d8d8dbdbdadededddfdfdee1e1e0e1e1e1
+e2e3e3a0b0ce2869a900579e00579e00579e00579e00579e00579e00579e00579e00579e
+4178acadb3bfbbbbbbbababac1c1c1cbcbcbd8d8d8e3e3e3ecececf2f2f2f6f6f6f9f9f9
+fafafafbfbfbfbfbfbfcfcfcfdfdfdfdfdfdfefefefefefeffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fefefefdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfd
+fdfdfdfefefefefefefefefefefefefefefefefefefefefefdfdfdfdfdfdfcfcfcfcfcfc
+fcfcfcfbfbfbfbfbfbf9f9f9f9f9f9f8f8f8f6f6f6f5f5f5f4f4f4f3f3f3f1f1f1f0f0f0
+efefefeeeeeeededededededececececececececececececebebebebebebeaeaea7899c3
+115ea300579e00579e00579e00579e00579e00579e00579e00579e00579e5b8bbaced3dc
+e2e2e2e2e2e2e1e1e1e1e1e1e1e1e1e0e0e0e0e0e0c7cdd94e7cb500579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e03589f839dcefefefefefefefcfcfc
+fbfbfbf9f9f9f7f7f7f5f5f5f2f2f2f0f0f02e74ae00579e00579e00579e00579e00579e
+00579e00579e00579e00579e326caec0cde1f6f6f6f8f8f7fafaf9fbfbfafbfbfafcfcfb
+fcfcfcfbfbfbfbfbfafbfbfafafaf9f9f9f8f7f7f6f7f7f6f6f6f5f4f4f3f4f4f3f3f3f2
+f2f2f1f1f1f0f1f1f0f0f0efefefefe3e5eb568cbb00579e00579e00579e00579e00579e
+00579e00579e00579e00579e2a6cacacbddaf6f6f6f6f6f6f7f7f7f7f7f7f8f8f7f9f9f8
+f9f9f9fafafafafafafbfbfbfbfbfbfbfbfbfafafafafafaf9f9f9f8f8f8a3b4d81864a6
+00579e00579e00579e00579e00579e00579e00579e5d8fbfe2e6f0f9f9f9fafafafafafa
+f9f9f9f9f9f9f8f8f8f7f7f7eaecf189a9cf00579e00579e00579e00579e00579e00579e
+00579e00579e9eb1cfe2e2e3e0e0e0dfdfdfdcdcdcdbdbdbd9d9d9d9d9d9d9d9d9d9d9d9
+bcc2d14078af05599f0b5ca14270af6587b988a0c3b7c2d0d6d7d9dadadadadadadbdbdb
+dbdbdbdcdcdcdcdcdcdcdcdcdcdcdcd5d7da4973b100579e00579e00579e00579e00579e
+00579e00579e00579e00579e577db5d4d6dbe0e1e0e2e1e0e2e2e2e2e3e2e3e3e2e2e2e2
+e2e2e29fafcc2768a900579e00579e00579e00579e00579e00579e00579e00579e00579e
+3e75a8a5abb6b9b9b9c4c4c4d3d3d3e1e1e1edededf4f4f4f9f9f9fcfcfcfdfdfdfefefe
+fefefeffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfd
+fdfdfdfdfdfdfdfdfdfefefefefefefefefefefefefefefefefefefdfdfdfdfdfdd2daed
+869fcd7c97c9bac5e2fafafaf9f9f9f8f8f8f7f7f7f6f6f6f4f4f4f3f3f3f1f1f1f0f0f0
+eeeeeeededededededeaeaeaeaeaeaeaeaeae9e9e9e9e9e9e8e8e8e8e8e8e3e4e6568bb8
+03599f00579e00579e00579e00579e00579e00579e00579e00579e00579e6b97bedadbdf
+e0e0e0e0e0e0dfdfdfe0e0e0dfdfdfdfdfdfdcdcde9fb4cc075ba100579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e01589f115ea4
+2365a82365a82366a91c62a70559a000579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e1f6aaaeaedf6fbfbfbf8f8f8
+f6f6f6f3f3f3f0f0f0edededeaeaeae8e8e82c73ac00579e00579e00579e00579e00579e
+00579e00579e00579e00579e326caec0cde1f7f8f7fafaf9fbfbfafbfbfafbfbfafcfcfb
+fcfcfbfdfcfbfcfbfbfcfbfafbfbfafbfbfafbfbfbfafafafafafaf8f8f8f7f7f7f7f7f7
+f6f7f7f7f6f6f6f5f4f5f5f4f5f5f4f5f5f584a4cb135fa400579e00579e00579e00579e
+00579e00579e00579e00579e2467aaa5b9d9fafbfafbfbfafbfcfbfafaf9fbfbfbfcfbfa
+fcfcfcfcfcfcfcfcfcfbfbfbf9f9f9f7f7f7f6f6f6f4f4f4f3f3f3f1f1f18ca3cc1360a4
+00579e00579e00579e00579e00579e00579e095ba17ea6cbf6f6f7f9f9f9f9f9f9f9f9f9
+f9f9f9f9f9f9f8f8f8f7f7f7eaecf189a9cf00579e00579e00579e00579e00579e00579e
+00579e00579e9baecbdcdcdddcdcdcdbdad9d9d9d9d9d8d8d8d8d8d8d9d9d9d9d9d9d9d9
+d8d8d9ccd1d5b6c1d0c8ced4cfd2d7d2d4d7d6d7dad9d9dadbdbdbdcdcdcdbdbdbdcdcdc
+dddddddddddddedededddddddfdfdfd7d9dc3f70af00579e00579e00579e00579e00579e
+00579e00579e00579e00579e587fb7d7dbdfe2e2e2e2e2e2e2e2e2e0e0e0e0e0e0dfdfdf
+dedede9dadca2768a900579e00579e00579e00579e00579e00579e00579e00579e00579e
+3e75a7aaafbac9c9c9d9d9d9e8e8e8f2f2f2f9f9f9fcfcfcffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffffffefefefefefdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefdfefdfdfdfdfdfdfcfcfcfcfcfc
+fcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfdfdfdfdfdfdfdfdfdf8f9fbb3c3e0226bab
+00579e00579e0559a0537fbabccbe3eff1f5f4f5f6f6f6f6f4f4f4f3f3f3f1f1f1efefef
+eeeeeeedededebebebeaeaeae9e9e9e9e9e9e8e8e8e7e7e7e6e6e6e3e4e5a9b8d12c6eab
+00579e00579e00579e00579e00579e00579e00579e00579e00579e2566a89baecbe0e0e0
+e0e0e0dfdfdfdfdfdfdedededdddddddddddccd0d85780b500579e00579e00579e00579e
+00579e00579e00579e00579e02589e0a5ca11d66a66a87ba97a6c6bbc1d1d5d6dae2e2e2
+e8e8e8edededf2f2f2f5f5f5f5f5f6d6dceca9b8db6589c11162a50559a000579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e0c5da295abd4f6f6f6f3f3f3
+efefefececece8e8e8e6e6e6e2e2e2e0e0e02b71ab00579e00579e00579e00579e00579e
+00579e00579e00579e00579e2c69abb8c7ddf4f4f4f7f7f7f9f9f8fbfbfafbfbfafcfcfc
+fcfcfcfefdfdfdfdfdfdfdfcfdfdfcfdfdfcfdfcfbfcfbfafbfbfafbfbfafafaf9fbfbfa
+fbfbfafbfbfafafaf9fafaf9fbfbfafbfbfabfcce43374b001579e00579e00579e00579e
+00579e00579e00579e00579e03589f6898c4eceef4fbfbfafbfbfafbfbfbfbfcfcfafafa
+f8f8f8f7f7f7f6f6f6f4f4f4f1f2f2eff0f0eeeeeeecebebe8e8e8d9dbe2417bb303589f
+00579e00579e00579e00579e00579e00579e3572b0b9c5dff6f6f6f8f8f8f9f9f9f9f9f9
+f8f8f8f8f8f8f7f7f7f6f6f6ebedf289a9cf00579e00579e00579e00579e00579e00579e
+00579e00579e98acc8d7d8d8d9d8d7d8d9d9d8d8d8d8d7d6d8d8d7d9d8d8d9d8d7d9d8d7
+dad9d9d9d9d9d9d9d9d9d9d9dbdbdbdadadadbdbdbdcdcdcdddddddddddddedededddddd
+dddddddededededededfdfdfdfdfdfd6d9dd2164a700579e00579e00579e00579e00579e
+00579e00579e00579e00579e587fb7d6d9dde0e0e0e0e0e0dfdfdfdcdcdcd9d9d9d8d8d8
+d7d7d799a9c62768a800579e00579e00579e00579e00579e00579e00579e00579e00579e
+4179acb8becaddddddeaeaeaf5f5f5fbfbfbfefefeffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffffefefefdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefdfefefefefefefefefefefdfdfd
+fcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcf3f5f9a6bbdb246bab00579e
+00579e00579e00579e00579e115ea3638ac0b4c7dfe0e6eeeceef1f2f2f2f1f1f1efefef
+edededebebebeaeaeae9e9e9e8e8e8e7e7e7e5e5e5e3e4e4dcdde1b4c1d5457db404599f
+00579e00579e00579e00579e00579e00579e00579e00579e05599f5384b6c7ccd9e0e0e0
+dfdfdfdfdfdfdedededddddddddddddbdbdcaebdcf0c5ca100579e00579e00579e00579e
+00579e00579e00579e0b5ca12e6eaa90a4c5ced0d5d7d7d7d6d6d6d8d8d8dbdbdbe0e0e0
+e5e5e5ebebebf1f1f1f5f5f5f9f9f9fbfbfbfcfcfcfbfcfdcdd7ec5983bd0a5ca200579e
+00579e00579e00579e00579e00579e00579e00579e00579e02589f3a77b1e7e9edededed
+e9e9e9e6e6e6e2e2e2dfdfdfdddddddbdbdb2a70aa00579e00579e00579e00579e00579e
+00579e00579e00579e00579e02589f719ac4d4dbe6eff0f2f7f7f6f7f7f7f9f9f9fafafa
+fbfbfafbfbfafcfcfbfcfcfbfcfcfbfbfbfbfbfbfbfbfbfbfbfbfbfcfcfbfcfcfbfbfbfa
+fafafafbfbfbfafafafbfbfbfcfcfcfcfbfbf5f6f9749dc90e5ea300579e00579e00579e
+00579e00579e00579e00579e00579e286aaca3b9d8f0f2f5f6f6f6f6f6f6f4f4f4f2f2f1
+f1f1f1eeefeeecedecebebebe8e8e8e5e5e5e3e3e3e0e0e0d5d7dc809ac21761a400579e
+00579e00579e00579e00579e00579e0d5ea2739dc6edeef2f6f6f6f7f7f7f8f8f8f8f8f8
+f8f8f8f8f8f8f7f7f7f6f6f6eaecf189a9cf00579e00579e00579e00579e00579e00579e
+00579e00579e97aac7d8d7d7d8d8d8d9d9d8d8d8d8d9d8d8d8d8d8d8d8d8d9d9d8d9d9d9
+d9d9d9dadadadadadadbdbdbdbdbdbdcdcdcdbdbdbdcdcdcdddddddedededededededede
+dedededfdfdfe0e0e0dfdfdfe0e0e0d8dbde1d62a600579e00579e00579e00579e00579e
+00579e00579e00579e00579e587fb7d5d8dddedededbdbdbd8d8d8d5d5d5d2d2d2d0d0d0
+cfcfcf94a4c02667a700579e00579e00579e00579e00579e00579e00579e00579e00579e
+3472acabb9d0e5e7e9f5f5f5fbfbfbfefefeffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffefefefdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefdfefefefefefefefdfdfdfdfdfd
+fdfdfdfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcaec2de296ead00579e00579e
+00579e00579e00579e00579e00579e00579e105ea34a7db791add0c0cfe0d4dbe7dde1e9
+e5e6eaeaeaebe9e9e9e7e7e7e2e2e5dadce2ced3ddbac6d688a3c6316fad01589f00579e
+00579e00579e00579e00579e00579e00579e00579e03589f326eaca4b3cee0e0e0e0e0e0
+dfdfdfdfdfdfdedededdddddddddddd4d6d96589b900579e00579e00579e00579e00579e
+00579e00579e1360a36689b9c4c9d3d8d9d9d7d7d7d5d5d5d4d4d4d4d4d4d8d8d8dddddd
+e3e3e3ebebebf1f1f1f5f5f5f9f9f9fcfcfcfcfcfcfefefefefefedfe6f2608bc0085aa1
+00579e00579e00579e00579e00579e00579e00579e00579e00579e1864a6a7b6d4e8e8e8
+e5e5e5e1e1e1dedededbdbdbdadadad8d9d92970a900579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e075aa15583b9a0b8d3c1d0e0c6d4e3c8d6e4c9d8e6
+cad8e6cad9e8cbd9e8cbd9e8cbd9e8ccdae8ccdae8ccdae8ccdae8cedae8d7dfece5e9f1
+f7f7f9fafafafafaf9fafaf9fafaf9fafaf9fafaf9d4dbeb4881b8065aa000579e00579e
+00579e00579e00579e00579e00579e00579e316fae9eb4d3dce0e8eaebebebebebe8e9e9
+e7e7e7e4e4e4e2e2e2dfdfdfdddddddadadad5d6d8c4c9d37f9ac01d64a600579e00579e
+00579e00579e00579e00579e075ba04e84b9d0d8e8f6f6f6f6f6f6f7f7f7f8f8f8f7f7f7
+f7f7f7f7f7f7f7f7f7f6f6f6eaecf189a9cf00579e00579e00579e00579e00579e00579e
+00579e00579e8da1c3d7d7d7d7d8d7d9d8d8d9d8d7d8d8d8d8d8d8d9d8d8d9d9d9d9d9d9
+d9d9d9dadadadbdbdbdcdcdcdcdcdcdbdbdbdddddddddddddedededfdfdfdfdfdfdfdfdf
+dfdfdfe0e0e0e0e0e0e0e0e0e0e0e0d6dbde00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e587eb6d3d6dbdadadad5d5d5d0d0d0ccccccc8c8c8c6c6c6
+c6c6c690a0bc2667a600579e00579e00579e00579e00579e00579e00579e00579e00579e
+0459a0417ab4a0b8d6cad8e8d6e0eed8e1efd9e1f0d9e1f0d9e1f0d9e1f0d9e1f0d9e1f0
+d9e1f0d9e1f0d9e1f0d9e1f0d9e1f0d9e1f0dce4f1f0f3f9fefeffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefefefffffffefefdfefefdfcfcfc
+fcfcfbfbfbfafbfbfafcfcfcfcfcfcfbfbfbfafafafafafa81a8ce0e5ea300579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579e2064a8507eb87197c4
+8dabcca2bcd3a3bcd2a1bbd192aecb7c9dc45d86ba2e6bab03599f00579e00579e00579e
+00579e00579e00579e00579e00579e00579e04589f286aa98aa4c5d8d9dddfdfdfdfdfdf
+dfdfdfdfdfdfdedededddddddcddddbdc6d31e62a600579e00579e00579e00579e00579e
+00579e125fa37192bdcaced5d9d9d9d9d9d9d7d7d7d4d4d4d2d2d2d2d2d2d4d4d4d9d9d9
+e0e0e0e8e8e8efefeff5f5f5fafafafcfcfcfdfdfdfefefefefefefefeffcbd9eb3c77b4
+00579e00579e00579e00579e00579e00579e00579e00579e00579e095aa15d86badcdde1
+e0e0e0dddddddbdbdbd9d9d9d9d9d9d8d8d82970a900579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e155fa41b62a61b62a61b62a6
+1b62a61b62a61b62a61b62a71b62a71b62a71b62a71b62a71b62a72465a94174b46f95c6
+b9cbe1eff0f3f7f7f6f6f6f5f6f6f5f6f5f4f5f5f4f5f5f4bbc6de3d78b204599f00579e
+00579e00579e00579e00579e00579e00579e00579e1f63a76b92bfaebdd4c7cedad3d6dc
+dbdbdcd9dadad8d8d8d3d4d5c9cbd3b9c1ce99adc65a83b5165fa400579e00579e00579e
+00579e00579e00579e075aa0457db5bcc9e0f6f6f6f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7
+f7f7f7f7f7f7f7f7f7f6f6f6eaecf189a9cf00579e00579e00579e00579e00579e00579e
+00579e00579e849bc2d6d7d7d8d8d8d8d8d7d8d9d9d8d8d8d9d8d8d9d9d9d9dadadadada
+dbdbdbdbdbdbdbdbdbdddddddddddddddddddddddddedededfdfdfdfdfdfdfdfdfe0e0e0
+e0e0e0e1e1e1e2e2e2e2e2e2e2e2e2d3d8de00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e577db5ced1d6d2d2d2cccccbc5c5c5c1c1c1c0c0c0c2c2c2
+c6c6c692a1be2667a700579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e00579e0559a01f64a8376eb03c70b23c70b23c70b23c70b23c70b23c70b23c70b2
+3c70b23c70b23c70b23c70b23c70b23c70b24576b687a7d1ecf0f8ffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffefefefdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefefefffffffffffffffffffefefd
+fefefdfdfdfcfcfcfbfcfcfbfbfcfcfcfcfbfbfbfbfbfbfbccd6e96693c3266aab0659a0
+00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e065aa03772ad8ca5c5d4d6d9dddddddddddddddddd
+dddddddddddddddddddddddddbdcdc7a95bf00579e00579e00579e00579e00579e00579e
+05599f5b86b7c2c8d3d9d9d9d8d8d8d8d8d8d7d7d7d4d4d4d2d2d2d1d1d1d1d1d1d5d5d5
+dbdbdbe3e3e3ecececf4f4f4fafafafcfcfcfdfdfdfefefefefefefffffff3f5fa91b0d5
+115ea400579e00579e00579e00579e00579e00579e00579e00579e00579e256ba9b1bcd2
+dddddddbdbdbd9d9d9d8d8d8d8d8d8d8d8d82970a900579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e02589f
+2e6eadb5c2daeeeeedededececececececececebebebebeaebeaeab2bed6447cb3075aa0
+00579e00579e00579e00579e00579e00579e00579e00579e00579e2766a85280b57096bc
+84a5c08da9c28ba7c17e9fbd698fb94979b11b61a500579e00579e00579e00579e00579e
+00579e00579e0b5da24f84b9bdc9e0f5f5f5f6f6f6f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7
+f7f7f7f7f7f7f7f7f7f6f6f6eaecf189a9cf00579e00579e00579e00579e00579e00579e
+00579e00579e849bc1d6d7d7d9d9d9d9d8d8d8d9d8d9d9d8d9d9d9d9d9d9dadadadbdbdb
+dbdbdbdcdcdcdcdcdcdcdcdcdddddddedededfdfdfdfdfdfe0e0e0e0e0e0e1e1e1e1e1e1
+e2e2e2e2e2e2e3e3e3e4e4e4e4e4e4c5cddb00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e567db4c5c8cdc4c4c4bcbcbcbabababcbcbcc2c2c2cbcbcb
+d4d4d49aabc82769a900579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e075aa1aabddefefeffffffffffffff
+fffffffffffffffffffffffffffffffffffffefefefdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefefeffffffffffffffffffffffff
+fffffffefefefefefefefefefcfcfcfcfcfcfcfcfcfcfcfcfbfbfbdfe4f0a8bcda6593c3
+3471b00459a000579e00579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e1f64a65786b6a7b4ccd6d7d9dadadadadadadadadadadada
+dbdbdbdbdbdbdbdbdbdbdbdbcacfd72b68a900579e00579e00579e00579e00579e00579e
+2c6ca9a3b5cad7d7d8d9d9d9d8d8d8d8d8d8d7d7d7d6d6d6d3d3d3d1d1d1d0d0d0d2d2d2
+d7d7d7e0e0e0e9e9e9f2f2f2f9f9f9fcfcfcfdfdfdfefefefffffffffffffefefecfd9eb
+487db700579e00579e00579e00579e00579e00579e00579e00579e00579e0f5ea26e93bc
+d6d7d9d9d9d9d8d8d8d6d6d6d6d6d6d7d7d73774ac02589f00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e
+0d5ca26f91bfe5e5e5e5e5e4e5e4e4e4e4e4e4e4e4e3e4e3e3e3e2e2e2e2bbc3d5608db9
+2165a700579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e0b5ba1095aa000579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e2969ab729cc6ced5e6f5f5f5f6f6f6f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f6f6f6
+f6f6f6f7f7f7f7f7f7f6f6f6eaecf189a9cf00579e00579e00579e00579e00579e00579e
+00579e00579e849bc1d7d7d7d8d8d8d9d9d9d9d8d8d9d9d8dadadadadbdbdadadadbdbdb
+dbdbdbdcdcdcdddddddddddddedededfdfdfdfdfdfe0e0e0e1e1e1e1e1e1e1e1e1e2e2e2
+e4e4e4e4e4e4e4e4e4e5e5e5e5e5e5bdc7d900579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e5378aeb0b2b7b3b3b3b4b4b4bebebecacacad6d6d6e1e1e1
+eaeaeaa6b7d5296aab00579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e4a7db9fafbfdffffffffffff
+fffffffffffffffffffffffffffffffefefefdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefefeffffffffffffffffffffffff
+fffffffffffffffffffffffffefefefefefefefefefdfdfdfdfdfdfcfcfcfcfcfce7eaf4
+bac8e27aa4cb457cb7145fa500579e00579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e00579e2565a75080b292a8c5c5cad4dadadadadadad9d9d9d8d8d8d8d8d8d9d9d9
+d9d9d9d8d8d8d9d9d9d9d9d991a3c500579e00579e00579e00579e00579e00579e095ba0
+6e93bbcbced5d9d9d9d9d9d9d8d8d8d8d8d8d7d7d7d6d6d6d4d4d4d2d2d2d0d0d0d1d1d1
+d4d4d4dcdcdce6e6e6eeeeeef6f6f6fbfbfbfdfdfdfefefefefefefefefefefefef1f3f8
+8aabd1125fa400579e00579e00579e00579e00579e00579e00579e00579e01579e3675ad
+bac1d0d7d7d7d7d7d7d6d6d6d6d6d6d6d6d66e8fba0a5ca100579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e
+1260a386a0c3dfdfdfdfdfdedededddddddddcdcdcdbdcdcdbdbdbdadadad8d8d8cbcdd4
+8fa4c2487bb01760a300579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e2466a9
+598bbdaabcd9e8eaf0f5f5f5f6f6f6f7f7f7f7f7f7f7f7f7f6f6f6f6f6f6f6f6f6f7f7f7
+f7f7f7f8f8f8f8f8f8f7f7f7eaecf189a9cf00579e00579e00579e00579e00579e00579e
+00579e00579e849bc2d6d7d7d9d8d8d9d9d9d9d9d8d9d8d8dadadadbdbdbdbdbdbdbdbdb
+dcdcdcdddddddededededededfdfdfe0e0e0e0e0e0e0e0e0e1e1e1e2e2e2e3e3e3e3e3e3
+e4e4e4e5e5e5e5e5e5e6e6e6e7e7e7b0bdd600579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e5075a8a9acb0bbbbbbc9c9c9d8d8d8e4e4e4eeeeeef5f5f5
+f8f8f8b4c3df2f6fae00579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e0b5ca2d0d9edffffffffffff
+fffffffffffffffffffffffffefefefdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefefeffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffefefefefefefdfdfdfdfdfdfdfdfd
+fbfbfbf1f3f7cbd5e8a0bbd96c97c63b74b30f5da300579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e01589f1e62a6
+4577b06b93bb9aacc6bcc2ced6d6d6d8d8d8d9d9d9d9d9d9d9d9d9d9d9d9d8d8d8d9d9d9
+d8d8d8d8d8d8d8d8d8d8d8d84d79b200579e00579e00579e00579e01579e1861a45984b6
+b2bfced8d8d9d9d9d9d9d9d9d8d8d8d8d8d8d7d7d7d7d7d7d6d6d6d3d3d3d2d2d2d1d1d1
+d3d3d3d8d8d8e0e0e0e9e9e9f2f2f2f8f8f8fcfcfcfdfdfdfefefefefefefdfdfdfcfcfc
+d4ddeb7196c52066a903589f00579e00579e00579e00579e00579e00579e00579e286ba9
+a3b0c9d7d7d7d6d6d6d6d6d6d6d6d6d6d6d6bac1ce5e88b62565a700579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e03599f366eac
+7498bec5cbd4dadadad9d9d9d8d8d8d7d8d7d7d7d7d7d7d7d7d7d6d6d6d5d5d5d4d5d5d5
+d2d3d4b8bfce8ca5c35986b62969a904599f00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e095ba1326fae6894c2a8bcd8
+d7ddeaf4f4f5f5f5f5f6f6f6f6f6f6f6f6f6f6f6f6f7f7f7f7f7f7f7f7f7f8f8f8f8f8f8
+f9f9f9f9f9f9f9f9f9f7f7f7eceef197b2d20659a000579e00579e00579e00579e00579e
+00579e00579e8ea3c4d6d8d8d9d8d8d9d9d9dadadadadad9dadadadcdcdcdcdcdcdcdcdc
+dddddddedededfdfdfdfdfdfe0e0e0e0e0e0e0e0e0e1e1e1e1e1e1e1e1e1dedededcdcdc
+dededee1e1e1e4e4e4e7e7e7e9e9e9bac5d90a5ba100579e00579e00579e00579e00579e
+00579e00579e00579e04589f6c89b3c5c6cadadadae7e7e7f1f1f1f7f7f7fafafafdfdfd
+fefefee0e6f2769bca1d65a803589f00579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579ea7b9ddffffffffffff
+fffffffffffffffffffefefefdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefefeffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffefefefefefefefefefefefe
+fcfcfcfcfcfcfcfcfcf9f9fbe5e9f3c9d6e8a7c1dc7ca1cb5482bb326dae0d5ca200579e
+00579e00579e00579e00579e00579e01589e0f5da22e6aaa4979b26289b87f9fc09eb1c8
+b6bfcfcdcfd6d6d7d7d5d5d5d4d4d4d5d5d5d7d7d7d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9
+d8d8d8d8d8d8d8d8d8d7d7d79fb2c780a0c07f9fbf7f9fbf7f9fbf84a3c19aafc6bdc4d0
+d4d4d6d7d7d7d7d7d7d7d7d7d7d7d7d8d8d8d8d8d8d7d7d7d7d7d7d6d6d6d4d4d4d3d3d3
+d3d3d3d5d5d5dbdbdbe3e3e3ecececf4f4f4f9f9f9fcfcfcfdfdfdfdfdfdfcfcfcfafafa
+f4f5f6dadfeab1c5da94b2cf89a9c986a6c785a5c583a4c382a2c381a1c182a2c197aec6
+c5cad2d7d7d7d6d6d6d5d5d5d6d6d6d6d6d6d5d5d5c0c5d0a3b3c888a6c17e9ebe7e9dbe
+7c9cbc7c9bbc7b9bbb7c9cbc7e9ebe80a0c184a4c487a8c78aaaca8caccc8eaecf8fafd0
+8fb0d18fb0d18fafd08eaecf8dadce8caccd8babcc8aa9ca89a9c988a8c995b2ccb7c2d5
+d3d6dddfdfdfdddedddddddcdcdcdbdcdcdcdcdbdbdcdcdbdcdcdbdcdcdcdcdcdcdcdcdc
+dcdcdcdddddddadadcc8cdd8acbcd187a6c7628bbb4375b21f64a70559a000579e00579e
+00579e00579e00579e00579e085aa12868ab4c7cb86f96c499b6d4bfcee1dee3ecf2f3f4
+f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f7f7f7f7f7f7f8f8f8f8f8f8f9f9f9f9f9f9fafafa
+fafafaf8f8f8f7f7f7f5f5f5efeff0d1d9e392afcc87a7c786a5c584a4c482a2c281a1c1
+81a1c184a3c1c1c7d1d8d9d8d9d8d8d9d9d9dadbdadadadadadadadcdcdcdddddddedede
+dedededfdfdfe0e0e0e0e0e0e1e1e1e1e1e1e1e1e1e1e1e1dfdfdfdadadad5d5d5d4d4d4
+dadadae2e2e2e8e8e8eaeaeaebebebdfe1e799b4d086a6c77e9ebe7191af6787a56383a1
+6686a46d8dab7696b688a5c2c3cad7e7e7e8f2f2f2f8f8f8fbfbfbfefefefefefefefefe
+fffffffdfdfee1e7f3bacfe4a0bedb96b6d795b5d795b5d795b5d795b5d795b5d795b5d7
+95b5d795b5d795b5d795b5d795b5d795b5d795b5d795b5d795b5d795b5d795b5d795b5d7
+95b5d795b5d795b5d795b5d795b5d795b5d795b5d795b5d79cbbd9e0e7f3ffffffffffff
+fffffffffffffefefefdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefdfeffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fefefefdfdfdfcfcfcfcfcfcfcfcfcfcfcfcf9fafbebeef6dbe1eecbd7e7bacddfa3bcd5
+8da9cc83a2c780a0c5809fc391abc79ab2c8a7bbccb3bfcfbdc4d1c6cad3d1d2d6d7d7d7
+d7d7d7d8d8d8d7d7d7d7d7d7d5d5d5d5d5d5d5d5d5d6d6d6d8d8d8d8d8d8d8d8d8d8d8d8
+d9d9d9d9d9d9d9d9d9d8d8d8d7d7d7d2d3d6d1d2d6d1d2d5d1d2d5d2d2d5d5d5d5d6d6d6
+d6d6d6d5d5d5d5d5d5d5d5d5d5d5d5d6d6d6d6d6d6d6d6d6d6d6d6d7d7d7d6d6d6d5d5d5
+d4d4d4d5d5d5d8d8d8dddddde5e5e5edededf3f3f3f8f8f8fbfbfbfbfbfbfafafaf8f8f8
+f5f5f5f1f1f1ededede5e6e8dfe0e3dbdcdfd9daddd5d7dad3d4d8d2d3d7d2d3d6d4d4d6
+d6d6d6d6d6d6d6d6d6d6d6d6d5d5d5d6d6d6d5d5d5d5d5d5d6d6d6d3d3d5cecfd2cdced2
+ccced1cbccd0cacbcecacbcecccdd0d0d1d4d5d6dadadcdfe0e1e5e4e6e9e9ebeeedeff2
+eff0f4f0f1f5f0f1f5f0f1f4eef0f3edeef2ecedf0ebecf0e9ebeee8eaedececedededed
+ebebebeaeaeaeaeaeae9eae9e9e9e9e8e8e8e7e6e6e7e7e7e6e6e6e6e6e6e6e6e6e6e6e6
+e7e7e7e8e8e8e8e8e8e9e9e9e8e8e8e2e3e7d6dae4cbd3e1bdccddaec4d99fbad58baacf
+89a9cf8aa9ce92b0d2a6bfdab7ccdfc7d4e5d5dceae3e7f0f1f2f5f7f7f7f7f7f7f6f6f6
+f7f7f7f7f7f7f7f7f7f7f7f7f8f8f8f9f9f9f9f9f9fafafafafafafbfbfbfafafafafafa
+f9f9f9f7f7f7f4f4f4f1f1f1ececece8e8e8e1e2e4dbdde0d8daddd6d7dad4d5d8d3d4d6
+d3d4d7d4d5d7d8d8d9d9d8d7d8d9d9dadad9dadadadbdbdbdcdcdbdddddddededededede
+dfdfdfe0e0e0e1e1e1e1e1e1e2e2e2e2e2e2e3e3e3e2e2e2e0e0e0dcdcdcdbdbdbdddddd
+e2e2e2e5e5e5e4e4e4e1e1e1dedededbdbdbd1d1d3c1c3c6b5b6baabacafa8aaacaeafb2
+b9babdc6c7cad2d3d6dfe0e2ebebecf2f2f2f6f6f6f9f9f9fbfbfbfdfdfdfdfdfdfefefe
+fffffffffffffffffffffffffafbfdf7f8fcf7f8fcf7f8fcf7f8fcf7f8fcf7f8fcf7f8fc
+f7f8fcf7f8fcf7f8fcf7f8fcf7f8fcf7f8fcf7f8fcf7f8fcf7f8fcf7f8fcf7f8fcf7f8fc
+f7f8fcf7f8fcf7f8fcf7f8fcf7f8fcf7f8fcf7f8fcf7f8fcfafafdffffffffffffffffff
+fffffffefefefdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefefeffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fefefefefefefefefefefefefdfdfdfdfdfdfdfdfdfefefefdfdfdfbfbfbf8f8f8f0f0f2
+e6e7ebdfe1e6dbdde2d6d9dddadbdddadbdcdadadad9d9d9d9d9d9d8d8d8d8d8d8d7d7d7
+d7d7d7d8d8d8d7d7d7d8d8d8d8d8d8d6d6d6d5d5d5d5d5d5d5d5d5d6d6d6d7d7d7d7d7d7
+d8d8d8d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d8d8d8d7d7d7d7d7d7
+d7d7d7d6d6d6d5d5d5d5d5d5d5d5d5d5d5d5d4d4d4d4d4d4d5d5d5d5d5d5d5d5d5d5d5d5
+d5d5d5d4d4d4d5d5d5d8d8d8dededee4e4e4ebebebf1f1f1f6f6f6f8f8f8f6f6f6f5f5f5
+f2f2f2eeeeeeeaeaeae6e6e6e3e3e3e0e0e0dddddddbdbdbd9d9d9d7d7d7d7d7d7d6d6d6
+d6d6d6d5d5d5d5d5d5d6d6d6d5d5d5d5d5d5d5d5d5d6d6d6d5d5d5d5d5d5d5d5d5d3d3d3
+d2d2d2d2d2d2d1d1d1d1d1d1d2d2d1d4d4d4d7d7d7dbdbdbe0e0e0e5e5e5eaeaeaf0f0f0
+f4f4f4f6f6f6f8f8f8f9f9f9fafafafafafafafafafafafafafafaf9f9f9f8f8f8f7f7f7
+f6f6f6f4f4f4f4f4f4f4f4f4f3f3f3f2f2f2f1f1f1f1f1f1f1f1f1f0f0f0f0f0f0f0f0f0
+f0f0f0f1f1f1f2f2f2f2f2f2f2f2f2f2f2f2f3f3f3f3f3f3f4f4f4f3f4f4f1f2f4edeff3
+eceff3edeff3eff0f4f3f3f6f7f7f7f8f8f8f8f8f7fafafafafafafafafafafafaf9f9f9
+f9f9f9fafafafafafafafafafbfbfbfcfcfcfcfcfcfcfcfcfcfcfcfbfbfbfafafaf9f9f9
+f6f6f6f3f3f3efefefebebebe7e7e7e4e4e4e1e1e1dedededcdcdcdadadad9d9d9d8d9d8
+d9d9d8d9d9d8d8d9d8d8d8d8d8d8d7d9d8d7d9d9d8dcdcdbdededddfdfdfdfdededfdfdf
+e0e0e0e1e1e1e1e1e1e1e1e1e3e3e3e4e4e4e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e4e4e4
+ddddddd1d1d1c5c5c5bebebebdbdbdbdbdbdbebebebfbfbfc2c2c2c7c7c7cececed6d6d6
+dddddde3e3e3e6e6e6e8e8e8eaeaeaececececececeeeeeef2f2f2f6f6f6f9f9f9fcfcfc
+fdfdfdfefefefefefeffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fefefefdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefefeffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffefefefefefefefefefefefefefefefefefefdfdfdfbfbfbf8f8f8
+f4f4f4efefefeaeaeae4e4e4e1e1e1dedededcdcdcdadadad9d9d9d9d9d9d8d8d8d8d8d8
+d9d9d9d9d9d9d8d8d8d9d9d9d9d9d9d9d9d9d8d8d8d7d7d7d6d6d6d6d6d6d6d6d6d7d7d7
+d7d7d7d8d8d8d9d9d9d9d9d9d9d9d9dadadad9d9d9d9d9d9d9d9d9dadadad9d9d9d9d9d9
+d9d9d9d9d9d9d8d8d8d8d8d8d7d7d7d6d6d6d6d6d6d5d5d5d5d5d5d5d5d5d5d5d5d4d4d4
+d4d4d4d3d3d3d4d4d4d4d4d4d7d7d7dadadae0e0e0e7e7e7edededf0f0f0f2f2f2f2f2f2
+efefefececece8e8e8e5e5e5e1e1e1dfdfdfdcdcdcdadadad8d8d8d8d8d8d6d6d6d6d6d6
+d5d5d5d5d5d5d5d5d5d5d5d5d6d6d6d5d5d5d6d6d6d5d5d5d6d6d6d4d4d4d4d4d4d5d5d5
+d4d4d4d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d4d5d5d7d7d7d9d9d9dddddde1e1e1e6e6e6
+ebebebefefeff3f3f3f6f6f6f9f9f9fbfbfbfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfc
+fbfbfbfafafafafafafafafafafafafafafaf9f9f9f9f9f9f8f8f8f8f8f8f7f7f7f7f7f7
+f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f8f8f8f8f8f8f8f8f8f8f8f8f9f9f9f9f9f8
+f9f8f7f7f7f7f6f6f6f5f5f4f5f4f3f6f5f5f8f8f8fbfbfbfcfcfcfcfcfcfcfcfcfcfcfc
+fcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfafafaf8f8f8f6f6f6f3f3f3
+efefefececece9e9e9e6e6e6e2e2e2e0e0e0dedededbdbdbdadadadadad9d9d9d8d9d9d8
+dad9d9d8d9d9dad9d9d9d9d8d5d4d4d2d3d2d4d3d2d8d8d7dddddcdfdfdfe1e1e1e2e2e2
+e2e2e2e2e2e1e3e3e2e4e4e4e6e5e5e6e7e6e6e7e7e6e7e7e8e7e7e7e7e7e2e2e2d4d3d3
+c0bfbfafafafaaaaaaaeaeadbababac4c4c4ccccccd3d3d3d9d9d9dfdfdfe4e4e4e7e7e7
+e7e8e7e7e7e6e6e6e5e4e4e4e1e2e2e1e1e1e0e0e0e3e3e3e8e8e8eeeeeef3f3f3f7f7f7
+fbfbfbfdfdfdfefefefefefeffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fefdfefdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfdfeffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffefefefefefefefefefefefefefefefdfdfdfcfcfc
+fafafaf6f6f6f1f1f1ececece7e7e7e3e3e3e0e0e0dddddddcdcdcdbdbdbd9d9d9d9d9d9
+d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d8d8d8d9d9d9d9d9d9d9d9d9d8d8d8d7d7d7d6d6d6
+d5d5d5d6d6d6d8d8d8d9d9d9d9d9d9d8d8d8d9d9d9d9d9d9d9d9d9d9d9d9dadadadadada
+dbdbdbdadadadadadad9d9d9d9d9d9dadadad9d9d9d9d9d9d8d8d8d8d8d8d7d7d7d6d6d6
+d6d6d6d5d5d5d5d5d5d4d4d4d4d4d4d4d4d4d6d6d6dbdbdbe0e0e0e4e4e4e8e8e8e9e9e9
+e9e9e9e7e7e7e5e5e5e2e2e2e0e0e0dedededbdbdbd9d9d9d8d8d8d7d7d7d6d6d6d7d7d7
+d6d6d6d6d6d6d5d5d5d6d6d6d6d6d6d6d6d6d5d5d5d6d5d5d5d5d5d5d5d5d4d5d5d5d5d5
+d5d5d5d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d5d5d5d6d6d6d6d6d6d8d8d8dadada
+dfdfdfe4e4e4e9e9e9efefeef3f3f2f5f6f5f7f7f6f9f9f9fbfbfbfcfcfcfcfcfcfcfcfc
+fcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfc
+fcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfbfbfbfcfcfcfcfcfcfafaf9
+f9f8f7f6f6f5f2f1f0edededebebebedededf0f0f0f5f5f5f9f9f9fcfcfcfdfdfdfdfdfd
+fdfdfdfdfdfdfcfcfcfcfcfcfcfcfcfbfbfbf9f9f9f7f7f7f4f4f4f1f1f1efefefececec
+e8e8e8e4e4e4e2e2e2dfdfdfdedededcdcdcdadadad9d9d9d9d9d9d9d9d9d9d9d9dadada
+dadadadbdbdbdbdadad9d9d8d5d4d4cccdccc7c7c7cacacad1d1d0d9d8d7dededde1e1e0
+e4e3e3e3e3e2e3e3e3e4e4e4e3e3e3e3e4e4e3e2e1e1e0dfdddddcd4d4d4c8c8c8bbbaba
+b1b1b0b0b0afb5b4b3bebdbccecdccd9d9d9e1e1e0e7e7e7ebebebedededeeeeeeedeeed
+eaeaeae7e7e7e4e4e3e0e1e0dddddcdcdcdcdcdbdbdfdfdee2e2e2e7e7e7ecececf2f2f2
+f6f6f6fafafafdfdfdfefefefefefeffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfdfeffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffefefefefefefefefefefefe
+fdfdfdfcfcfcf9f9f9f4f4f4efefefebebebe6e6e6e2e2e2e0e0e0dedededcdcdcdbdbdb
+dadadadadadad9d9d9d9d9d9d9d9d9d9d9d9dadadadadadad9d9d9dadadadadadad9d9d9
+d9d9d9d8d8d8d7d7d7d9d9d9d8d8d8d7d7d7d8d8d8d8d8d8d9d9d9d9d9d9d9d9d9dadada
+dadadadbdbdbdadadadbdbdbdadadadcdcdcdbdbdbdbdbdbdbdbdbdadadadadadad9d9d9
+d9d9d9d9d9d9d8d8d8d7d7d7d6d6d6d5d5d5d4d4d4d5d5d5d7d7d7dadadadddddde0e0e0
+e1e1e1e1e1e1e0e0e0dfdfdfdddddddcdcdcd9d9d9d9d9d9d9d9d9d7d7d7d6d6d6d6d6d6
+d6d6d6d5d5d5d5d5d5d5d5d5d5d5d5d6d6d6d6d6d6d6d6d6d5d5d5d6d6d6d6d6d6d6d6d6
+d6d7d7d6d6d6d7d6d6d7d7d6d7d7d7d7d6d6d6d5d5d6d6d5d5d5d5d3d3d3d2d2d1d1d1d0
+d3d3d3d8d8d8e0e0e0e7e8e7eeeeedf2f2f1f3f3f3f5f4f4f6f6f6f7f6f6f7f7f7f7f7f7
+f7f7f7f8f8f8f8f8f8f8f8f8f9f9f9fafafafbfbfbfbfbfbfbfbfbfbfbfbfcfcfcfdfdfd
+fdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfcfcfcfcfcfcfcfcfcfbfbfbfbfaf9f8f8f8
+f3f4f3f1f1f1ebebeae4e4e3dfe0dfe0e0e0e6e6e6edededf4f4f4fafafafcfcfcfcfcfc
+fcfcfcfbfbfbfbfbfbf9f9f9f7f7f7f5f5f5f3f3f3efefefececece9e9e9e7e7e7e4e4e4
+e1e1e1dedededcdcdcdadadad9d9d9d9d9d9d9d9d9d9d9d9dadadadadadad9d9d9d9dad9
+dbdadadadad9dbdcdbdbdbdbd5d6d5cccccbc1c1c0bbbbbac0c0c0c9c9c9d0d0d0d3d4d4
+d6d5d5d5d5d5d4d4d3d4d4d3d3d3d2d1d1d1cfcfcecacacac6c6c6c0c0bfbcbbbbbababa
+bcbcbcc1c1c0cacac8d3d2d1dbdbdbe1e1e0e7e8e7ecececf0efeef3f3f2f4f5f4f3f3f2
+f0f0efededeceaeae9e5e5e4e3e3e3e2e1e0e0e0e0e0e0dfe2e2e2e5e5e5eaeaeaefefef
+f4f4f4f9f9f9fcfcfcfdfdfdfefefeffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffefefefdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfdfe
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fefefefdfdfcfcfcfbf9f9f9f8f8f7f2f2f1eeeeedebebebe7e7e7e3e3e3e1e1e1e0e0e0
+dededededededcdcdcdbdbdbdadadadadadadadadadadadadadadadadadadbdbdbdcdcdc
+dbdbdbdadadadadadad9d9d9dadadad9d9d9d8d8d8d8d8d8d8d8d8d9d9d9d9d9d9d9d9d9
+d9d9d9dadadadadadadadadadadadadbdbdbdcdcdcdcdcdcdcdcdcdcdcdcdbdbdbdcdcdc
+dcdcdcdbdbdbdbdbdbdadadad9d9d9d9d9d9d8d8d8d7d7d7d6d6d6d7d7d7d8d8d8d9d9d9
+dadadadbdbdbdbdbdbdbdbdbdbdbdbdadadad9d9d9d9d9d9d7d7d7d8d8d8d8d8d8d7d7d7
+d7d7d7d6d6d6d6d6d6d5d5d5d6d6d6d6d6d6d6d6d6d5d5d5d6d6d6d6d6d6d7d7d7d6d6d6
+d6d6d6d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d6d6d6d5d5d5d1d1d1cccbcb
+cacbcacdcdccd5d6d5dfdfdfe8e8e8edededf0efeef0f0eff0f0f0f0f0f0eeeeeeededed
+ececececececececececececeeeeeeefefeff1f1f1f2f2f2f4f4f4f4f4f4f6f6f6f9f9f9
+f9f9f9fafafafbfbfbfbfbfbfbfbfbfbfbfbfafafaf9f9f9f7f7f7f5f5f5f4f3f3f1f1f1
+edecece8e8e8e2e2e2dadbdad6d6d6d6d6d6dbdbdbe3e3e3ecececf3f3f3f6f6f6f6f6f6
+f7f7f7f5f5f5f3f3f3f1f1f1eeeeeeecececeaeaeae6e6e6e4e4e4e1e1e1dedededddddd
+dbdbdbdadadad9d9d9d9d9d9d9d9d9d9d9d9d9d9d9dadadadadadadbdbdbdbdbdbdbdbdb
+dcdcdbdcdbdbdcdbdbdcdbdad8d8d8d0d0d0c4c5c4bababab8b8b7c0c0bfcacac9d1d1d0
+d3d3d2d3d3d2d3d3d2d2d2d2d1d1d0cecececacacac7c7c7c6c6c6c6c6c6c7c7c7c9c9c9
+cececed3d3d2d7d7d7dbdbdbdfdfdfe2e2e2e5e5e5eaeaeaefefeff3f3f3f6f6f6f8f8f8
+f6f7f6f3f3f3f0f0efececebe8e8e8e7e6e6e6e6e5e7e7e7e9e9e9ebebebf0f0f0f4f4f4
+f8f8f8fcfcfcfdfdfdfefefeffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fefdfeffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffefefefdfdfcfcfcfcfbfbfbfafaf9f6f6f5f3f3f2efefefebebebe8e8e8e5e5e5
+e3e3e3e2e2e2e0e0e0dedededddddddcdcdcdcdcdcdbdbdbdcdcdcdcdcdcdcdcdcdddddd
+dddddddddddddddddddcdcdcdcdcdcdbdbdbdbdbdbdbdbdbdadadadadadadadadad9d9d9
+d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9dadadadbdbdbdbdbdbdbdbdbdcdcdcdcdcdcdcdcdc
+dbdbdbdcdcdcdcdcdcdbdbdbdbdbdbdbdbdbdadadad9d9d9d8d8d8d9d9d9d9d9d9d9d9d9
+d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d8d8d8d7d7d7d8d8d8d8d8d8d7d7d7d8d8d8d7d7d7
+d7d7d7d7d7d7d6d6d6d6d6d6d6d6d6d6d6d6d7d7d7d6d6d6d6d6d6d6d6d6d7d7d7d6d6d6
+d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d8d8d8d8d7d7d8d8d8d7d7d7d6d6d5d3d3d2cecece
+c8c8c7c8c7c6cdcdccd7d8d7e1e1e1e7e7e7ebebeaebebebebebebeaeaeae7e7e7e6e6e6
+e3e4e3e3e2e1e2e2e2e3e3e2e2e2e2e3e3e2e3e3e3e5e5e5e6e6e6e6e6e6e8e8e8eaeaea
+ecececf0f0eff2f2f2f4f4f4f4f4f4f4f4f4f3f3f3f1f1f1efefefedededebeae9e6e7e6
+e3e3e3dededed9d9d9d4d4d4d0d1d1d1d1d1d5d5d5dddddde5e5e5ebebebedededeeeeee
+eeeeeeecececebebebe9e9e9e5e5e5e3e3e3e0e0e0dedededcdcdcdadadad9d9d9d9d9d9
+d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9dadadadbdbdbdbdbdbdbdbdbdbdbdbdcdcdcdcdcdb
+dbdadadadadadbdbdbd9d9d8d7d6d6d3d3d3cdcecdc6c5c5c1c2c1c5c5c5cecdccd8d5d5
+dfdedde2e2e0dfdfdedadad9d2d2d1cdcdcdcccccccdcdcdcececed0d0d0d2d2d2d4d4d4
+d7d7d7d9d9d9d9dad9dbdbdbdcdcdcdfdfdfe2e2e2e9e9e9f0f0f0f5f5f5f9f9f9fbfbfb
+fafafaf9f9f9f7f7f7f5f5f5f4f4f4f3f3f3f3f3f3f4f4f4f6f6f6f7f7f7f8f8f8fbfbfb
+fdfdfdfdfdfdfefefefefefefefefeffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfefefeffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffefefefefefefcfcfcfbfbfbfafafaf7f7f6f3f3f2efefefececeb
+e9e9e9e8e8e8e5e5e5e3e3e3e1e1e1e0e0e0dfdfdfdedededddddddddddddddddddddddd
+dddddddededededededfdfdfdedededfdfdfdfdfdfdedededddddddcdcdcdcdcdcdcdcdc
+dbdbdbdadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadbdbdb
+dbdbdbdbdbdbdcdcdcdbdbdbdbdbdbdbdbdbd9d9d9d7d7d7d6d6d6d6d6d6d7d7d7d9d9d9
+d9d9d9dadadad9d9d9d9d9d9d9d9d9d8d8d8d8d8d8d8d8d8d7d7d7d8d8d8d7d7d7d6d6d6
+d7d7d7d6d6d6d7d7d7d7d7d7d7d7d7d6d6d6d7d7d7d7d7d7d7d7d7d7d7d7d6d6d6d7d7d7
+d7d7d7d7d7d7d8d8d8d9d9d9d8d8d8d8d8d8d7d8d8d8d8d8d8d8d8d8d8d7d7d6d5d2d2d1
+ccccccc9c9c8cbcbcad2d2d1dadbdae1e1e1e4e4e4e5e5e5e4e4e4e4e4e3e2e2e1e1e1e0
+e0dfdfdfdededfdfdedfdfdedfdfdedededddedfdedfdfdedfdfdedfdededfdfdfdedede
+e0e0e0e3e2e2e7e6e6eaeaeaebecebebebebeaeaeae7e8e8e5e5e4e2e2e1dfdfdedcdcdb
+d9d9d9d8d8d7d5d5d5d3d3d3d3d3d3d5d5d5d8d8d8dededee2e2e2e4e4e4e5e5e5e5e5e5
+e4e4e4e3e3e3e0e0e0dedededddddddbdbdbdadadadadadad9d9d9d9d9d9d9d9d9d9d9d9
+d9d9d9d9d9d9d9d9d9dbdbdbdbdbdbdbdbdbdbdbdbdadadad9d9d9d7d7d7d6d6d6d4d4d4
+d4d4d4d5d5d5d5d5d5d4d4d4d5d5d5d7d6d6d8d8d8dadbdadbdbdbdcdcdcdedddddedddd
+dedddcdadad9d3d3d3cdcdcdcdcdcdcececed2d2d2d4d4d4d5d5d5d6d5d5d6d5d5d7d7d6
+d8d8d7d9dadadbdbdadadadadadadadddddde3e3e3ebebebf2f2f2f8f8f8fcfcfcfdfdfd
+fdfdfdfdfdfdfdfdfdfcfcfcfcfcfcfbfbfbfbfbfbfbfbfbfcfcfcfcfcfcfcfcfcfcfcfc
+fbfbfbfbfbfbfbfbfbfafafafbfbfbfcfcfcfcfcfcfdfdfdfefefeffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfefdfeffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffefefefdfdfcfbfbfbf7f7f6f2f2f2
+efefeeecebebe9e9e9e7e7e7e4e4e4e4e4e4e2e2e2e1e1e1e1e1e1e1e1e1e0e0e0e0e0e0
+dfdfdfdfdfdfdfdfdfe0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0dfdfdf
+dfdfdfdedededddddddddddddddddddcdcdcdbdbdbdadadadbdbdbdadadadadadadbdbdb
+dadadadadadadadadadadadadadadadadadad7d7d7d4d4d4d1d1d1d1d1d1d3d3d3d5d5d5
+d6d6d6d7d7d7d8d8d8d8d8d8d8d8d8d8d8d8d9d9d9d8d8d8d8d8d8d7d7d7d7d7d7d7d7d7
+d7d7d7d6d6d6d7d7d7d7d7d7d7d7d7d7d7d7d8d8d8d8d8d8d8d8d8d7d7d7d8d8d8d8d8d8
+d8d8d8d8d8d8d9d9d9d9d9d9d9d9d9d9d9d9d8d8d8d8d8d8d8d9d9d9d9d9d9d8d7d6d6d6
+d4d4d3d1d1d0d1d1d0d5d5d4d9dadadededee0e0e0e1e0e0dfdfdfdfdfdedddddcdcdcdb
+dcdcdbdbdbdbdbdbdbdbdbdbdbdbdadbdbdbdbdbdbdcdcdbdbdbdbdbdbdbdbdbdbdbdcdc
+dbdbdbdddddce0e0e0e2e2e2e2e3e2e2e1e1dfdfdfdddedddbdbdbd9d9d9d8d8d8d7d7d6
+d6d5d5d6d6d5d5d6d6d6d6d6d7d7d7d9d9d9dbdbdbdcdcdcdddddddddddddddddddddddd
+dcdcdcdadadadadadad9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9dadada
+dadadadadadadbdbdbdbdbdbd8d8d8d7d7d7d5d5d5d2d2d2d0d0d0cfcfcfcfcfcfd1d1d1
+d5d5d5d8d8d8dcdcdcdededee0e0e0e4e3e3e4e4e4e5e5e5e1e1e1dadadad4d4d4cecece
+cbcbcbcbcbcbcdcdcdcfcfcfd3d3d3d5d5d5d7d7d7d7d7d7d7d7d7d6d6d6d6d7d6d7d8d7
+d9d8d8d9d9d9dadad9d8d8d8d9d9d9dcdcdce5e5e5eeeeeef5f5f5f9f9f9fcfcfcfdfdfd
+fcfcfcfcfcfcfcfcfcfbfbfbfbfbfbfafafafafafafafafaf9f9f9f8f8f8f7f7f7f6f6f6
+f4f4f4f4f4f4f3f3f3f4f4f4f5f5f5f8f8f8fafafafcfcfcfefefeffffffffffffffffff
+fffffffffffffffffffefefefefefefffffffffffeffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfefdfeffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffffefefefdfdfdfbfbfa
+f7f7f6f3f3f2efefeeebebeae7e7e7e5e5e5e3e3e3e3e3e3e4e4e4e5e5e5e4e4e4e4e4e4
+e3e3e3e2e2e2e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e2e2e2e2e2e2e2e2e2
+e2e2e2e2e2e2e1e1e1e1e1e1e0e0e0e0e0e0dfdfdfdedededededededededcdcdcdbdbdb
+dbdbdbdbdbdbdadadadadadad9d9d9dadadad7d7d7d0d0d0cbcbcbcccccccececed1d1d1
+d3d3d3d4d4d4d5d5d5d6d6d6d5d5d5d6d6d6d6d6d6d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7
+d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d8d8d8d8d8d8d8d8d8d9d9d9d9d9d9d8d8d8
+d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d8d9d9d8dad9d9d8d8d8
+d9d9d8d8d8d7d9d9d8dbdbdadddddddfdfdedfdfdfdfdedddddddddcdddcdcdcdbdadada
+dad9d9d9d9d9d8d9d8d9d9d8d8d9d8d9d9d8d9d8d8d9d9d9d8d8d8d8d8d7d8d8d8d9d9d9
+d8d9d8dadad9dadadadadbdadbdbdbdadadad8d8d8d8d8d8d7d7d7d6d6d6d7d7d7d6d6d6
+d6d6d6d6d6d6d6d7d7d7d7d7d8d8d8d8d8d8d9d9d9d8d8d8d8d8d8d9d9d9d9d9d9d9d9d9
+d9d9d9d8d8d8d8d8d8d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9dadadadadadadbdbdb
+dbdbdbd9d9d9d6d6d6d0d0d0cdcdcdcdcdcdcdcdcdcececed1d1d1d3d4d4d6d6d6d9d9d9
+dddddde0e0e0e2e2e2e1e1e1dededed9d9d9d2d2d2cbcbcbc4c4c4bfbfbfbfbfbfc2c2c2
+c9c9c9cfcfcfd5d5d5d8d8d8d9d9d9d9d9d9d7d7d7d6d6d6d5d5d5d5d5d5d6d6d6d8d8d7
+d9d9d9d9d9d9d8d8d8d6d6d6d8d8d8dddddde6e6e6edededf2f2f2f4f4f4f6f6f6f6f6f6
+f6f6f6f6f6f6f5f5f5f5f5f5f4f4f4f4f4f4f4f4f4f3f3f3f1f1f1f0f0f0eeeeeeececec
+ebebebebebebecececeeeeeef2f2f2f6f6f6fafafafcfcfcfefefeffffffffffffffffff
+fffffffffffffffffffefefdfdfdfcfefefdfdfdfcfefefdffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffffefefefdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfffefeffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fdfdfdfcfcfcf9f9f9f5f5f5f0f0f0ededede8e8e8e4e4e4e3e3e3e2e2e2e2e2e2e3e3e3
+e5e5e5e5e5e5e4e4e4e4e4e4e3e3e3e3e3e3e4e4e4e3e3e3e3e3e3e4e4e4e4e4e4e4e4e4
+e4e4e4e4e4e4e4e4e4e4e4e4e3e3e3e4e4e4e3e3e3e2e2e2e1e1e1e1e1e1e0e0e0dfdfdf
+dfdfdfdededededededddddddcdcdcdcdcdcdcdcdcd2d2d2c7c7c7c5c5c5c8c8c8cdcdcd
+d1d1d1d3d3d3d3d3d3d3d3d3d4d4d4d4d4d4d4d4d4d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5
+d5d5d5d5d5d5d6d6d6d6d6d6d6d6d6d7d7d7d7d7d7d8d8d8d9d9d9d8d8d8d8d8d8d8d8d8
+d9d9d9d9d9d9d9d9d9d9d9d9dadadadadadadadadadadadadadadadadadadadadad9d9d9
+dadadadadadadbdadadadad9dadad9d8d9d8d7d8d7d7d8d7d8d8d7d9d9d9dadadadadada
+d9d9d9dadadadadad9d9dad9d9d9d9d9d9d8d9d8d8d9d9d9d7d8d7d7d7d7d8d8d8d8d8d8
+d7d8d8d8d8d8d8d8d8d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d6d6d6d6d6d6d7d7d7
+d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d8d8d8d8d8d8d8d8d8d8d8d8d9d9d9d8d8d8d9d9d9
+d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9dadadadadadadadadadbdbdbdbdbdbdbdbdbd7d7d7
+d2d2d2cdcdcdc8c8c8c6c6c6cacacacececed1d1d1d4d4d4d5d5d5d5d5d5d5d5d5d5d5d5
+d4d4d4d3d3d3d2d2d2cececec9c9c9c3c3c3c0c0c0bfbfbfc1c1c1c4c4c4cacacad0d0d0
+d6d6d6dadadadddddddddddddcdcdcdadadad8d8d8d8d8d8d8d8d8d9d9d9dadadadbdbdb
+dcdcdcdbdbdbdadadad9d9d9dcdcdce1e1e1e7e7e7ebebebedededeeeeeeefefefefefef
+eeeeeeeeeeeeeeeeeeeeeeeeedededececececececeaeaeae9e9e9e7e7e7e6e6e6e7e7e7
+e8e8e8eaeaeaedededf1f1f1f5f5f5f9f9f9fcfcfcfdfdfdfefefeffffffffffffffffff
+fffffffffffffffffffefefefcfcfcfcfcfbfdfdfcfdfdfcfefefeffffffffffffffffff
+fffffffffffffffffffffffffffffffefefefefdfefefdfefdfdfdfdfdfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfefdfeffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffdfdfdfbfbfbf9f9f9f5f5f4f0f0f0ececece7e7e7e3e3e3e1e1e1
+e1e1e1e0e1e1e2e2e2e4e4e4e5e5e5e6e6e6e5e5e5e5e5e5e5e5e5e6e6e6e5e5e5e5e5e5
+e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e5e5e5e6e6e6e5e5e5e4e4e4e3e3e3e3e3e3
+e3e3e3e2e2e2e2e2e2e1e1e1e1e1e1e0e0e0e0e0e0dbdbdbccccccc1c1c1c0c0c0c7c7c7
+cececed2d2d2d3d3d3d4d4d4d4d4d4d5d5d5d5d5d5d4d4d4d5d5d5d4d4d4d5d5d5d4d4d4
+d4d4d4d4d4d4d5d5d5d5d5d5d5d5d5d7d7d7d7d7d7d7d7d7d8d8d8d7d7d7d7d7d7d7d7d7
+d8d8d8d8d8d8d9d9d9d9d9d9d9d9d9d9d9d9dadadadadadadadadadcdcdcdbdbdadadad9
+dadadad9d8d7d5d5d4d2d2d1d0d0d0d0d0d0d1d1d1d4d4d4d7d7d7dcdcdbdcdddcdddddd
+dcdcdcdbdcdbdbdbdbdbdad9dbdadadadadad9d9d9d9d9d9d9d9d9d8d9d8d9d9d9d9d9d9
+d8d8d8d9d9d9d8d8d8d7d7d7d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d7d7d7d7d7d7d8d8d8
+d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9
+d9d9d9d9d9d9dadadadadadadadadadbdbdbdbdbdbdcdcdcdcdcdcd9d9d9d3d3d3cbcbcb
+c6c6c6c4c4c4c7c7c7cbcbcbd0d0d0d3d3d3d4d4d4d3d3d3d3d3d3d2d2d2d2d2d2d1d1d1
+d0d0d0cfcfcfcfcfcfcecececdcdcdcfcfcfd0d0d0d4d4d4d8d8d8dbdbdbdfdfdfe2e2e2
+e3e3e3e4e4e4e3e3e3e1e1e1dfdfdfdddddddbdbdbdbdbdbdadadadadadadadadadadada
+d9d9d9d9d9d9d9d9d9dadadadcdcdce0e0e0e3e3e3e6e6e6e8e8e8e8e8e8e9e9e9e9e9e9
+e9e9e9e9e9e9e9e9e9eaeaeaeaeaeaeaeaeaeaeaeaeaeaeaebebebebebebecececeeeeee
+f1f1f1f3f3f3f6f6f6f9f9f9fbfbfbfdfdfdfefefeffffffffffffffffffffffffffffff
+fffffffffffffffffffefefefdfdfdfdfdfdfefefefdfdfdffffffffffffffffffffffff
+fffffffffffffffffffffffffefefefdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfdfdffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffefefefefefefdfdfdfdfdfcfafbfaf8f7f7f4f4f3efefefeaeaea
+e6e6e6e3e3e2e2e2e2e4e4e3e5e4e4e5e6e5e5e5e5e5e6e6e6e6e6e7e7e6e7e7e7e7e7e6
+e8e7e7e8e8e8e9e9e9e9e9e9eaeaeae9e9e9e9e9e9e7e7e7e7e7e7e7e7e7e6e6e6e6e6e6
+e6e6e6e6e6e6e5e5e5e4e4e4e4e4e4e4e4e4e3e3e3e3e3e3dbdbdbcbcbcbbfbfbfc0c0c0
+c8c8c8cfcfcfd2d2d2d4d4d4d5d5d5d5d5d5d6d6d6d5d5d5d6d6d6d5d5d5d5d5d5d5d5d5
+d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d5d5d5d6d6d6
+d6d6d6d7d7d7d7d7d7d8d8d8d8d8d8d8d8d8d9d9d9d9d9d9d9d9d9dadadad9dadad8d9d8
+d5d5d4d0d1d0cccccccacbcbcbcbcbcdcdcdd3d3d2d9d9d8dedddde0e0dfdfe0dfdfe0df
+dedededddcdcdcdddcdddcdcdcdcdcdbdbdbdadbdbdadbdbdadadad9dadadadadad9d9d9
+d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d8d8d8d8d8d8
+d8d8d8d7d7d7d8d8d8d8d8d8d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9dadadadadadad9d9d9
+dadadadadadadbdbdbdcdcdcdddddddddddddcdcdcd9d9d9d4d4d4cdcdcdc8c8c8c6c6c6
+c7c7c7c9c9c9cececed1d1d1d3d3d3d4d4d4d5d5d5d5d5d5d5d5d5d5d5d5d6d6d6d7d7d7
+d8d8d8d9d9d9dbdbdbdcdcdcdfdfdfe1e1e1e3e3e3e4e4e4e4e4e4e3e3e3e2e2e2e0e0e0
+dedededbdbdbd8d8d8d6d6d6d5d5d5d3d3d3d2d2d2d2d2d2d2d2d2d3d3d3d4d4d4d5d5d5
+d6d6d6d8d8d8dbdbdbdedededfdfdfe4e4e4e7e7e7e9e9e9ebebebecececedededefefef
+f0f0f0f0f0f0f1f1f1f2f2f2f2f2f2f3f3f3f4f4f4f5f5f5f6f6f6f7f7f7f9f9f9fafafa
+fbfbfbfcfcfcfdfdfdfefefefefefeffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffefefefefefefefefefefefefefefeffffffffffffffffffffffff
+fffffffffffffefefefefdfefdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefdfeffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffefefefefefdfcfcfbfbfbfaf9f9f8f6f6f6f3f2f2
+eeeeeeeaeaeae6e6e5e3e3e3e1e0e0dfe0dfdfdfdfdededee0e0dfdfdfdfdfdfdfe0e0df
+e0e0dfe0e0e0e1e1e1e2e2e2e6e6e6e9e9e9ededededededebebebeaeaeae8e8e8e8e8e8
+e8e8e8e8e8e8e7e7e7e7e7e7e7e7e7e7e7e7e6e6e6e6e6e6e6e6e6e0e0e0d3d3d3c4c4c4
+c2c2c2c8c8c8cececed2d2d2d5d5d5d6d6d6d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7
+d7d7d7d6d6d6d6d6d6d7d7d7d7d7d7d6d6d6d6d6d6d5d5d5d5d5d5d5d5d5d4d4d4d5d5d5
+d5d5d5d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d7d7d7d7d7d7d8d8d8d7d7d7d6d5d4d3d3d3
+cdcdcdc9c9c9c7c8c7c8c9c8cbcbcad0d0d0d8d8d7dededee2e2e2e3e3e3e2e1e1e0e0e0
+dfdfdfdedededededddedddddddddcdcdddcdcdddcdcdcdcdadbdbdadbdbdbdbdbdbdbdb
+dadadadadadadadadadadadadadadadadadadadadad9d9d9d9d9d9d8d8d8d8d8d8d5d5d5
+d4d4d4d5d5d5d6d6d6d8d8d8dadadadbdbdbdadadadadadadbdbdbdbdbdbdbdbdbdbdbdb
+dcdcdcdddddddddddddddddddbdbdbd8d7d7d2d1d1ccccccc9c9c9c8c8c8c9c9c9cacaca
+cccccccececed1d1d1d3d3d3d5d5d5d7d7d7d8d8d8d9d9d9dbdbdbdddddddfe0dfe3e3e3
+e4e4e4e5e5e5e5e4e4e5e5e5e1e0e0dedededadadad6d6d6d3d3d3d0d0d0cdcdcdcccccc
+cdcdcdcdcdcdcecececfcfcfd2d2d2d4d4d4d7d7d7dadadadddddde0e0e0e3e3e3e6e6e6
+e8e8e8eaeaeaeeeeeef0f0f0f1f1f1f3f3f3f5f5f5f7f7f7f7f7f7f8f8f8f9f9f9fafafa
+fafafafafafafbfbfbfbfbfbfbfbfbfcfcfcfcfcfcfdfdfdfefefefefefefefefefefefe
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fefefefefdfefdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefdfeffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffefefefefdfdfdfcfcfcfafafaf6f6f6
+f1f1f0ebebeae4e4e3dedfded9d9d8d4d4d4d2d2d2d0d0cfcfcfcececececdcdcdcdcdcd
+cdcdcdcdcdcdcdcdcdcececed0d0d0d4d4d4dadadae5e5e5edededf1f1f1eeeeeeececec
+ebebebeaeaeaeaeaeaeaeaeae9e9e9e9e9e9e9e9e9e7e7e7e7e7e7e8e8e8e6e6e6dddddd
+d0d0d0c8c8c8cacacacececed1d1d1d3d3d3d4d4d4d4d4d4d6d6d6d6d6d6d7d7d7d8d8d8
+d7d7d7d7d7d7d7d7d7d7d7d7d6d6d6d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d6d6d6d6d6d6
+d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d5d5d5d5d5d5d5d5d5d5d5d5d4d4d4d1d2d2cececd
+cbcbcbcacac9cbcbcbcdcdcdd1d1d0d6d5d5dbdbdbe0e0dfe3e3e2e3e3e3e1e1e1e1e1e1
+e0e0e0e0e0e0e0e0e0dfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdddddddededededededddddd
+dddddddcdcdcdbdbdbdadadadbdbdbdbdbdbdcdcdcdcdcdcdbdbdbdadadadadadad8d8d8
+d8d8d8d8d8d8dadadadbdbdbdddddddedededddddddddddddddddddedededededededede
+dedededddddddadadad6d6d6d0d0d0ccccccc9c9c9c8c8c8c9c9c9cacacacccccccdcdcd
+cfcfcfd1d1d1d5d5d5d8d8d8dbdbdbdededee1e1e1e5e5e5e7e7e7e9e9e9e8e8e8e5e5e5
+e0e0e0dadadad3d3d3cdcdcdc8c8c8c7c7c7c6c6c6c7c7c7cacacacececed2d2d2d5d5d5
+dadadadededee2e2e2e6e6e6e9e9e9ecececefefeff1f1f1f3f3f3f5f5f5f7f7f7f9f9f9
+fafafafafafafbfbfbfcfcfcfdfdfdfdfdfdfefefefefefefefefefefefefefefeffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffefefefefefe
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfdfdffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffefefefefefefdfdfdfcfcfc
+f9f9f9f5f5f5f1f1f1ececece6e6e6e2e2e2dedededbdbdad8d8d8d6d6d5d4d4d3d3d3d2
+d2d2d1d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d2d2d2d3d3d3d7d7d7e0e0e0ecececf2f2f2
+f2f2f2f0f0f0edededecececebebebeaeaeaebebebeaeaeae9e9e9e8e8e8e8e8e8e9e9e9
+e7e7e7dededed4d4d4d1d1d1d2d2d2d2d2d2d4d4d4d4d4d4d5d5d5d4d4d4d5d5d5d5d5d5
+d5d5d5d6d6d6d6d6d6d6d6d6d6d6d6d7d7d7d6d6d6d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7
+d7d7d7d7d7d7d7d7d7d6d6d6d6d6d6d6d6d6d5d5d5d5d5d5d4d4d4d4d3d3d2d1d0d0cfce
+cecfcfcecfcfd0d0d0d3d3d3d6d6d6d8d7d7dbdbdbdfdfdfe1e0e0e0dfdfe0e0e0dfdfdf
+dfdfdfe0dfdfe0e0e0e1e1e1e1e1e1e0e0e0e0e0e0e0e0e0e0e0e0dfdfdfdfdfdfdfdfdf
+dcdcdcd8d8d8d4d4d4d4d4d4d7d7d7dadadadddddddedededededededededddddddcdcdc
+dcdcdcdddddddddddddddddddedededfdfdfdededededededfdfdfdedededadadad9d9d9
+d3d4d4cfd0d0cccdcdc9c9c9c6c6c6c6c6c6c7c7c7c9c9c9cbcbcbcececed1d1d1d4d4d4
+d8d8d8dcdcdce0e0e0e4e4e4e8e8e8e9eaeae7e8e8e5e5e5dfdfded7d7d7d0d0d0c8c8c8
+c2c2c2c0c0c0c2c2c2c5c5c5cbcbcbd2d2d2d9d9d9dfdfdfe4e4e4e9e9e9eeeeeef1f1f1
+f4f4f4f7f7f7f8f8f8fafafafbfbfbfcfcfcfcfcfcfdfdfdfefefefefefefefefefefefe
+fefefeffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffffdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefdfefdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfdfdfffeffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffefefe
+fefefefefefefdfdfdfcfcfcfafafaf8f8f8f7f7f7f5f5f5f4f4f4f3f3f3f3f3f3f2f2f2
+f1f1f1f1f1f1f1f1f1f0f0f0f0f0f0efefefeeeeeeebebebe6e6e6e0e0e0dcdcdce1e1e1
+e9e9e9efefeff3f3f3f3f3f3f0f0f0efefefedededecececebebebebebebebebebeaeaea
+ebebebebebebe9e9e9e3e3e3dfdfdfdcdcdcdadadadadadadadadad8d8d8d7d7d7d6d6d6
+d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d4d4d4d5d5d5d4d4d4d5d5d5d5d5d5d6d6d6d6d6d6
+d7d7d7d6d6d6d6d6d6d7d7d7d7d7d7d6d6d6d5d5d5d6d6d6d6d6d6d5d5d5d4d4d4d5d4d4
+d4d4d4d5d4d4d5d5d5d5d6d5d6d6d6d7d8d8d9d9d9dbdbdbdcdcdbdddddcdbdbdbdbdbdb
+dcdcdcdddddde0e0e0e2e2e2e4e4e4e4e4e4e3e3e3e1e1e1e1e1e1e0e0e0e0e0e0dcdcdc
+d8d8d8d2d2d2cfcfcfcfcfcfd2d2d2d6d6d6d9d9d9dcdcdcdedededfdfdfdedededddddd
+dddddddddddddddddddddddddddddddcdcdcdcdcdcd9d9d9d3d3d3ccccccc5c5c5c2c2c2
+c1c1c1c2c2c2c3c3c3c5c5c5c7c7c7cacacacfcfcfd3d3d3d6d6d6dadadadededee1e1e1
+e3e3e3e5e5e5e2e2e2dededed9d9d9d3d3d3ccccccc7c7c7c6c6c6c5c5c5c7c7c7cbcbcb
+d2d2d2d8d8d8dfdfdfe6e6e6ecececf1f1f1f4f4f4f7f7f7fafafafcfcfcfcfcfcfdfdfd
+fffffffffffffefefeffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffefefefefefdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfdfefefefefffffffdfdfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfdfdfefefeffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffefefefefefefefefefefefefefefe
+fefefefefefefdfdfdfdfdfdfdfdfdfdfdfdfcfcfcfbfbfbfbfbfbf9f9f9f4f4f4eeeeee
+e7e7e7e3e3e3e6e6e6ebebebf0f0f0f3f3f3f3f3f3f1f1f1efefefefefefeeeeeeeeeeee
+edededececececececedededebebebe9e9e9e7e7e7e5e5e5e3e3e3e2e2e2e1e1e1e0e0e0
+dedededcdcdcdbdbdbdbdbdbdadadad9d9d9d8d8d8d7d7d7d5d5d5d5d5d5d5d5d5d5d5d5
+d5d5d5d5d5d5d4d4d4d4d4d4d5d5d5d5d5d5d6d6d6d5d5d5d6d6d6d6d6d6d6d6d6d6d6d6
+d8d8d8d9d9d9d8d8d8d6d6d6d5d4d4d6d6d6d8d8d8d8d8d8d9d9d8d8d8d8d8d8d8d8d8d8
+d8d8d8dadadadddddde2e2e2e6e7e6e7e7e7e7e7e7e5e5e5e3e3e3e3e3e3e3e3e3e0e0e0
+dcdcdcd8d8d8d4d4d4d3d3d3d2d2d2d3d3d3d5d5d5d8d8d8dbdbdbdedededfdfdfdedede
+dededededededddddddddddddddddddcdcdcd9d9d9d4d4d4cececec8c8c8c6c6c6c3c3c3
+c4c4c4c6c6c6cacacacececed2d2d2d6d6d6dadadadcdcdcdedededfdfdfdedededddddd
+d9d9d9d5d5d5d3d3d3d0d0d0d0d0d0d1d1d1d4d4d4d8d8d8dcdcdce1e1e1e7e7e7ebebeb
+efefeff2f2f2f7f7f7fafafafcfcfcfdfdfdfefefeffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffffefefefefefefefefe
+fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+fefefefefefefefefefefefefefefefefefefefefeffffffffffffffffffffffffffffff
+fffffffffffffffffffefefefefefefdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfefdfefefefefffffffffffffffffffdfdfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefdfefefefefefefe
+fefefeffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffefefe
+fbfbfbf5f5f5eeeeeee8e8e8e4e4e4e7e7e7ebebebefefeff1f1f1f1f1f1f0f0f0f0f0f0
+efefefefefefeeeeeeeeeeeeefefefefefefeeeeeeededededededecececeaeaeae9e9e9
+e9e9e9e8e8e8e7e7e7e5e5e5e5e5e5e3e3e3e2e2e2e1e1e1dfdfdfdddddddbdbdbdadada
+d9d9d9d9d9d9d8d8d8d6d6d6d5d5d5d4d4d4d5d5d5d5d5d5d4d4d4d4d4d4d5d5d5d6d6d6
+d8d8d7d8d8d7d8d8d7d5d5d5d2d2d2d2d2d2d5d5d5d8d8d8dadad9d9d9d8d7d7d6d6d6d6
+d6d6d5d7d8d8dbdcdbe1e1e1e7e7e7eaeae9e9e9e9e8e8e8e7e7e7e7e7e7e6e5e5e6e5e5
+e4e4e4e2e2e1e1e1e1dedededadadad6d6d6d3d3d3d3d3d3d6d6d6d9d9d9dcdcdcdedede
+dfdfdfe0e0e0dededededededededededededcdcdcdbdbdbd9d9d9d7d7d7d5d5d5d3d3d3
+d1d1d1d1d1d1d3d3d3d6d6d6d7d7d7d7d7d7d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8dadada
+dcdcdcdededee2e2e2e5e5e5e9e9e9edededf1f1f1f3f3f3f6f6f6f8f8f8fbfbfbfcfcfc
+fdfdfdfefefeffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffffefdfefdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefefefefefeffffffffffffffffff
+fffffffefefefefefefdfdfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfdfdfefefefffffffffffffffffffffffffffffffdfdfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfefefefefeffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffefefefafafaf4f4f4eeeeeee7e7e7e3e3e3e2e2e2e4e4e4e5e5e5e6e6e6
+e8e8e8eaeaeaebebebedededeeeeeeeeeeeeeeeeeeefefeff0f0f0efefeff0f0f0efefef
+efefefefefefeeeeeeeeeeeeedededebebebebebebebebebeaeaeae9e9e9e7e7e7e5e5e5
+e4e4e4e3e3e3e3e3e3e0e0e0dedededcdcdcdbdbdbdadadad9d9d9d8d8d8d7d6d6d7d7d7
+d7d7d6d8d8d7d7d7d6d5d5d4d1d1d0cecececfcfcfd4d4d3dadad9dedfdedfdfdedfe0df
+e0e0e0e1e1e0e4e4e3e6e7e6e9e9e9ebecebebebebebebebeaeaeaeaeaeae8e7e7e9e8e8
+e9e8e7e8e8e7e7e7e7e6e6e6e3e3e3dededed8d8d8d3d3d3d2d2d2d3d3d3d6d6d6d8d8d8
+dbdbdbdddddddddddddddddddedededededededededededededededddddddcdcdcd9d9d9
+d4d4d4d0d0d0cbcbcbcbcbcbcccccccfcfcfd4d4d4d9d9d9dededee3e3e3e8e8e8ececec
+f0f0f0f3f3f3f6f6f6f8f8f8fafafafcfcfcfdfdfdfefefefefefeffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffffefdfefdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfdfefefefefefefe
+fdfdfefdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fefdfefefefefffffffffffffffffffffffffffffffffffffdfdfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfdfefefefeffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffefefefdfdfdf9f9f9f3f3f3ececece5e5e5e0e0e0dcdcdc
+dadadad9d9d9d9d9d9dadadadcdcdcdededee0e0e0e2e2e2e4e4e4e7e7e7e9e9e9ececec
+eeeeeeefefeff0f0f0f0f0f0f0f0f0f1f1f1f1f1f1f0f0f0f0f0f0efefefefefefefefef
+eeeeeeedededecececebebebeaeaeae9e9e9e8e8e8e6e6e6e4e4e4e2e2e2e1e0e0dedede
+dddddcdcdcdcdbdbdad9d9d8d6d6d5d2d2d1cececdcccccccfd0cfd7d7d7dededde5e5e4
+eaebebeeeeedefefefeff0efeeefeeeeeeedeeedededededececececececebebebebebeb
+ebebeaebeae9eaeaeaeaeaeae9e9e9e8e8e7e3e2e2dcdcdcd7d7d7d4d4d4d3d3d3d4d4d4
+d5d5d5d6d6d6d8d8d8d9d9d9dadadadcdcdcdcdcdcdcdcdcdadadad4d4d4cdcdcdc4c4c4
+bebebebcbcbcbfbfbfc7c7c7d1d1d1dbdbdbe4e4e4ebebebf1f1f1f5f5f5f7f7f7fafafa
+fcfcfcfdfdfdfefefeffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffffefdfefdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefdfe
+fefefefffffffffffffffffffffffffffffffffffffffffffdfdfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfefeffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffefefefcfcfcf9f9f9f5f5f5f0f0f0
+eaeaeae5e5e5e0e0e0dcdcdcd8d8d8d6d6d6d6d6d6d4d4d4d3d3d3d4d4d4d5d5d5d7d7d7
+dadadadededee1e1e1e4e4e4e7e7e7e9e9e9ecececeeeeeef0f0f0f1f1f1f2f2f2f3f3f3
+f3f3f3f3f3f3f2f2f2f1f1f1f1f1f1f1f1f1f1f1f1f0f0f0efefefeeeeeeedededececec
+eae9e9e8e8e8e6e6e6e5e5e4e2e2e1dfdfdedbdad9d5d5d4cfcfcfcccccccdcdcdd1d1d1
+d7d7d6dededde4e4e3e9eae9eeeeeef0f0eff0f1f0f1f1f0f0f1f1f1f1f0f1f0f0f0efef
+efefefefeeeeedededeeeeeeedeeeeecececebeaeae9e8e8e4e4e4dfdfdfdcdcdcdadada
+dbdbdbdcdcdcdedededfe0dfe0e0e0dedededadadad3d3d3c9c9c9bebebeb8b8b8b6b6b6
+bcbcbcc8c8c8d4d4d4e0e0e0e9e9e9f1f1f1f6f6f6fafafafcfcfcfdfdfdfefefefefefe
+fefefeffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffffefdfefdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfdfdfdfdfdfefdfefefefeffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffdfdfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfdfdfefdfeffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffefefe
+fcfcfcf9f9f9f7f7f7f4f4f4f0f0f0ededede9e9e9e6e6e6e2e2e2dfdfdfdbdbdbd9d9d9
+d6d6d6d5d5d5d5d5d5d5d5d5d5d5d5d6d6d6d8d8d8dadadadddddde1e1e1e5e5e5e8e8e8
+ebebebedededf0f0f0f2f2f2f4f4f4f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f4f4f4f3f3f3
+f2f2f2f2f2f2f1f1f1f1f0f0efefeeedececebeaeae9e9e9e5e5e5dfdfded9d9d9d1d2d2
+cbcbcbc7c7c7c6c6c6cacac9d2d2d1dadadae1e1e0e4e5e4e7e7e7e9e9e9eae9e9edeceb
+efefeef0f0eff0f0f0f1f1f1f1f1f1f1f1f0f0f0f0efefefefefeeececebeae9e9e6e5e5
+e2e3e3e1e1e1dfdfdfdbdcdcd5d6d6cdcdcdc5c5c5bdbdbdb9b9b9bbbbbbc2c2c2cdcdcd
+dadadae6e6e6efefeff5f5f5f9f9f9fdfdfdfefefefefefeffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffffefdfefdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfdfdfefdfefefefeffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffdfdfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefdfeffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffefefefdfdfdfcfcfcfbfbfbfafafaf8f8f8f6f6f6f4f4f4f2f2f2
+efefefececece9e9e9e6e6e6e2e2e2dfdfdfdcdcdcd9d9d9d7d7d7d6d6d6d5d5d5d6d6d6
+d6d6d6d8d8d8dadadadededee3e3e3e7e7e7eaeaeaeeeeeef1f1f1f3f3f3f5f5f5f6f6f6
+f5f5f5f6f6f6f5f5f5f5f5f5f4f4f4f4f3f3f3f3f3f3f3f3f3f3f3f2f1f1efefefececec
+e7e7e7ddddddd2d2d2c5c5c5bbbbbbbababac2c2c1c9c9c9cccccccbcccccacac9cececd
+d4d4d4d9d9d9dcdcdcdedededfdfdfdfdedededededcdddddbdbdbd8d8d8d4d4d4cecece
+c8c9c9c4c4c4c2c2c2c1c1c1c0c0c0c0c0c0c1c1c1c6c6c6cececed7d7d7e1e1e1ebebeb
+f3f3f3f8f8f8fcfcfcfefefefefefeffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffffefdfefdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfdfdfefdfefefefefffffffffffffffffffffffffffffffefefe
+fefefefefefefefefefefefefefefefefefefefefefefefefdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfdfdfefdfefefefeffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffffefefefefefefefefe
+fdfdfdfcfcfcfbfbfbfafafaf8f8f8f6f6f6f4f4f4f2f2f2eeeeeeebebebe7e7e7e4e4e4
+e1e1e1dddddddadadad8d8d8d6d6d6d5d5d5d6d6d6d7d7d7dbdbdbdededee3e3e3e9e9e9
+eeeeeef3f3f3f6f6f6f6f6f6f6f6f6f5f5f5f5f5f5f5f5f5f6f6f6f6f6f6f7f7f7f6f6f6
+f6f6f6f4f4f4f1f1f1e9e9e9d8d8d8c2c2c2b6b6b6b9b9b9bdbdbdbdbdbdc0c0c0c6c6c6
+cdcdcdd0d0d0d0d0d0d0d0d0cecececccccccacacac8c8c8c7c7c7c5c5c5c4c4c4c2c2c2
+c4c4c4c6c6c6cacacad0d0d0d6d6d6dbdbdbe1e1e1e8e8e8eeeeeef4f4f4f7f7f7fbfbfb
+fdfdfdfefefeffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffffefdfefdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfefdfefffffffffffffffffffefdfefefdfefefdfefefdfefdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfdfdfefdfe
+fefdfefefefefefefeffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffefefefefefefefefefdfdfdfcfcfcfafafaf8f8f8
+f7f7f7f5f5f5f2f2f2efefefececece8e8e8e4e4e4e1e1e1dddddddcdcdcdddddde0e0e0
+e5e5e5ebebebf1f1f1f6f6f6f8f8f8f7f7f7f6f6f6f6f6f6f6f6f6f8f8f8f9f9f9f8f8f8
+f7f7f7f7f7f7f7f7f7f8f8f8f6f6f6e8e8e8ccccccb2b2b2adadadb9b9b9ccccccdadada
+e1e1e1e2e2e2e3e3e3e4e4e4e5e5e5e3e3e3e2e2e2e0e0e0e0e0e0e0e0e0e1e1e1e2e2e2
+e5e5e5e8e8e8ecececf0f0f0f3f3f3f6f6f6f9f9f9fbfbfbfcfcfcfefefefefefeffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffffefdfefdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfefdfefefdfefefdfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfefefefefefefefefefefefeffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffefefe
+fefefefefefefefefefdfdfdfcfcfcfbfbfbfafafaf8f8f8f6f6f6f2f2f2eeeeeeeaeaea
+e7e7e7e8e8e8ecececf1f1f1f6f6f6f8f8f8f8f8f8f5f5f5eeeeeee9e9e9ecececf6f6f6
+f9f9f9f9f9f9f8f8f8f8f8f8f9f9f9f6f6f6e4e4e4bbbbbba0a0a0afafafd1d1d1e3e3e3
+e5e5e5e3e3e3e6e6e6edededf5f5f5f9f9f9fafafaf9f9f9f9f9f9f9f9f9f9f9f9fafafa
+fbfbfbfcfcfcfcfcfcfdfdfdfefefefefefeffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffffefdfefdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfdfdfefefefefefefefefefefefefefefe
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffffefefefdfdfdfafafa
+f6f6f6f2f2f2efefefefefeff1f1f1f4f4f4f8f8f8f8f8f8f2f2f2e4e4e4d7d7d7dbdbdb
+edededfafafafcfcfcfbfbfbfafafaf7f7f7e9e9e9c7c7c7a3a3a3abababcececee4e4e4
+e3e3e3d8d8d8d3d3d3ddddddebebebf6f6f6fcfcfcfefefeffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffffefdfefdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfdfefdfdfefdfdfefdfdfefdfdfefefefeffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fefefefcfcfcf8f8f8f2f2f2efefefefefeff3f3f3f8f8f8fbfbfbf8f8f8ebebebd5d5d5
+c5c5c5cbcbcbe1e1e1f3f3f3fbfbfbfcfcfcf7f7f7e3e3e3c1c1c1b2b2b2c5c5c5dcdcdc
+e4e4e4dcdcdcccccccc7c7c7d1d1d1e0e0e0efefeff8f8f8fdfdfdfefefeffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffffefdfefdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefdfdfffefeffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffefefefafafaf4f4f4f0f0f0efefeff1f1f1f6f6f6fbfbfbfcfcfcf4f4f4
+ddddddbdbdbdabababb3b3b3cccccce5e5e5f5f5f5f9f9f9eeeeeed6d6d6c7c7c7cdcdcd
+d9d9d9e0e0e0dcdcdcd0d0d0c6c6c6c9c9c9d5d5d5e5e5e5f1f1f1f9f9f9fcfcfcfefefe
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffffefdfefdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefefefefefefefefefefefe
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffdfdfdfbfbfbf7f7f7f1f1f1eeeeeeeeeeeef2f2f2f7f7f7f9f9f9
+f8f8f8ecececd4d4d4bbbbbbb1b1b1b8b8b8cacacadededeeeeeeef1f1f1e4e4e4d1d1d1
+ccccccd4d4d4dddddddededed6d6d6ccccccc7c7c7cdcdcddadadae8e8e8f3f3f3fafafa
+fdfdfdffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fefefefefefefefefefefefefdfdfefdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfcfbfcfcfbfcfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfdfd
+fefdfefefdfefefdfefefdfefefdfefefdfeffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffdfdfdf9f9f9f2f2f2ececece8e8e8e7e7e7eaeaea
+edededf2f2f2f5f5f5f2f2f2e9e9e9ddddddd3d3d3cfcfcfd3d3d3dcdcdce5e5e5e4e4e4
+d5d5d5cbcbcbcfcfcfd8d8d8dedededbdbdbd2d2d2c9c9c9c7c7c7d0d0d0dededeececec
+f7f7f7fbfbfbfefefefefefeffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffefefefdfdfefdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfcfbfce6e5e6cac9cac2c1c2c0bfc0c2c2c2ecebecfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefdfefefdfefefdfefefdfefefdfefefdfe
+fefdfefefdfefefefefefefefefefefefefeffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffefefefcfcfcf7f7f7efefefe7e7e7e1e1e1
+dcdcdcdcdcdce0e0e0e6e6e6edededf2f2f2f4f4f4f1f1f1ebebebe4e4e4dfdfdfe4e4e4
+e4e4e4dcdcdcd2d2d2d1d1d1d7d7d7dcdcdcdbdbdbd3d3d3c8c8c8c1c1c1c7c7c7d4d4d4
+e4e4e4eeeeeef5f5f5f9f8f8fcfcfcfdfdfdfefefefefefefefefeffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffefdfefdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfde8e7e893908e5a53444b422f42392738342b8a8a89f8f7f8fdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefefeffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffffcfcfcf8f8f8f2f2f2
+ebebebe4e4e4e0e0e0dddddddddddde0e0e0e4e4e4e9e9e9efefeff2f2f2f2f2f2f0f0f0
+f0f0f0f0f0f0ebebebe4e4e4e1e1e1e0e0e0e0e0e0dededed8d8d8cfcfcfcacacacacaca
+d0d0d0d8d8d8dfdfdfe6e5e5ececebf0f0eff3f3f2f5f5f5f7f6f6f8f8f8f9f9f9fafafa
+fbfbfbfcfcfcfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfefefefefefefefefe
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffefefefdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdc4c3c3847a64a4863ea9873394762c7561312a2823e6e6e7fdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfcfbfcf2f1f2
+dedddecccbcccbcacbc6c5c6c7c6c7cfcfcfe6e5e6f9f9fafdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefefeffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffefefefefefe
+fcfcfcfafafaf7f7f7f3f3f3eeeeeeeaeaeae5e5e5e2e2e2e0e0e0e0e0e0e2e2e2e7e7e7
+eaeaeaedededf0f0f0f2f3f2f3f3f3f2f2f2f0f0f0eeeeeeecececebebebe7e7e7e2e2e2
+dcdcdcd9d9d9d7d7d6d9d9d8dcdcdcdededee1e1e0e3e3e3e4e3e3e5e5e5e7e7e6e9e9e9
+ebebeaedededf0f0f0f1f1f1f2f2f2f3f3f3f3f3f3f3f3f3f3f3f3f4f4f3f5f5f5f6f6f6
+f7f7f7f9f9f9f9f9f9fafaf9fbfbfafbfbfbfcfcfcfdfdfdfefefefefefefefefeffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffffefdfefdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdc5c4c3a18f66c4992abc8f17a07a138b6d1c332e24dcdcdcfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdf4f3f4d1d1d1b4b3b3999895
+8f8c83857e6f94897195886c8f846c847e72898884a7a6a6dedddefbfafbfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefefeffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffefefefdfdfdfcfcfcf8f8f8f4f4f4eeeeeee8e8e8e3e3e3dfdfdf
+dcdcdcdcdcdcdddddddedfdedfdfdfe2e2e2e6e6e5e7e7e7e9e9e8ebebebeeeeeef1f1f1
+f1f1f1efefefebebebe9e9e9e8e8e8e7e7e7e6e6e6e5e5e5e3e3e2e1e1e0dfdfdedfdfde
+dedededfdfdfe1e1e1e2e2e2e4e3e3e5e5e4e6e6e5e5e5e4e4e4e4e3e3e3e3e3e2e3e3e3
+e5e5e5e8e8e7e9e9e8eaeaeaebebeaedececeeeeeeefefeff1f1f0f3f3f2f5f5f4f7f7f6
+f8f8f8fafaf9fafafafbfbfbfcfcfcfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfefefe
+fefefefffffffffffffefefeffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffffefefefdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdc6c5c4a19066c1972bb98d1c9f7a188b6d1d373227ddddddfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdf1f0f1c4c3c3a2a09f8f897b978662a38741
+b99433c49d36cfa849cea955cca74ebf9b3ca3863e82745776746fbfbebff6f6f6fdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefefeffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffefefefdfdfdfbfbfbf7f7f7f3f3f3
+eeeeeee9e9e9e3e3e3dededed8d8d7d3d3d3d2d2d1cfd0d0cfcfcecfcececfceced5d4d4
+e0dedeeaeae9edededefefeff0f0f0f2f2f2f2f2f2f3f3f3f2f2f2f1f1f1efefefededed
+ecececebebebebebebececececececededededededecececeaeaeae8e8e8e4e4e4e1e1e1
+e1e1e1e2e2e2e4e4e4e4e4e4e3e3e3e3e3e3e1e1e1dfdfdfdededee0dfdfe2e2e1e4e4e3
+e6e6e5e7e7e6e9e9e8ebebeaeeeeedeeeeeeefefeff0f0f0f0f0eff1f1f0f2f2f1f3f3f2
+f4f4f4f6f6f6f8f8f8f8f8f8fafafafbfbfbfdfdfdfdfdfdfefefefefefeffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffffefdfefdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdc7c6c4a19067c19829b98e1aa07b168b6d1c363126dededefdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfcfbfcf2f1f2c8c7c79d9c998c8472a08a52c59e3ae1b031f2bb28
+deb144a88d42927d488f7d53958151a98e4acaa64cd3a94191793e5d5950bdbdbdf8f7f8
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefefeffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffefefefefefe
+fdfdfdfbfbfbf8f8f8f5f5f5f1f1f1ececece7e8e7e3e3e2dfdfdedbdbdad7d6d6d4d3d2
+d5d4d3dadad9d7d6d6d2d1d1d2d2d1d5d5d4d7d6d6dddddde2e2e2e5e5e5e8e8e8ececec
+eeeeeeefefefefefefefefefefefeff0f0f0f0f0f0f1f1f1f2f2f2f3f3f3f3f3f3f3f3f3
+f3f3f3f2f2f2f3f3f3f2f2f2f2f2f2f0f0f0eeeeeeeaeaeae8e8e8e6e6e6e4e4e4e3e3e3
+e1e1e1e0e0e0e0e0e0e1e1e0e2e2e2e2e2e2e3e3e3e4e4e4e3e3e3e2e2e2e1e1e1e1e1e1
+e3e3e3e4e4e4e6e6e5e7e7e7eaeaeaececebedededf0f0eff3f3f3f6f6f6f9f9f9fbfbfb
+fdfdfdfefefefefefefefefefffffffffffffffffffffffffffffffefdfefdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdf1f0f1d4d4d4bcbcbcb4b4b4b4b4b4b5b4b5b5b4b5b5b4b5b5b4b5b5b4b5b5b4b5
+b5b4b5b5b5b5b3b3b38c8b8a91805ac09936b89029a17e238c6f273632288b8a8abab9ba
+b7b7b7b9b8b9b9b9b9babababbbbbbbcbbbcbcbbbcbcbbbcbcbbbcbcbbbcc5c5c5e1e1e1
+f9f8f9fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdf5f4f5d7d7d7aaaaaa82807e746d5f937f4cb89433d5a628e8b221f1b924bc9b48
+65593f83817aafaeacbfbebdbcbbb9a6a39e8a816ba98f4fd6aa3b957c3f59564fd3d2d3
+fcfbfcfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefefeffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffefefefefefefdfdfdfcfcfcfafafaf8f8f8f7f7f7f5f5f5f1f1f0
+efefeeebebebe5e5e5dededdd9d9d9d6d6d5d2d2d1cfcfcfcdcdcdcac9c9cccbcbcfcfce
+d1d1d1cdcdcdcbcac9c9c8c8c7c7c6c8c7c7c8c8c8cacacad1d1d1dbdbdbe0e0dfe2e2e2
+e3e3e3e3e3e3e4e3e3e4e4e4e9e9e8edeeedf1f1f1f3f3f3f4f4f4f4f4f4f4f4f4f4f4f4
+f3f3f3f2f2f2f1f1f1f0f0f0f0f0f0f0f0f0f1f1f1f0f0f0eeeeeeebebebe7e7e7e4e4e4
+e2e2e2e1e1e1e0e0e0e0e0e0e0e0e0e0e0dfdfdfdfdedededfdfdfe2e2e2e7e7e7ececec
+f1f1f1f5f5f5f8f8f8fbfbfbfdfdfdfefefefffffffffffffffffffefdfefdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfcfbfcfcfbfcfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdefefef
+b3b3b3807d7980796a91866b94876a94876a94876a94876a94876a94876a94876a94876a
+94876a94876b93866a908365ac9664cbab60c9a85cc0a058b799588c7c5786795e8b8065
+8479617d735c756c576d6452635c4c585345524d41504b3f4f493f4e493f4c4840474543
+777675c7c6c7fbfafbfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdf6f5f6e1e1e1bebdbe
+9594937978745a574f69604a7562368d6f22ac861ec59820d6a521e5b021b697495a5344
+a1a09fe4e4e4f5f5f5fafafaf8f8f8efefefd0d0d0969289a99057dbae3d7b693d8e8d8b
+f0eff0fdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefefeffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffefefefefefe
+fefefefbfbfafafaf9f8f8f8f5f5f4f2f2f1f0f0efeeeeedeaeaeae7e7e7e3e3e3dfdfde
+dbdbdbd5d5d4d0d0d0cecdcdcdcdcdcdcccccdcdcccccbcbcecdcdcfcfcecccbcac6c5c5
+c2c1c1bdbdbdbab9b9bfbebec5c5c5c9c9c9cfcfcfd2d1d1d4d3d3dadadae0e0e0e2e2e2
+e4e4e4e7e7e7ebebeaefefefefefefefefefefefeff1f1f1f3f3f3f3f3f3f2f2f2eeeeee
+ebebebe7e7e7e5e5e5e5e5e5e6e6e6e6e6e6e5e5e5e2e2e2ddddddd9d9d9d9d9d9dadada
+dddddde1e1e1e6e6e6ebebebf0f0f0f5f5f5f9f9f9fcfcfcfdfdfdfdfdfdfcfcfdfdfcfd
+fdfcfdededed9a99997b7a795b5a597d7c7c898888888787888787888787888787888787
+8887878887878887878584848382828584848887878d8c8c8d8c8c8d8c8c8c8b8b8f8e8e
+a5a5a5bbbbbbc1c0c1c8c8c8cac9cac9c9c9c9c9c9c9c9c9c9c9c9c7c7c79e9d9e62615e
+9c9075c8a654e2b236e8b52ce9b52ce9b52be9b52be9b52be9b52ae9b52ae9b529e9b428
+e9b427e9b427e9b326eab425edb82befbb32efba33eeb931ebb72fe6b126ddaa24d0a122
+c1951fad851d9573197d6116664f1253400f44350d3d2f0b3a2d0b3a2d0b3a2d0c3c3011
+3c342433312f5c5c5cb4b4b4cfcfcfcececeb5b4b58f8e8e666666484846524f48565043
+544a35584b2a594615644e11785c138e6d17a6801bbb9120d1a01cc69f42554b369a9a99
+f1f1f1fffffffffffffffffffffffffffffffcfcfcd8d7d78b877ebf9b42c4a253544f42
+dad9dafcfbfc
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefefeffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffefefefefefefefefefdfcfcfbfcfcfbfafaf9fafafa
+f7f7f6f6f6f6f4f4f4f2f2f2f2f2f2f2f2f2f2f2f2f2f2f1f1f1f1efefeeedececeae9e9
+e5e5e5e1e1e1dedededddddddcdcdcd8d8d8d5d4d4d1d0d0cdcdcdcdcdcdcbcbcac5c5c4
+c3c1c2c3c1c1c8c8c8cacacac7c7c7c6c6c6c6c6c6c8c8c7cac9c9cccacad1d0d0d4d4d4
+d3d3d3d1d1d1d4d4d4dadadae1e1e1e6e6e6e9e9e9e9e9e9e6e6e6e3e3e3e0e0e0dedede
+dddddddbdbdbdadadadad9d9dddcdce3e3e3eaeaeaf1f1f1f7f7f7fbfbfbfcfcfcfdfcfd
+faf9faa3a2a1877c62b59a5ebc9d5cb99c5fb99d60b99e60b99e60b99e60b99e60b99e61
+b99e61b99e61ba9e61b79c61a99360a38e5ea08c609e8b619788619485618d7f5f87795e
+81765d7e745e78705b726b59726b58726b58726b58726b58726b58726a586e6654837659
+d0b26ce6bf66e1bb66e0bb67e0bb68e1bd69e1bd6be2be6ce3bf6fe4c171e4c274e4c376
+e6c579e7c67ce8c880e9ca83eacc87eace8aeacf8be9ce8be8cd8ae7cb88e3c785dfc280
+d8bb7aceb373c3a96bb79d63aa925aa0895397814e917b498c7646897343867141846d3d
+816b3b7465445c55465953455650434f493e4641373d382f36322a504936675836655531
+62532e62522f624f27604a126f55128566179c781bb58c1ccc9d2189744365635fe4e4e4
+fffffffffffffffffffffffffffffffffffffffffffdfdfdb1b1b1998a67deb240655837
+b2b2b1f9f8f9
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefefeffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffefefefdfffffffffffffffffffffffffffffffefefe
+fdfdfdfcfcfcfbfbfbfbfbfbfcfcfcf9f9f9f9f9f8f6f6f6f5f5f5f1f1f0ededede9e9e9
+e5e5e4e2e2e1dfdfdfdbdbdbd7d7d7d5d5d5d4d4d4d4d4d4d2d3d2d0d0d0d0d0d0d0d0cf
+cdcdcdcbcbcacbcacacecececfcfced2d1d0d3d1d1d7d6d6dededddfdfdfdfdfdfe0e0e0
+e0e0e0e0e0e0dcdcdcd9d9d9d5d5d5d5d5d5dcdcdce4e4e4eeeeeef6f6f6fbfbfbfdfcfd
+f6f5f6aea797d2a635f5ba1af6be28f6bf2ef7bc22f6bb1cf6bb1af6bb1af6bb1af6bc1b
+f6bb1bf6bb1bf6bb1bf6bc1af6bc1bf6bc1bf7bc1cf7bc1cf7bc1cf8bc1cf8bc1ef8bc1e
+f8bd1ef8bd1ff8be22f8bf26f8bf26f8bf27f8bf27f8bf27f8bf27f8bf29f8c02bf8c02d
+f6c033f5c039f5c03cf6c140f6c346f7c44bf7c753f7c95ef7cb6af7cd73f8d17cf8d584
+f9d88df9db96fadfa0fbe2a9fbe4b1fbe7b7fce9bcfceabffceabffdeabdfce9bafce6b3
+fce4abfce1a2fbdd99fbda8ffad787fad37ef9d076f8cd6df4c760eebf53e6b749d9ad3e
+cba034bb9328a9841f967419856616745913664e115b460f523e0c49370a46360c47360e
+47360e47370f53431f6553296950117c5f15937219ad8418b79132584c33969695f4f4f4
+ffffffffffffffffffffffffffffffffffffffffffffffffd8d8d88d887dd2a735877446
+888784f5f4f5
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefefeffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffefefefefefefefefefdfdfd
+fcfcfbfcfcfbf9f9f9f9f9f9f7f7f7f6f6f6f5f5f4f5f5f4f5f5f4f4f4f3f2f2f1f0f0ef
+eeeeedededecedededebebeaeaeae9e6e6e5e1e0dfdddcdcd8d8d7d3d3d2d5d4d3d6d6d5
+d7d7d7d6d6d6d3d3d3d0d0d0cfcfcfd2d2d2d9d9d9e3e3e3ecececf4f4f4fafafafdfcfd
+f3f2f3aba290c59d35e1af28e0af2adfad2be3b029e3b028e3af28e4b028e5b128e7b328
+e6b228e6b127e8b328e9b429ebb629ecb729eeb829f0b92af2bb29f3bc29f4bc29f6be29
+f6bf29f7bf29f8bf28f8bf27f8bf27f8bf27f8bf28f8bf28f8c029f8bf2bf8c02cf8c02d
+f8c02ff8c032f8c135f8c239f8c33ef8c544f9c74cf9ca57f9cc65f9ce72fad27afad582
+fad88dfbdd97fce1a0fce3aafce6b2fce8bafdebbffdebc1fdebc1fdebc0fce9bbfce6b4
+fce4abfce1a2fbdc98fad98ef8d484f6ce7af2c970edc363e7bb54dfb247d4a93cc69c31
+b79028a7822296741c846617735813654e115a450e503d0c48370b46350a44330a43320a
+43320a42310a4b3b1464532a644e13765a138d6c18a67f16a5853748402fb0b0b0f9f9f9
+ffffffffffffffffffffffffffffffffffffffffffffffffe8e8e88d8a85caa4428b784b
+7f7d7af4f3f4
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfdfefdfdfefdfdfefdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefefeffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffefefefffffffefefdfefefdfefefdfffffefefefefdfdfcfdfdfc
+fdfdfcfdfdfdfdfdfdfcfcfbfcfcfbfafafaf9f9f9f7f7f7f4f4f4efefefe9e9e8e5e4e3
+e2e1e1dedfdfdcdcdbdbdbdbdcdcdcdededee5e5e5ebebebf2f2f2f7f7f7fbfbfbfdfcfd
+eeeeee9f9889a8862fbc9120bd9324c19625c59924c59924c49824c79a22ca9c22cb9c23
+c99b22c99b22cb9d23cea024d2a324d6a625daa926deab26e2ae27e5b128e8b328ebb529
+eeb829f2bb2af4bc2bf5be2bf7bf2bf8c02bf8c02bf8c02bf8c02bf8c02cf8c02df8c02e
+f7c031f7c034f7c136f7c23af7c33ff8c548f9c851f9cb5df9ce6bfad075fad47efad787
+fbda92fbdf9dfce2a8fce5b1fde9bafdecc3fdedc8fdeecbfdeecbfdeec9fdecc4fdeabc
+fce6b3fbe3a9fadd9df8d892f6d387f2cd7ceec771e7c065deb556d3ab47c89f3bb79130
+a6832796752085671b745a16664f125b4610523f0e4b390d47360b44330b44330b44330b
+44330b44330b4d3e18615027614b107157138668179f7a15a483324b422fa4a3a3f7f7f7
+ffffffffffffffffffffffffffffffffffffffffffffffffe0e0e08c8881cea53d8a7648
+848380f5f4f5
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefefefffffffffffffefefefefefe
+fefefefefefefefdfefdfdfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefefeffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffefefefdfdfdfdfdfdfbfbfb
+f8f8f8f5f6f6f3f4f4f2f2f2f2f2f2f2f2f2f5f5f5f8f8f8fafafafcfcfcfdfcfdfdfcfd
+f5f4f5aaa8a383724c8a6e258e70219072238f71259173249475249473219a78229f7b22
+9d791e9b781a9f7a19a37e19a9821aaf871bb68c1ebc9120c29622c89a23cd9f24d3a324
+dba925e2af27e8b428edb729f1ba2af3bc2af5be2bf6be2bf7bf2bf8c02cf8c02df8c02f
+f8c031f8c134f8c136f8c33af8c440f9c649f9c953f9cb5ff9ce6dfad077fad481fad88b
+fbdc95fbe0a1fce4acfce7b7fdebc1fdeec8fdefcefdf0d2fdf1d2fdefcffdeecafdebc3
+fbe7b8fae3acf9dea1f7d995f3d188edca7ce8c370dfb964d4ad54c8a146b99438a7842c
+96752486681d765c186850145c471152400f4b3a0d47370c46350b44330b44330b44330b
+44330b44340c5344205b4a205d470e6e5413816416977316a883255f52337b7a78ededed
+ffffffffffffffffffffffffffffffffffffffffffffffffc2c2c28b8270d7aa367c6c41
+9f9e9cf7f6f7
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefefeffffffffffffffffffffffff
+fffffffffffffffffffefefefefefefefdfdfefdfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fefdfefefefefefefefefefefefefefefefefefefefefdfdfefdfdfefdfdfefdfdfefdfd
+fefdfdfefdfdfefdfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfdfd
+fefdfdfefdfdfefdfdfefdfdfefdfefefefeffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffefefefefefefdfdfdfdfdfdfdfdfdfefefefefefefefefefefefefefdfefdfcfd
+fdfcfde0dfe09f9e9c7c786d746b596f654e6f654d71674f72685072685074684e6e5f3f
+61512b6150236552206b551c745b1c7c611a86681a8e6e179471179a7618a27d1bac851e
+b78d1fc39722cfa024d9a825e1af27e8b328edb729f0ba29f3bc2bf5bf2df7bf2df7c02e
+f8c031f8c134f8c236f8c33af8c441f9c649f9c953f9cc60f9ce6efad078fad481fad98c
+fbdd97fbe1a3fce4affce9b9fdecc4fdeeccfdf1d2fdf2d6fdf2d6fdf1d3fdefcdfcecc5
+fbe8baf9e3aef7dda3f4d795eece87e8c57ae0bc6dd5b161c9a450b99541a98833977728
+856820765c1a6951155d481254410f4d3b0d48380c46360b45340b44330b44330b44330b
+44330b4738125849265542145b460e6a51127b5f158e6d17a37d1886703a4c4941c1c0c0
+fcfcfcffffffffffffffffffffffffffffffffffffededed989795a58d54d8af48685d43
+cdcdcdfbfafb
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefefeffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffefefffefefefefefefdfefdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fefdfefffffffffffffffffffffffffffffffffffffffefefffefefffefefffefefffefe
+fffefefffefefffefefefefefefdfefefdfefefdfefefdfefefdfefefdfefefdfefefdfe
+fefdfefefdfefefdfefefdfefefdfefefdfefefdfefefdfefefdfefefdfefefdfefefdfe
+fefdfefefdfefefdfefefdfefefdfefefdfefefdfefefdfefefdfefefdfefefefefffefe
+fffefefffefefffefefffefeffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffefefefdfcfd
+fdfcfdfdfcfdf6f5f6dbdadbc2c1c2b6b5b5b5b5b4b7b7b6b7b7b6b9b9b8b5b4b3a09e9d
+8b8a8888878383817c7d7a737872666f6654685b3e58471d65511c6f571a765b147e6114
+88691796741aa6801db58b1fc29622ce9f24d8a725e0ad27e7b329edb82bf1bb2df4bd2d
+f6bf31f7c133f8c236f8c33bf8c442f9c649f9c954f9cc60f9ce6ffad178fad581fad98c
+fbdd98fbe1a4fce5b0fce9bbfdedc4fdefccfdf1d4fef3d7fef3d7fdf2d4fceecefbecc5
+fae7baf7e1aef4dba1efd393e9ca84e0c076d6b368c9a75cbb994ca9883a997a2f866a24
+765d1c6952165f4a135643114e3c0e49380d47360c46360b45340b44330b44330b44330b
+43330b51422056461f4f3c0c5a450f664e11755a148466169572159f7e295c4f325d5c59
+c8c8c8fcfcfcfffffffffffffffffffefefeeaeaeaa3a3a2857a62d3a93da98e4a7b776f
+e8e8e8fdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefefeffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffffefefefefdfefdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fefdfeffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffefefefdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfcfbfc
+faf9faf6f5f6eeeeeee4e3e4d4d4d4c3c2c3b0aead8785816e6a5f584f3b4a3c1b594718
+634d126c5210785d1387681795731aa47f1cb38a1fc19521cea024dbaa27e3b02aeab62c
+f0bb2ff3be33f6c035f7c23bf7c441f9c649f9c953f9cb60f9ce6efad178fad481fad98c
+fbdd97fbe1a4fce5affce9bafdecc3fdeecbfdf1d2fdf2d5fdf2d5fcf0d2fbedcbfae9c3
+f8e5b8f5deabf0d79eeace8fe2c480d7b871caa962bb9b55ab8b45997b35886d29775e20
+6953195f4a145743124f3d104a390d47370c47360c46360b45340b44330b44330b443309
+4d3d1b5546234c3b0f4e3c0c59450f624c116e55137a5e1587681696731591752c594e33
+5b5a58a4a4a4cececee1e1e1ddddddbfbfbf92918f7d735dbb9740caa44373684ebcbbba
+f8f7f8fdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefefeffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffefdfe
+fefdfefefdfefefdfefdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fefdfeffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffefefefdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfaf9faecebeccfcfcfb1b0af83817d5d584c
+463c254b3c17594511614a0d6a5211765b14846616937119a6811db88f21c89b24d6a628
+e1af2de9b631efbb34f3bf39f5c240f7c548f9c852f9cb5ef9ce6dfad077fad480fad88a
+fbdc95fbe0a1fce4abfce7b7fceac0fcecc7fcefcdfcf0d0fcefcffbedcdfaebc7f8e7bd
+f5e2b3f0daa5ebd198e2c688d8bb79cbad6abd9e5bac8f4d9a7e3c896e2f7a61246a541b
+604b17584413503e104b3a0f47370d47360c47360c46360b45340b44330b43320a493915
+5647274c3c1348360a4f3d0d57430e5e4910664e116f5513785d14836515906e16917427
+6c5a32655d4d726f697d7b78827f7a7f7867957f4bc59f3ec29d4083744fa09e9beeedee
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefefeffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffefdfefefdfefefdfefefdfefefdfefdfdfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fefdfeffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffefefefdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdf9f8f9e7e6e7c8c7c7
+9897955e5b52423926483915503d0c55410c5e4810695112795d158b6b19a07b1db48c21
+c69a26d5a62ce1b031eab836f0bd3ef4c246f7c650f8c95cf9cd6bf9cf75fad37efad787
+fbda92fbde9cfce2a7fce5b1fbe8b9fceac0fcecc5fbecc8faebc7faebc5f8e6bef5e2b6
+f1dcaaebd39de3c98ed8bd7fcbb06fbda160ad91529b80448a71357a62296d5720614c18
+5946155240114c3b1049380e47360c47360c46360b45350b44330b43320a493916504122
+4a3a1446350a48370a4e3b0b54400b59440b5e470b634b0c6a510d72580e7d5f0f8a690e
+94721c9474219275278e7949a3863ebb9531c49f43ad924f7f7459a2a09deae9e9fcfbfc
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefefeffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffefefefdfefefdfefefdfe
+fefdfefdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fefdfeffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffefefe
+fdfdfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfbfafb
+efeeefd3d2d2969594514d4340371f49390e4a380a4e3c0d58430f654e12755a15896a19
+9f7b1eb48c25c69b2ad6a830e1b239eaba42f0c04bf4c657f7ca66f8cd71f9d179fad583
+fad98dfbdc96fbdfa0fbe2a8fbe4b0fae7b8fbe8bcfae8bef9e7bdf7e5baf3e0b3f0dbab
+e9d39fe2c992d7bd83cbb074bda164ad92569d83498b733b7c642e6e5823634e1c5a4716
+5441134e3d114a390f47370d47360c47360c46360b45340b42330b4b3c1a534424483811
+4534074a390a4b3a0d4d3c124e3f1850401e50411f4a3d1e493d1e4f43235648275f502a
+68582e725f3279663676684782704589764782765a8f8b82c2c1c0edecedfcfbfcfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefefeffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffefffffefffffefffefdfefdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fefdfeffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fdfdfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfcfbfcf0eff0cccbcb73716d37322647381547360847350b4d3b0e56430f634d12
+755b16896b1c9f7c22b48d28c69b31d5a93ae1b343e9bc4feec25df2c96bf6cc74f7d17d
+f8d586f9d88ff9db98f9dea0f9e0a7f9e2adf8e2b0f6e0b1f3deb0f1dcadecd6a4e6cf9b
+dec690d4bc83c8ae74baa166ab92579b824a8b733e7c65326f592764501f5c4919564315
+513f114d3c1149380e47370d47360c47360c47360a48360b4b3c1a544523504017493b1c
+3f361d322b1b302a1e3c372d5b574e66635d7977728d8c889795929b99969f9d9aa19f9c
+a1a09ca2a09ca19f9a9f9d99a6a4a0c2c1bed8d7d7e9e8e9f8f7f8fdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefefeffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffffefefefefefefefefe
+fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+fffefeffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fdfdfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfafafaedecec9c9b9b45423b41372048370a47350949380c4e3c0e
+594510664f14775d198b6d1ea07d25b48e2ec59d39d2a944dcb351e4bd5fe9c26bedc773
+f0cb7bf1d084f2d38cf3d593f2d799f2d99ff1d9a1eed6a1ebd4a0e7cf9be1c993d7c089
+ceb67ec2aa71b69d64a78f5799804b89723f7c6635705b2b6651215e4a1b584617534113
+4e3d114c3b1049380e47370d47360c4736094536104137224a422e3c352529251d5a5852
+80807da8a7a6c7c7c7dadadae8e7e7edecedf0efeff2f2f2f4f3f4f4f3f4f5f4f5f5f4f5
+f5f4f5f5f4f5f4f3f4f4f3f4f5f4f5f9f8f9fcfbfcfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefefeffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fdfdfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfefdfefefefefaf9fad4d4d45554532f2a204b3b1747350847370b
+49390d513f0f5b4713675016765c1b886b219a7a2aab8a34ba9640c6a14dd0ac5bd6b363
+dcb96ce0be74e2c37ce4c582e4c687e3c78be1c88ddec68ddac18ad4bd85cbb37dc2aa74
+b89f69ab945e9e8753917a48846e3e7964356e592b6551235e4b1d594619554315513f12
+4d3c114a390f48370d47360b47370b413417221e151414135554539e9e9dd8d8d8f4f3f4
+f9f8f9faf9fafcfbfcfcfbfcfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefefeffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fdfdfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfefdfeffffffffffffffffffffffffffffff919191484541453c2449380e
+47360b48370c4d3b0f5341115b4714665018735a1d8066258f722d9c7e37a78942b0924e
+b89956bfa05dc4a765c7ac6ac9af6fcaaf73c8ae74c4ab73bfa770b9a16cb09863a8905d
+9c8654927c4b8872437e683b7460346c592c665225604c1f5a481a5643165341134f3e11
+4c3b0f4a390d47360c443613342d20333231767676cfcfcff7f7f7fdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefdfefffefffffefffffefffffeff
+fffefffffefffffefffffefffffefffffefffffefffffefffffefffffefffffefffffeff
+fffefffffefffffefffffefffffefffffefffffefffffefffffefffffefffffefffffeff
+fffefffffefffffefffffefffffefffffefffffefffffefffffefffffefffffefffffeff
+fffefffffefffffefffffefffffefffffefffffefffffefffffefffffefffffefffffeff
+fffefffffefffffefffffefffffefffffefffffefffffefffffefffffefffffefffffeff
+fffefffffefffffefffffefffffefffffefffffefffffefffffefffffefffffefffffeff
+fffefffffefffffefffffefffffefffffefffffefffffefffffefffffefffffefffffeff
+fffefffffefffffefffffefffffefffffefffffefffffefffffefffffefffffefffffeff
+fffefffffefffffefffffefffffefffffefffffefffffefffffefffffefffffefffffeff
+fffefffffefffffefffffefffffefffffefffffefffffefffffefffffefffffefffffeff
+fffefffffefffffefffffefffffefffffefffffefffffefffffefffffefffffefffffeff
+fffefffffefffffefffffefffffefffffefffffefffffefffffefffffefffffefffffeff
+fffefffffefffffefffffefffffefffffefffffefffffefffffefffffefffffefffffeff
+fffefffffefffffefffffefffffefffffefffffefffffefffffefffffefffffefffffeff
+fffefffffefffffefffffefffffefffffefffffefffffefffffefffffefffffefffffeff
+fffefffffefffffefffffefffffefffffefffffefffffefffffefffffefffffefffffeff
+fffefffffefffffefffffefffffefffffefffffefffffefffffefffffefffffefffffeff
+fffefffffefffffefffffefffffefffffefffffefffffefffffefffffefffffefffffeff
+fffefffffefffffefffffefffffefffffefffffefffffefffffefffffefffffefffefefe
+fdfdfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfdfdfefefefffefefffefffffefffffefffffefffffefffbfafbcfcecf6a6a683e3930
+473b1e47370e49380d4b3a0e4e3d105542125c4816624e1a6c551f765f267e672d876f36
+90763f967d469d844ca28a51a58c55a58d57a68e59a48d58a08a579a8453937e4e8e7849
+8670437f6a3e776337705d316a572b645224604d205b481b574417544114513f114e3c10
+4a390e4335113a322134332f656464cac9caf9f8f9fdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdefeeefa7a6a6
+5e5d5a484236473a1d4838114d3b0f4f3d0f5340125643145b4718614d1d6652216b5727
+715c2d7761337d6738826c3c856f40887142897244887244867143836e417f6b3e7b673b
+776338725f346d5a2f68552a645124604d1f5c491b5845175643145341134c3b11413413
+3b33243e3c39636262b8b7b8f4f3f4fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfbfafb
+e1e1e29e9e9e62615f4b463a453a204839144f3e145442135643145845165c491a5f4c1e
+624f226753276b592c6f5c2f725e32746035766136766237766137756136725f34705d31
+6d5a2f6a572b665326635021604d1d5d4a1a594619534218493b163d3219413b2f474745
+706f6fbababaf2f1f2fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfaf9fadddcdda8a7a77674735a564e4b433243371c493b1954441b58471b5b481a
+5e4b1b604d1e614f2264512567542869562a6a572c6b582d6c582d6b582d6a572b685528
+675325655123614e225d4b2255451f483b1b3e341c47403253514b636261929192cdcccd
+f6f5f6fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfcfbfcecebecc4c4c49b9b9a767574615e59554f413e3622453a20
+4c3f205a4b2665532a64522a64522966542a68562b68562c67552c65532d63522b635129
+544627493d22433923463e2e56524861605c727271989898c2c2c2eae9eafbfafbfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdf9f9fae7e7e7cdcccdb3b3b3919090848381
+6765615b523f8c753e8a7135796536715e346a593165542f5f502c5a4a28594821534932
+4947417978758a8a899d9c9cbab9b9d2d1d2eaeaeafaf9fafdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfcfbfcf6f5f6eaeaea
+cdcdcd8e8a837a6b4a977f46987e4687703f7662376655305d4e2a56482b443a23444039
+aaaaaae3e2e3f1f0f1f9f8f9fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+faf9fad8d7d785827c8e7843c59e3aab882f876b2767521f554316453b27474542b5b5b4
+f4f3f4fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdf6f6f7b0ada99c813cd3a224af861d8164165e48104a3808362e1b777777f8f7f8
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdf2f1f2aeaba3a7893ad2a120a7811c795e1458430f4635083b311b737271fcfbfc
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdeaeaeaaaa598b3913ad2a11fa6801d775c1455410e463408463819353432f6f5f6
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfddededea59b85c7a03ad4a31ea8821d795d1456430e46350a473711242220e3e3e3
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdd4d3d2a39470d8ac39d6a41fad861e7d611659440f48360b4735092d2a22bcbcbc
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+faf9facdcbc7af985ce8b52ddba823b58c1f8667175f491049380c4635073730218c8b8b
+fcfbfcfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+f0eff0b6b1a5b79741f1b923dfac26bf9321927019674f114c3b0d44330842351b5d5b59
+f4f3f4fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+e2e1e1a99e83d7ac3ef2ba22e4b027c99b239e7a1b715613523f0e45340b44350c36332e
+cecdcefdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdf9f8f9
+cbcac6a4905af0ba2ef4bb26e8b328d1a124aa831e7b5f1559440f48360b4434083d3626
+8a8a89faf9fafdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdedeced
+aba596bf9d46f7be22f5bd2aecb629d8a725b58b1f876817614b104a380c443309423415
+53504ddddcddfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfaf9fad8d6d4
+ad9d73ebb833f7be25f6be2befb829ddab27be93219270196850124d3b0d44330a42330a
+40392d999897faf9fafdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdf0efefa8a293
+cfac55f8be22f8bf2af6be2bf1ba2ae2af27c599229b781b70561354400e46350b44330a
+413414575450cecdcefdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdf9f8f9b9b7b4a5905b
+f0ba2af8bf27f8c02bf6be2bf1bb2ae5b127cc9d23a47f1c785c1559450f47370c44330b
+44330a443b2383827feae9eafdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdd5d5d4b0a485e8b632
+f8be23f8c02bf8c02bf7bf2bf3bc2ae9b428d2a224ad851d8164175f491049380c45340b
+44330a44350f504839a3a1a0f5f5f6fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfddbdbdbaca490e5b63ef8bd21
+f8c02bf8c02bf8c02bf7bf2bf4bd2aebb629d8a625b68c1f8a6a17644d104c3a0d46350b
+44330b44340a433511524c3fabaaa8f6f5f6fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfcfbfcf9f7f8c1c0beb3a992ecba37f8bd20f8c02b
+f8c02bf8c02bf8c02bf7bf2bf5be2aeeb829dcaa26bd93219472196b5212503e0d46350b
+44330b46350b4635094435105048379a9894e6e6e6fbfafbfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfbfafbf8f8f8f6f5f5f2f1f0d8d5d1b0a897b59c61f0ba2af8bd21f8c02bf8c02b
+f8c02bf8c02bf7bf2bf6be2bf4bd2aedb729deac27c498229d791b73591456420f47360b
+44330b45340b46350b46350a44340c493d2369655ab4b2b0e6e5e5f3f2f2f8f7f8fbfafb
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfcfbfc
+f4f3f4dfdcd8cec9bdc2baa6bbae8abaa061deb23ff5bc21f8bf25f8c02bf8c02bf8c02b
+f8c02bf8c02bf7bf2bf5bd2bf2bb2aeab528dcaa26c59822a37e1c7c60155e48104c3b0d
+46350b44330b46350b46350b45340a453409423311382f1a615a4a908b83b3b1adc6c5c3
+e7e6e6fcfbfcfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdf4f3f4
+c9c5bcad996ac5a04bdbae43efb92df7bc1df8bd1ff8bf26f8bf27f8bf26f8bf26f8bf26
+f8bf26f7be26f6bd26f3ba25ecb624e2ae23d3a221bd921da17c19816314644c0f513e0c
+47360a45340a45340a46350a46350a46350a46350946350743330a4032123c3115372f1b
+76736febeaebfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdf1f0f1ecebececebec
+ecebececebececebececebececebececebececebececebececebececebececebececebec
+ecebececebececebececebececebececebececebececebececebececebececebececebec
+ecebececebececebececebececebececebececebececebececebececebececebececebec
+ecebececebececebececebececebececebececebececebececebececebececebececebec
+ecebececebececebececebececebececebececebececebececebececebececebececebec
+ecebececebececebececebececebececebececebececebececebececebececebececebec
+ecebececebececebececebececebececebececebececebececebececebececebececebec
+ecebececebececebececebececebececebececebececebececebececebececebececebec
+ecebececebececebececebececebececebececebececebececebececebececebececebec
+ecebececebececebececebececebececebececebececebececebececebececebececebec
+ecebececebececebececebececebececebececebececebececebececebececebececebec
+ecebececebececebececebececebececebececebececebececebececebececebececebec
+ecebececebececebececebececebececebececebececebececebececebececebececebec
+ecebececebececebececebececebececebececebececebececebececebececebececebec
+ecebececebececebececebececebececebececebececebececebececebececebececebec
+ecebececebececebececebececebececebececebececebececebececebececebececebec
+ecebececebececebececebececebececebececebececebececebececebececebececebec
+ecebececebececebececebececebececebececebececebececebececebececebececebec
+ecebececebececebececebececebececebececebececebececebececebececebececebec
+ecebececebececebececebececebececebececebececebececebececebececebececebec
+ecebececebececebececebececebececebececebececebececebececebececebececebec
+ecebececececedededeeedeeeeeeeeefeeeff0eff0f1f0f1f2f1f2f3f3f3f5f4f5d6d6d6
+968d79c29d48deac2eddad2edeae2fdeae31deae32deae32deae32deaf32deaf32deaf32
+deae32ddae32dcac31d6a730cba02dbd942aad87259b792186691d71581a5a46144b3b10
+41330e3f310e3f310e3f310e3f310e3f310e3f310e3f310e3f320d3f310c3e300c41320d
+33302aacacacf5f4f5f4f3f4f2f2f2f1f0f1f0eff0efeeefeeeeeeeeedeeedecedececec
+ececececebececebececebececebececebececebececebececebececebececebececebec
+ecebececebececebececebececebececebececebececebececebececebecf8f7f8fdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd9e9d9e787878787878
+787878787878787878787878787878787878787878787878787878787878787878787878
+787878787878787878787878787878787878787878787878787878787878787878787878
+787878787878787878787878787878787878787878787878787878787878787878787878
+787878787878787878787878787878787878787878787878787878787878787878787878
+787878787878787878787878787878787878787878787878787878787878787878787878
+787878787878787878787878787878787878787878787878787878787878787878787878
+787878787878787878787878787878787878787878787878787878787878787878787878
+787878787878787878787878787878787878787878787878787878787878787878787878
+787878787878787878787878787878787878787878787878787878787878787878787878
+787878787878787878787878787878787878787878787878787878787878787878787878
+787878787878787878787878787878787878787878787878787878787878787878787878
+787878787878787878787878787878787878787878787878787878787878787878787878
+787878787878787878787878787878787878787878787878787878787878787878787878
+787878787878787878787878787878787878787878787878787878787878787878787878
+787878787878787878787878787878787878787878787878787878787878787878787878
+787878787878787878787878787878787878787878787878787878787878787878787878
+787878787878787878787878787878787878787878787878787878787878787878787878
+787878787878787878787878787878787878787878787878787878787878787878787878
+787878787878787878787878787878787878787878787878787878787878787878787878
+787878787878787878787878787878787878787878787878787878787878787878787878
+787878787878787878787878787878787878787878787878787878787878787878787878
+7878787979797a7a7a7b7b7b7c7c7c7d7d7d7f7f7f8080808282828585858787876f6f6f
+413e385a4e36675837655737655737655737655737655737655737655837655837655837
+6557376456366154355d5133574c3050452c483e274038233a321f332c1c282316211d12
+1d19101c180f1c180f1c180f1c180f1c180f1c180f1c180f1c180f1c180f1c180f1d190f
+171613504f4f8787878686868383838181817f7f7f7d7d7d7c7c7c7b7b7b797979787878
+787878787878787878787878787878787878787878787878787878787878787878787878
+787878787878787878787878787878787878787878787878787878777777cfcfcffbfafb
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd8b8a8b5d5d5d5d5d5d
+5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d
+5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d
+5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d
+5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d
+5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d
+5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d
+5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d
+5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d
+5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d
+5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d
+5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d
+5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d
+5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d
+5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d
+5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d
+5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d
+5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d
+5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d
+5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d
+5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d
+5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d
+5e5e5e5e5e5e6060606060605e5e5e5d5d5d5d5d5d5d5d5d5c5c5c5c5c5c5c5c5c5d5d5d
+5d5d5d5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5b5b5b5b5b5b5c5c5c
+5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5d5d5d5d5d5d
+5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d
+5d5d5d5d5d5d5c5c5c5c5c5c5c5c5c5c5c5c5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d
+5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d
+5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5b5b5bc5c5c5faf9fa
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdeaeaeae3e2e3e3e2e3
+e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3
+e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3
+e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3
+e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3
+e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3
+e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3
+e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3
+e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3
+e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3
+e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3
+e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3
+e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3
+e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3
+e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3
+e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3
+e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3
+e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3
+e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3
+e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3
+e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3
+e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3
+e3e2e3e4e3e4e5e4e5e5e4e5e3e3e3e3e2e3e3e2e3e2e1e2e2e1e2e2e1e2e2e1e2e2e2e2
+e2e2e2e2e1e2e1e1e1e2e1e2e1e1e1e2e1e2e2e1e2e2e1e2e2e1e2e1e0e1e1e0e1e1e1e1
+e2e1e2e2e1e2e2e1e2e2e1e2e2e1e2e2e1e2e2e1e2e2e1e2e2e1e2e2e1e2e2e1e2e3e2e3
+e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3
+e3e2e3e3e2e3e2e1e2e2e1e2e2e1e2e2e1e2e2e2e2e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3
+e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3
+e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e2e2e2e1e0e1f4f3f4fdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+
+showpage
+
+% stop using temporary dictionary
+end
+
+% restore original state
+origstate restore
+
+%%Trailer
+
+%%EndDocument
+ @endspecial Black Black Black 21 3808 a Fm(Using)48
+b(the)g(SALOME)h(con\002guration)g(and)f(b)m(uilding)1046
+3980 y(system)f(en)-7 b(vir)m(onment)1587 4265 y Fl(V)-16
+b(ersion)34 b(0.3)50 5367 y Fk(P)o(atrick)99 b(Goldbronn)f(C.E.A.)50
+5485 y(Marc)170 b(T)-8 b(ajchman)140 b(C.E.A.)p Black
+Black eop
+%%Page: 2 2
+2 1 bop Black Black 0 50 a Fj(Successi)o(v)o(e)30 b(v)o(ersions)p
+0 1579 3588 4 v -2 1795 4 217 v 50 1730 a Fi(Date)p 570
+1795 V 391 w(V)-9 b(ersion)p 1024 1795 V 161 w(Description)p
+3014 1795 V 1541 w(A)k(uthor\(s\))p 3586 1795 V 0 1799
+3588 4 v -2 2016 4 217 v 50 1950 a Fn(10/07/2001)p 570
+2016 V 162 w(0.0)p 1024 2016 V 341 w(Initial)25 b(v)o(ersion)p
+3014 2016 V 1485 w(PG)p 3586 2016 V 0 2019 3588 4 v -2
+2236 4 217 v 50 2171 a(25/07/2001)p 570 2236 V 162 w(0.1)p
+1024 2236 V 341 w(English)f(traduction,)i(re)n(writing)p
+3014 2236 V 946 w(MT)p 3586 2236 V 0 2239 3588 4 v -2
+2456 4 217 v 50 2391 a(29/08/2001)p 570 2456 V 162 w(0.2)p
+1024 2456 V 341 w(Add)d(source)i(creation,)g(some)f(precision)p
+3014 2456 V 667 w(PG)p 3586 2456 V 0 2459 3588 4 v -2
+2676 4 217 v 50 2611 a(24/05/2002)p 570 2676 V 162 w(0.3)p
+1024 2676 V 341 w(Add)f(instruction)k(to)c(do)h(installation)j
+(correctly)p 3014 2676 V 444 w(PG)p 3586 2676 V 0 2679
+3588 4 v Black 0 5644 3827 9 v 0 5757 a(SALOME)415 b(Using)24
+b(the)g(SALOME)d(con\002guration)26 b(and)e(b)n(uilding)i(system)e(V)
+-12 b(.)23 b(0.3)607 b(2/20)p Black eop
+%%Page: 3 3
+3 2 bop Black Black Black Black 1759 50 a Fh(Abstract)p
+Black Black 352 227 a Fg(This)20 b(document)e(contains)i(rules)g(and)g
+(advices)f(to)i(con\002gure,)d(b)n(uild)i(and)f(e)o(xtend)g(the)h
+(SALOME)g(platform.)p Black 0 5644 3827 9 v 0 5757 a
+Fn(SALOME)415 b(Using)24 b(the)g(SALOME)d(con\002guration)26
+b(and)e(b)n(uilding)i(system)e(V)-12 b(.)23 b(0.3)607
+b(3/20)p Black eop
+%%Page: 4 4
+4 3 bop Black Black 0 50 a Fj(Contents)0 279 y Fi(1)91
+b(SALOME)21 b(Con\002guration)2683 b(5)136 415 y Fn(1.1)96
+b(Directories)26 b(or)n(ganisation)35 b(.)45 b(.)g(.)h(.)f(.)g(.)g(.)g
+(.)g(.)h(.)f(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)
+g(.)h(.)f(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)p Black 122
+w(5)p Black 136 550 a(1.2)96 b(PreCon\002guration)26
+b(step)43 b(.)i(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)h
+(.)f(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)h(.)
+f(.)g(.)g(.)g(.)p Black 122 w(5)p Black 136 686 a(1.3)96
+b(Con\002guration)26 b(step)h(.)46 b(.)f(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)
+g(.)g(.)h(.)f(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g
+(.)g(.)h(.)f(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)p Black
+122 w(6)p Black 136 821 a(1.4)96 b(PostCon\002guration)27
+b(step)75 b(.)45 b(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)h
+(.)f(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)h(.)
+f(.)g(.)g(.)g(.)p Black 122 w(7)p Black 0 1048 a Fi(2)91
+b(SALOME)21 b(compilation)2770 b(7)0 1274 y(3)91 b(Module)23
+b(cr)n(eation)3010 b(8)0 1501 y(4)91 b(De)o(v)o(elopment)24
+b(unit)e(cr)n(eation)2621 b(9)0 1727 y(5)91 b(Cr)n(eating)25
+b(a)e Ff(Makefile.in)50 b Fi(\002le)22 b(in)h(a)g(new)f(unit)1871
+b(10)136 1862 y Fn(5.1)96 b(Using)24 b(prede\002ned)i(mak)o(e)e(rules)
+69 b(.)45 b(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g
+(.)h(.)f(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)p
+Black 77 w(10)p Black 136 1998 a(5.2)96 b(Using)24 b(your)h(o)n(wn)e
+(mak)o(e\002les)h(in)f(an)h(unit)63 b(.)45 b(.)h(.)f(.)g(.)g(.)g(.)h(.)
+f(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)h(.)f
+(.)g(.)g(.)g(.)p Black 77 w(14)p Black 0 2224 a Fi(6)91
+b(Add)22 b(or)h(r)n(emo)o(v)o(e)i(a)f(script)2705 b(15)0
+2451 y(7)91 b(Add)22 b(or)h(r)n(emo)o(v)o(e)i(an)e(IDL)f(\002le)2576
+b(15)0 2677 y(8)91 b(Pr)n(ede\002ned)23 b(symbols)h(used)e(in)h
+Ff(Makefile.in)1920 b Fi(15)0 2904 y(9)91 b(Location)25
+b(of)e(generated)h(\002les)g(in)e(the)h(b)n(uild)f(tr)n(ee)1941
+b(18)0 3130 y(10)46 b(What')m(s)24 b(matter)g(when)e(launch)g
+Ff(make)53 b(install)1839 b Fi(18)0 3356 y(11)46 b(Cr)n(eating)25
+b(sour)n(ce)f(\002les)g(according)g(to)g(SALOME)c(b)n(uilding)j(system)
+1260 b(19)136 3492 y Fn(11.1)51 b Ff(C)23 b Fn(or)g Ff(C++)f
+Fn(source)j(\002les)63 b(.)45 b(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)h(.)f
+(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)h(.)f(.)
+g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)p Black 77 w(20)p Black
+136 3627 a(11.2)51 b(idl)24 b(\002les)90 b(.)45 b(.)g(.)g(.)g(.)g(.)h
+(.)f(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)h(.)f(.)
+g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)h(.)f(.)g
+(.)g(.)g(.)p Black 77 w(20)p Black 136 3763 a(11.3)51
+b(Included)26 b(header)f(\002le)e(generated)j(from)e(idl)f(\002le)32
+b(.)45 b(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)g(.)h(.)
+f(.)g(.)g(.)g(.)h(.)f(.)g(.)g(.)g(.)p Black 77 w(20)p
+Black Black 0 5644 3827 9 v 0 5757 a(SALOME)415 b(Using)24
+b(the)g(SALOME)d(con\002guration)26 b(and)e(b)n(uilding)i(system)e(V)
+-12 b(.)23 b(0.3)607 b(4/20)p Black eop
+%%Page: 5 5
+5 4 bop Black Black 0 50 a Fj(1)119 b(SALOME)30 b(Con\002guration)0
+331 y Fe(1.1)99 b(Dir)n(ectories)26 b(or)o(ganisation)0
+575 y Fn(W)-7 b(e)32 b(suppose)k(here)d(that)h(you)g(unpack)h(the)e
+(SALOME)d(distrib)n(ution)37 b(from)c(scratch.)60 b(The)33
+b(path)g(to)h(the)f(SALOME)0 710 y(sources)25 b(will)f(be)f(named)h
+(\223top)g(source)h(directory\224)i(or)c Ff(SALOME)p
+2097 710 28 4 v 30 w(ROOT)p Fn(.)0 893 y(It)35 b(is)g(possible,)41
+b(b)n(ut)36 b(not)g(advised,)k(to)35 b(b)n(uild)i(the)f(set)f(of)h
+(binaries)h(and)f(libraries)i(in)d(the)h(same)f(subtree.)67
+b(Instead,)0 1028 y(we)23 b(suppose)j(you)e(ha)n(v)o(e)g(choosen)i(a)d
+(dif)n(ferent)j(subtree)f(where)f(to)g(put)g(b)n(uilded)i(\002les)d
+(\(you)i(can)f(so)g(b)n(uild)h(to)e(multiples)0 1164
+y(architectures)h(from)c(the)g(same)g(source)i(tree\).)28
+b(The)20 b(root)h(of)f(the)g(b)n(uild)i(subtree)g(will)d(be)i(named)f
+(\223top)h(b)n(uild)h(directory\224.)0 1347 y(At)j(the)i(end)f(of)g
+(con\002guration)j(and)e(compilation)h(processs,)h(you)e(may)e(install)
+j(b)n(uilded)g(\002les)e(in)g(a)f(separate)k(subtree,)0
+1482 y(name)22 b(\223installation)j(subtree\224.)30 b(The)21
+b(root)h(of)g(the)g(installation)i(subtree)g(will)d(be)g(named)h
+(\223top)h(installation)i(directory\224.)0 1665 y(The)e(\002gure)h(1)f
+(sho)n(ws)h(subtrees)h(or)n(ganisation.)p Black 0 3576
+a @beginspecial 0 @llx 0 @lly 466 @urx 215 @ury 4660
+@rwi @setspecial
+%%BeginDocument: ../../../SALOME_ROOT/doc/DevelopersGuide/subtrees.eps
+%!PS-Adobe-2.0 EPSF-2.0
+%%Title: subtrees.eps
+%%Creator: fig2dev Version 3.2 Patchlevel 3c
+%%CreationDate: Thu Jul 26 11:57:22 2001
+%%For: tajchman@nikyo (Marc Tajchman - SFME/LGLS)
+%%BoundingBox: 0 0 466 215
+%%Magnification: 1.0000
+%%EndComments
+/$F2psDict 200 dict def
+$F2psDict begin
+$F2psDict /mtrx matrix put
+/col-1 {0 setgray} bind def
+/col0 {0.000 0.000 0.000 srgb} bind def
+/col1 {0.000 0.000 1.000 srgb} bind def
+/col2 {0.000 1.000 0.000 srgb} bind def
+/col3 {0.000 1.000 1.000 srgb} bind def
+/col4 {1.000 0.000 0.000 srgb} bind def
+/col5 {1.000 0.000 1.000 srgb} bind def
+/col6 {1.000 1.000 0.000 srgb} bind def
+/col7 {1.000 1.000 1.000 srgb} bind def
+/col8 {0.000 0.000 0.560 srgb} bind def
+/col9 {0.000 0.000 0.690 srgb} bind def
+/col10 {0.000 0.000 0.820 srgb} bind def
+/col11 {0.530 0.810 1.000 srgb} bind def
+/col12 {0.000 0.560 0.000 srgb} bind def
+/col13 {0.000 0.690 0.000 srgb} bind def
+/col14 {0.000 0.820 0.000 srgb} bind def
+/col15 {0.000 0.560 0.560 srgb} bind def
+/col16 {0.000 0.690 0.690 srgb} bind def
+/col17 {0.000 0.820 0.820 srgb} bind def
+/col18 {0.560 0.000 0.000 srgb} bind def
+/col19 {0.690 0.000 0.000 srgb} bind def
+/col20 {0.820 0.000 0.000 srgb} bind def
+/col21 {0.560 0.000 0.560 srgb} bind def
+/col22 {0.690 0.000 0.690 srgb} bind def
+/col23 {0.820 0.000 0.820 srgb} bind def
+/col24 {0.500 0.190 0.000 srgb} bind def
+/col25 {0.630 0.250 0.000 srgb} bind def
+/col26 {0.750 0.380 0.000 srgb} bind def
+/col27 {1.000 0.500 0.500 srgb} bind def
+/col28 {1.000 0.630 0.630 srgb} bind def
+/col29 {1.000 0.750 0.750 srgb} bind def
+/col30 {1.000 0.880 0.880 srgb} bind def
+/col31 {1.000 0.840 0.000 srgb} bind def
+
+end
+save
+newpath 0 215 moveto 0 0 lineto 466 0 lineto 466 215 lineto closepath clip newpath
+-58.0 236.0 translate
+1 -1 scale
+
+/cp {closepath} bind def
+/ef {eofill} bind def
+/gr {grestore} bind def
+/gs {gsave} bind def
+/sa {save} bind def
+/rs {restore} bind def
+/l {lineto} bind def
+/m {moveto} bind def
+/rm {rmoveto} bind def
+/n {newpath} bind def
+/s {stroke} bind def
+/sh {show} bind def
+/slc {setlinecap} bind def
+/slj {setlinejoin} bind def
+/slw {setlinewidth} bind def
+/srgb {setrgbcolor} bind def
+/rot {rotate} bind def
+/sc {scale} bind def
+/sd {setdash} bind def
+/ff {findfont} bind def
+/sf {setfont} bind def
+/scf {scalefont} bind def
+/sw {stringwidth} bind def
+/tr {translate} bind def
+/tnt {dup dup currentrgbcolor
+ 4 -2 roll dup 1 exch sub 3 -1 roll mul add
+ 4 -2 roll dup 1 exch sub 3 -1 roll mul add
+ 4 -2 roll dup 1 exch sub 3 -1 roll mul add srgb}
+ bind def
+/shd {dup dup currentrgbcolor 4 -2 roll mul 4 -2 roll mul
+ 4 -2 roll mul srgb} bind def
+/$F2psBegin {$F2psDict begin /$F2psEnteredState save def} def
+/$F2psEnd {$F2psEnteredState restore end} def
+
+$F2psBegin
+%%Page: 1 1
+10 setmiterlimit
+ 0.06000 0.06000 sc
+%
+% Fig objects follow
+%
+% Polyline
+7.500 slw
+n 3900 1950 m 5175 1950 l 5175 2550 l 3900 2550 l
+ cp gs col0 s gr
+/Times-Bold ff 180.00 scf sf
+4050 2175 m
+gs 1 -1 sc (Top Build) col0 sh gr
+/Times-Bold ff 180.00 scf sf
+4050 2400 m
+gs 1 -1 sc (Directory) col0 sh gr
+% Polyline
+n 1275 1425 m 3000 1425 l 3000 2250 l 1275 2250 l
+ cp gs col0 s gr
+/Times-Bold ff 180.00 scf sf
+1425 1650 m
+gs 1 -1 sc (Top Source) col0 sh gr
+/Times-Bold ff 180.00 scf sf
+1425 1875 m
+gs 1 -1 sc (Directory) col0 sh gr
+/Times-Bold ff 180.00 scf sf
+1425 2100 m
+gs 1 -1 sc (\(SALOME_ROOT\)) col0 sh gr
+% Polyline
+n 4350 2550 m
+ 3825 3300 l gs col0 s gr
+% Polyline
+n 4575 2550 m
+ 4650 3300 l gs col0 s gr
+% Polyline
+n 7350 1650 m
+ 7575 2475 l gs col0 s gr
+% Polyline
+n 7800 1650 m
+ 8175 2550 l gs col0 s gr
+% Polyline
+n 7050 1650 m
+ 6750 2550 l gs col0 s gr
+% Polyline
+n 6675 1050 m 8100 1050 l 8100 1650 l 6675 1650 l
+ cp gs col0 s gr
+% Polyline
+n 1939 2238 m
+ 1189 2913 l gs col0 s gr
+% Polyline
+n 2175 2250 m
+ 2175 2850 l gs col0 s gr
+% Polyline
+n 2442 2270 m
+ 2892 3020 l gs col0 s gr
+% Polyline
+15.000 slw
+n 3780 1650 m 3600 1650 3600 3720 180 arcto 4 {pop} repeat
+ 3600 3900 5595 3900 180 arcto 4 {pop} repeat
+ 5775 3900 5775 1830 180 arcto 4 {pop} repeat
+ 5775 1650 3780 1650 180 arcto 4 {pop} repeat
+ cp gs col0 s gr
+% Polyline
+n 1230 1050 m 1050 1050 1050 3570 180 arcto 4 {pop} repeat
+ 1050 3750 3045 3750 180 arcto 4 {pop} repeat
+ 3225 3750 3225 1230 180 arcto 4 {pop} repeat
+ 3225 1050 1230 1050 180 arcto 4 {pop} repeat
+ cp gs col0 s gr
+% Polyline
+n 6705 825 m 6525 825 6525 2820 180 arcto 4 {pop} repeat
+ 6525 3000 8520 3000 180 arcto 4 {pop} repeat
+ 8700 3000 8700 1005 180 arcto 4 {pop} repeat
+ 8700 825 6705 825 180 arcto 4 {pop} repeat
+ cp gs col0 s gr
+% Polyline
+7.500 slw
+n 2025 1425 m
+ 3000 375 l gs col0 s gr
+% Polyline
+n 4575 1950 m
+ 4425 675 l gs col0 s gr
+% Polyline
+n 7275 1050 m
+ 5925 375 l gs col0 s gr
+/Times-Bold ff 180.00 scf sf
+6825 1275 m
+gs 1 -1 sc (Top Installation) col0 sh gr
+/Times-Bold ff 180.00 scf sf
+6825 1500 m
+gs 1 -1 sc (Directory) col0 sh gr
+/Times-Bold ff 180.00 scf sf
+7125 675 m
+gs 1 -1 sc (Install Subtree) col0 sh gr
+/Times-Bold ff 180.00 scf sf
+975 900 m
+gs 1 -1 sc (Source Subtree) col0 sh gr
+/Times-Bold ff 180.00 scf sf
+4650 1500 m
+gs 1 -1 sc (Build Subtree) col0 sh gr
+$F2psEnd
+rs
+
+%%EndDocument
+ @endspecial Black 1342 3794 a(Figure)f(1:)29 b(Subtrees)c(or)n
+(ganisation)p Black Black 0 4166 a Fe(1.2)99 b(Pr)n(eCon\002guration)26
+b(step)0 4411 y Fn(SALOME)21 b(needs)k(some)f(en)l(vironment)i(v)n
+(ariables)g(\(to)e(be)g(de\002ned)h(for)f(e)o(xample)g(in)g(a)f(.cshrc)
+i(or)e(.bashrc)i(\002le)e(in)h(your)0 4546 y(home)g(directory\))i(:)p
+Black 0 5644 3827 9 v 0 5757 a(SALOME)415 b(Using)24
+b(the)g(SALOME)d(con\002guration)26 b(and)e(b)n(uilding)i(system)e(V)
+-12 b(.)23 b(0.3)607 b(5/20)p Black eop
+%%Page: 6 6
+6 5 bop Black Black 0 -38 3625 4 v -2 179 4 217 v 50
+114 a Fd(variable)p 925 179 V 626 w(set)24 b(value)h(and)f(c)o(hec)n(k)
+p 3623 179 V 0 182 3625 4 v -2 399 4 217 v 50 334 a Ff(QTDIR)p
+925 399 V 651 w Fn(root)g(directory)i(of)e(qt)f(distrib)n(ution)k(\()p
+Ff($QTDIR/lib)19 b Fn(must)k(contain)j(libqt.so\))p 3623
+399 V 0 402 3625 4 v -2 754 4 353 v 50 554 a Ff(HDF5HOME)p
+925 754 V 486 w Fn(root)21 b(directory)h(of)e(hdf5)h(distrib)n(ution)j
+(\()p Ff($HDF5HOME/lib)13 b Fn(must)20 b(contain)i(lib-)976
+689 y(hdf5.so\))p 3623 754 V 0 758 3625 4 v -2 1110 4
+353 v 50 909 a Ff(VTKHOME)p 925 1110 V 541 w Fn(root)33
+b(directory)i(of)e(vtk)f(distrib)n(ution)k(\()p Ff($VTKHOME/common)26
+b Fn(must)32 b(contain)976 1045 y(libVTKCommon.so\))p
+3623 1110 V 0 1113 3625 4 v -2 1466 4 353 v 50 1265 a
+Ff(CASROOT)p 925 1466 V 541 w Fn(root)25 b(directory)i(of)e
+(OpenCascade)h(distrib)n(ution)j(\()p Ff($CASROOT/Linux)o(/li)o(b)976
+1400 y Fn(must)24 b(contain)h(libTK)n(ernel.so\))p 3623
+1466 V 0 1469 3625 4 v -2 1821 4 353 v 50 1621 a Ff(PYTHONHOME)p
+925 1821 V 376 w Fn(root)184 b(directory)i(of)d(p)o(ython)i(distrib)n
+(ution)i(\()p Ff($PYTHON-)976 1756 y(HOME/lib/python)o(XX)o(X/c)o(on)o
+(fi)o(g)17 b Fn(must)23 b(contain)i(libp)o(ythonXXX.a\))p
+3623 1821 V 0 1824 3625 4 v -2 2177 4 353 v 50 1976 a
+Ff(OMNIORB)p 440 1976 28 4 v 29 w(CONFIG)p 925 2177 4
+353 v 182 w Fn(path)30 b(to)g(the)f(omniORB.cfg)g(\002le)g(\(this)h
+(\002le)f(contains)j(def)o(ault)f(options)g(to)e(om-)976
+2112 y(niORB,)22 b(see)i(belo)n(w\))p 3623 2177 V 0 2180
+3625 4 v 0 2388 a(Create)29 b(a)f(\002le)f(named)i(omniORB.cfg)f(in)h
+(your)g(root)g(tree,)g(containing)j(def)o(ault)e(options)g(to)e
+(omniORB.)f(Put)h(in)g(this)0 2523 y(\002le,)23 b(the)g(follo)n(wing)i
+(line)g(:)p Black Black 0 2769 a Ff(ORBInitRef)50 b(NameService=cor)o
+(ba)o(na)o(me)o(::l)o(oc)o(al)o(ho)o(st)0 3015 y Fn(\(tells)25
+b(omniORB)d(that)i(the)g(CORB)m(A)d(name)i(service)j(is)d(local\).)0
+3332 y Fe(1.3)99 b(Con\002guration)26 b(step)p Black
+114 3529 a Fn(1.)p Black 45 w(There)e(are)g(tw)o(o)f(cases)h(:)p
+Black 336 3700 a Fc(\017)p Black 46 w Fn(There)i(is)g(a)f
+Ff(configure)c Fn(\002le)k(in)g(the)h(top)g(source)i(directory)-6
+b(,)28 b(and)e(you)g(didn')n(t)i(change)f(the)f(SALOME)427
+3835 y(structure)g(\(adding)g(a)d(module)h(or)g(unit,)f(see)h(sections)
+i(3)d(or)h(4)f(belo)n(w\).)29 b(Go)23 b(to)g(point)i(3.)p
+Black 336 4004 a Fc(\017)p Black 46 w Fn(Y)-10 b(ou)26
+b(don')n(t)h(ha)n(v)o(e)g(a)e Ff(configure)c Fn(\002le)k(or)h(you)h
+(add)f(a)f(module/unit)k(in)d(the)g(SALOME)c(system.)37
+b(Go)25 b(to)427 4139 y(point)g(2)p Black 114 4310 a(2.)p
+Black 45 w(Go)e(to)h(the)f(top)h(source)h(directory)h(and)e(type)g(:)p
+Black Black 227 4445 a Ff(./reconfigure)227 4539 y Fn(This)32
+b(script)h(\002nd)e(all)h(\002le)f(with)g(suf)n(\002x)h
+Ff(.in)d Fn(\(which)j(will)g(be)f(generate)j(by)e Ff(configure)26
+b Fn(script\))33 b(and)f(add)227 4675 y(them)24 b(in)f
+Ff(configure.in)18 b Fn(\002le,)k(launch)j Ff(aclocal)20
+b Fn(and)k Ff(autoconf)19 b Fn(to)k(generete)j Ff(configure)19
+b Fn(script.)227 4810 y(Continue)25 b(with)f(point)g(3)p
+Black 114 4979 a(3.)p Black 45 w(Go)f(to)h(the)f(top)h(b)n(uild)h
+(directory)h(you)e(choose.)227 5114 y(If)30 b(you)g(plan)h(to)e
+(install)j(SALOME)26 b(\002les)k(after)g(b)n(uilding)j(in)c(a)h
+(non-standard)j(location)f(\(i.e.)47 b(dif)n(ferent)32
+b(from)227 5250 y(/usr/local\),)26 b(type)f(:)p Black
+Black 227 5385 a Ff(<path)53 b(to)g(the)g(top)h(source)d
+(directory>/confi)o(gu)o(re)d(\\)1209 5521 y(--prefix=<insta)o(ll)o(at)
+o(ion)g(directory>)p Black 0 5644 3827 9 v 0 5757 a Fn(SALOME)415
+b(Using)24 b(the)g(SALOME)d(con\002guration)26 b(and)e(b)n(uilding)i
+(system)e(V)-12 b(.)23 b(0.3)607 b(6/20)p Black eop
+%%Page: 7 7
+7 6 bop Black Black 227 50 a Fn(otherwise,)25 b(type)f(:)p
+Black Black 227 185 a Ff(<path)53 b(to)g(the)g(top)h(source)d
+(directory>/confi)o(gu)o(re)227 279 y Fn(where)24 b(\223path)h(to)e
+(the)h(top)g(source)h(directory\224)h(is)e(to)f(be)h(replaced)h(by)f
+(the)g(path)g(to)f(the)h(SALOME)d(sources.)227 415 y(F)o(or)i(other)h
+(options)i(to)d(the)h(con\002gure)h(command,)f(type)h(:)p
+Black Black 227 550 a Ff(<path)53 b(to)g(the)g(top)h(source)d
+(directory>/confi)o(gu)o(re)d(--help)227 644 y Fn(This)18
+b(will)g(create)h(a)f(mirror)h(subtree)h(of)e(the)g(sources)i(into)f
+(the)g(top)f(b)n(uild)i(directory)g(where)f(object)g(\002les,)g
+(binaries)227 780 y(and)24 b(libraries)i(will)d(be)h(b)n(uilded.)30
+b(Also)24 b(a)f(mak)o(e\002le)h(system)g(will)f(be)h(created)h(into)f
+(the)g(b)n(uild)h(tree.)0 1099 y Fe(1.4)99 b(P)n(ostCon\002guration)26
+b(step)0 1344 y Fn(This)d(phase)h(is)f(optional,)i(to)e(be)g(used)h
+(only)f(if)g(the)h(compilation)h(process)g(\(see)e(ne)o(xt)h(section\))
+h(f)o(ails)f(to)f(use)g Ff(libtool)0 1479 y Fn(script.)0
+1662 y(On)29 b(some)i(systems,)h(the)f Ff(libtool)26
+b Fn(script)31 b(generated)i(by)d(the)h(con\002gure)h(command)e(will)g
+(not)h(operate)h(correctly)0 1797 y(during)26 b(compilation)g(\(see)f
+(ne)o(xt)g(section\).)32 b(If)24 b(you)h(encounter)h(this)f(situation,)
+h(cop)o(y)g(the)e(local)h(libtool)h(script)f(in)f(your)0
+1933 y(system)f(\(e.g.)29 b(in)22 b(the)h(/usr/bin)i(directory\))g(to)e
+(the)g(top)g(b)n(uild)h(directory)h(after)f(con\002guration)h(and)e
+(before)h(compilation)0 2068 y(phases.)0 2251 y(Check)g(the)g(follo)n
+(wing)h(line)f(in)f(libtool)j(script)e(:)p Black Black
+0 2508 a Ff(deplibs_check_m)o(et)o(ho)o(d=)o(...)0 2766
+y Fn(If)f(needed,)i(replace)g(this)f(line)h(by)p Black
+Black 0 3023 a Ff(deplibs_check_m)o(et)o(ho)o(d=)o("pa)o(ss)o(_a)o(ll)o
+(")0 3393 y Fj(2)119 b(SALOME)30 b(compilation)0 3670
+y Fn(From)23 b(the)h(top)f(b)n(uild)i(directory)-6 b(,)26
+b(type)p Black Black 0 3927 a Ff(make)0 4185 y Fn(After)35
+b(some)g(time)g(\(be)g(patient)i(...\),)f(it)f(will)f(create)j(v)n
+(arious)f(binaries.)65 b(Building)37 b(SALOME)31 b(is)k(split)h(in)f
+(se)n(v)o(eral)0 4320 y(phases)25 b(:)p Black 136 4603
+a Fc(\017)p Black 46 w Ff(make)53 b(inc)26 b Fn(:)37
+b(cop)o(y/update)32 b(header)d(\002les)f(e)o(xported)i(by)e(de)n(v)o
+(elopment)i(units)f(in)f(the)g(directory)i Ff(inc)c Fn(of)i(the)227
+4738 y(b)n(uild)d(tree)f(;)p Black 136 4907 a Fc(\017)p
+Black 46 w Ff(make)53 b(depend)p 835 4907 28 4 v 30 w(idl)31
+b Fn(:)48 b(determine)35 b(dependencies)i(between)d(idl)g(\002les)e
+(\(useful)j(when)f(recompiling)h(SA-)227 5042 y(LOME)22
+b(after)i(idl)g(modi\002cation\);)p Black 136 5211 a
+Fc(\017)p Black 46 w Ff(make)53 b(depend)f(\(make)g(dep\))30
+b Fn(:)48 b(determine)34 b(dependencies)j(between)d(source)h(\002les)d
+(and)i(header)g(\002les)227 5347 y(\(useful)25 b(when)f(recompiling)i
+(SALOME)21 b(after)j(source)h(modi\002cation\);)p Black
+136 5515 a Fc(\017)p Black 46 w Ff(make)53 b(lib)21 b
+Fn(:)29 b(generate)c(libraries,)h(put)e(a)f(cop)o(y/link)j(into)e(the)g
+Ff(lib)d Fn(directory)26 b(of)e(the)g(b)n(uild)g(tree;)p
+Black 0 5644 3827 9 v 0 5757 a(SALOME)415 b(Using)24
+b(the)g(SALOME)d(con\002guration)26 b(and)e(b)n(uilding)i(system)e(V)
+-12 b(.)23 b(0.3)607 b(7/20)p Black eop
+%%Page: 8 8
+8 7 bop Black Black Black 136 50 a Fc(\017)p Black 46
+w Ff(make)53 b(bin)21 b Fn(:)29 b(generate)c(binaries;)p
+Black 136 219 a Fc(\017)p Black 46 w Ff(make)53 b(tests)f(\(make)h
+(check\))20 b Fn(:)28 b(b)n(uild)d(and)f(run)g(tests)g(\(not)g(yet)g
+(implemented\).)0 485 y(After)34 b(b)n(uilding,)39 b(testing,)f(the)d
+(user)f(may)g(install)i(the)e(system)h(in)f(a)g(choosen)i(directory)h
+(\(dif)n(ferent)f(from)e(and)h(not)0 620 y(included)26
+b(in)d(the)h(top)g(source)h(directory)h(and)e(the)g(top)g(b)n(uild)g
+(directory\).)0 803 y(From)f(the)h(top)f(b)n(uild)i(directory)-6
+b(,)26 b(type)e(:)p Black Black 227 1047 a Ff(make)53
+b(install)21 b Fn(:)32 b(install)27 b(libraries,)h(header)e(and)g(idl)f
+(\002les,)h(binaries,)h(resource)g(\002les)e(in)h(the)f(instal-)227
+1182 y(lation)g(directory)0 1549 y Fj(3)119 b(Module)31
+b(cr)n(eation)0 1826 y Fn(In)22 b(this)h(section,)g(the)g(ne)n(w)e
+(module)i(will)f(be)g(named)h Ff(<Module>)p Fn(.)g(Replace)h(each)e
+(occurence)j(with)d(the)g(real)h(name)f(of)0 1962 y(your)i(module.)p
+Black 114 2228 a(1.)p Black 45 w(In)g(the)g(source)h(tree)f(root)g
+Ff(SALOME)p 1383 2228 28 4 v 30 w(ROOT)p Fn(,)c(create)25
+b(a)e(ne)n(w)g(directory)j Ff(<Module>)19 b Fn(:)p Black
+Black 227 2363 a Ff(cd)54 b(SALOME_ROOT)227 2499 y(mkdir)f(<Module>)p
+Black 114 2667 a Fn(2.)p Black 45 w(Modify)25 b(the)f
+Ff(Makefile.in)49 b Fn(\002le)23 b(in)g(the)h Ff(SALOME)p
+2012 2667 V 30 w(ROOT)d Fn(directory)26 b(to)e(add)g(the)f(ne)n(w)g
+(module)i(:)227 2803 y(Append)g(to)e(the)h(line)g(be)o(ginning)i(with)p
+Black Black 227 2938 a Ff(SUBDIRS)52 b(=)227 3032 y Fn(the)24
+b(name)g(of)f(the)h(ne)n(w)f(module.)p Black 114 3201
+a(3.)p Black 45 w(In)36 b(the)g(module)h(root)g(directory)-6
+b(,)41 b(create)c(tw)o(o)f(subdirectories)k Ff(src)34
+b Fn(and)i Ff(resources)31 b Fn(and)37 b(create)g(a)f(\002le)227
+3336 y Ff(Makefile.in)50 b Fn(\(e.g.)29 b(cop)o(y)24
+b(the)g(corresponding)k(\002le)23 b(in)g Ff(GEOM)e Fn(module)j(for)g(e)
+o(xample\))h(:)p Black Black 227 3472 a Ff(cd)54 b(<Module>)227
+3607 y(mkdir)f(src)227 3743 y(mkdir)g(resources)227 3878
+y(cp)h(../GEOM/Makefil)o(e.)o(in)48 b(.)p Black 114 4047
+a Fn(4.)p Black 45 w(In)18 b(the)h Ff(src)d Fn(subdirectory)-6
+b(,)22 b(cop)o(y)d(a)f Ff(Makefile.in)49 b Fn(\002le)18
+b(\(e.g.)27 b(from)18 b(the)g(corresponding)23 b(\002le)17
+b(in)h Ff(GEOM/src)227 4183 y Fn(subdirectory)27 b(for)d(e)o(xample\))h
+(:)p Black Black 227 4318 a Ff(cd)54 b(src)227 4454 y(cp)g
+(../../GEOM/src/)o(Ma)o(ke)o(fi)o(le)o(.in)48 b(.)p Black
+114 4622 a Fn(5.)p Black 45 w(Edit)24 b(this)g(\002le)f(and)h(replace)h
+(the)f(line)p Black Black 227 4758 a Ff(MODULE)52 b(=)i(GEOM)227
+4852 y Fn(with)p Black Black 227 4987 a Ff(MODULE)e(=)i(<Module>)p
+Black 114 5156 a Fn(6.)p Black 45 w(Edit)24 b(this)g(\002le)f(and)h
+(replace)h(the)f(line)p Black Black 227 5291 a Ff(SUBDIRS)52
+b(=)i(GEOMDS)e(GEOM)g(GEOMGUI)227 5385 y Fn(with)p Black
+Black 227 5521 a Ff(SUBDIRS)g(=)p Black 0 5644 3827 9
+v 0 5757 a Fn(SALOME)415 b(Using)24 b(the)g(SALOME)d(con\002guration)26
+b(and)e(b)n(uilding)i(system)e(V)-12 b(.)23 b(0.3)607
+b(8/20)p Black eop
+%%Page: 9 9
+9 8 bop Black Black 227 50 a Fn(\(empty)25 b(list)e(of)h(de)n(v)o
+(elopment)i(units)e(in)g(this)g(module\).)p Black 114
+219 a(7.)p Black 45 w(Edit)g(this)g(\002le)f(and)h(replace)h(the)f
+(line)p Black Black 227 354 a Ff(RESOURCES_FILES)48 b(=)54
+b(arc.png)d(\\)227 489 y(...)227 583 y Fn(with)p Black
+Black 227 719 a Ff(RESOURCES_FILES)d(=)227 813 y Fn(\(list)24
+b(of)g(all)g(ressources)i(for)e(this)g(module\).)p Black
+114 982 a(8.)p Black 45 w(Add)g(the)f(ne)n(w)g Ff(Makefile.in)50
+b Fn(\002les)23 b(in)h(the)f(global)i(list)f(of)g(.in)f(\002les.)227
+1117 y(In)h(the)g(root)g(directory)i(of)d(the)h(source)h(tree,)f(e)o(x)
+o(ecute)g(the)g Ff(reconfigure)18 b Fn(script)25 b(or)e(manually)i(:)p
+Black 281 1253 a(\(a\))p Black 46 w(edit)19 b(the)f(con\002gure.in)i
+(\002le)e(in)g(the)g(source)i(tree)e(root,)i(add)e Ff(Makefile.in)50
+b Fn(\002les)18 b(into)g(the)h Ff(AC)p 3483 1253 28 4
+v 32 w(OUTPUT)427 1388 y Fn(list,)p Black 276 1557 a(\(b\))p
+Black 46 w(from)36 b(the)f(source)i(tree)f(root)g(directory)-6
+b(,)41 b(run)36 b(the)f Ff(genconf)d Fn(script)k(which)g(launch)h
+Ff(aclocal)31 b Fn(and)427 1692 y Ff(autoconf)p Fn(.)0
+1975 y(Figure)24 b(2)f(summarize)i(these)f(changes.)p
+Black 0 4377 a @beginspecial 0 @llx 0 @lly 405 @urx 274
+@ury 4050 @rwi @setspecial
+%%BeginDocument: ../../../SALOME_ROOT/doc/DevelopersGuide/srctree_module.eps
+%!PS-Adobe-2.0 EPSF-2.0
+%%Title: srctree_module.eps
+%%Creator: fig2dev Version 3.2 Patchlevel 3c
+%%CreationDate: Thu Jul 26 11:57:52 2001
+%%For: tajchman@nikyo (Marc Tajchman - SFME/LGLS)
+%%BoundingBox: 0 0 405 274
+%%Magnification: 1.0000
+%%EndComments
+/$F2psDict 200 dict def
+$F2psDict begin
+$F2psDict /mtrx matrix put
+/col-1 {0 setgray} bind def
+/col0 {0.000 0.000 0.000 srgb} bind def
+/col1 {0.000 0.000 1.000 srgb} bind def
+/col2 {0.000 1.000 0.000 srgb} bind def
+/col3 {0.000 1.000 1.000 srgb} bind def
+/col4 {1.000 0.000 0.000 srgb} bind def
+/col5 {1.000 0.000 1.000 srgb} bind def
+/col6 {1.000 1.000 0.000 srgb} bind def
+/col7 {1.000 1.000 1.000 srgb} bind def
+/col8 {0.000 0.000 0.560 srgb} bind def
+/col9 {0.000 0.000 0.690 srgb} bind def
+/col10 {0.000 0.000 0.820 srgb} bind def
+/col11 {0.530 0.810 1.000 srgb} bind def
+/col12 {0.000 0.560 0.000 srgb} bind def
+/col13 {0.000 0.690 0.000 srgb} bind def
+/col14 {0.000 0.820 0.000 srgb} bind def
+/col15 {0.000 0.560 0.560 srgb} bind def
+/col16 {0.000 0.690 0.690 srgb} bind def
+/col17 {0.000 0.820 0.820 srgb} bind def
+/col18 {0.560 0.000 0.000 srgb} bind def
+/col19 {0.690 0.000 0.000 srgb} bind def
+/col20 {0.820 0.000 0.000 srgb} bind def
+/col21 {0.560 0.000 0.560 srgb} bind def
+/col22 {0.690 0.000 0.690 srgb} bind def
+/col23 {0.820 0.000 0.820 srgb} bind def
+/col24 {0.500 0.190 0.000 srgb} bind def
+/col25 {0.630 0.250 0.000 srgb} bind def
+/col26 {0.750 0.380 0.000 srgb} bind def
+/col27 {1.000 0.500 0.500 srgb} bind def
+/col28 {1.000 0.630 0.630 srgb} bind def
+/col29 {1.000 0.750 0.750 srgb} bind def
+/col30 {1.000 0.880 0.880 srgb} bind def
+/col31 {1.000 0.840 0.000 srgb} bind def
+
+end
+save
+newpath 0 274 moveto 0 0 lineto 405 0 lineto 405 274 lineto closepath clip newpath
+-33.0 371.0 translate
+1 -1 scale
+
+/cp {closepath} bind def
+/ef {eofill} bind def
+/gr {grestore} bind def
+/gs {gsave} bind def
+/sa {save} bind def
+/rs {restore} bind def
+/l {lineto} bind def
+/m {moveto} bind def
+/rm {rmoveto} bind def
+/n {newpath} bind def
+/s {stroke} bind def
+/sh {show} bind def
+/slc {setlinecap} bind def
+/slj {setlinejoin} bind def
+/slw {setlinewidth} bind def
+/srgb {setrgbcolor} bind def
+/rot {rotate} bind def
+/sc {scale} bind def
+/sd {setdash} bind def
+/ff {findfont} bind def
+/sf {setfont} bind def
+/scf {scalefont} bind def
+/sw {stringwidth} bind def
+/tr {translate} bind def
+/tnt {dup dup currentrgbcolor
+ 4 -2 roll dup 1 exch sub 3 -1 roll mul add
+ 4 -2 roll dup 1 exch sub 3 -1 roll mul add
+ 4 -2 roll dup 1 exch sub 3 -1 roll mul add srgb}
+ bind def
+/shd {dup dup currentrgbcolor 4 -2 roll mul 4 -2 roll mul
+ 4 -2 roll mul srgb} bind def
+/$F2psBegin {$F2psDict begin /$F2psEnteredState save def} def
+/$F2psEnd {$F2psEnteredState restore end} def
+
+$F2psBegin
+%%Page: 1 1
+10 setmiterlimit
+ 0.06000 0.06000 sc
+%
+% Fig objects follow
+%
+% Polyline
+15.000 slw
+n 2925 5700 m 3825 5700 l 3825 6150 l 2925 6150 l
+ cp gs col0 s gr
+/Times-Roman ff 180.00 scf sf
+3075 6000 m
+gs 1 -1 sc (src) col0 sh gr
+% Polyline
+n 1650 5700 m 2625 5700 l 2625 6150 l 1650 6150 l
+ cp gs col0 s gr
+/Times-Roman ff 180.00 scf sf
+1725 6000 m
+gs 1 -1 sc (resources) col0 sh gr
+% Polyline
+n 1200 3825 m 2175 3825 l 2175 4275 l 1200 4275 l
+ cp gs col0 s gr
+/Times-Roman ff 180.00 scf sf
+1500 4125 m
+gs 1 -1 sc (idl) col0 sh gr
+% Polyline
+n 2400 3825 m 3600 3825 l 3600 4275 l 2400 4275 l
+ cp gs col0 s gr
+/Times-Roman ff 180.00 scf sf
+2550 4125 m
+gs 1 -1 sc (New module) col0 sh gr
+% Polyline
+n 1005 2475 m 825 2475 825 3195 180 arcto 4 {pop} repeat
+ 825 3375 2295 3375 180 arcto 4 {pop} repeat
+ 2475 3375 2475 2655 180 arcto 4 {pop} repeat
+ 2475 2475 1005 2475 180 arcto 4 {pop} repeat
+ cp gs col6 1.00 shd ef gr gs col0 s gr
+/Times-Bold ff 180.00 scf sf
+975 2775 m
+gs 1 -1 sc (Run reconfigure) col0 sh gr
+/Times-Bold ff 180.00 scf sf
+975 3000 m
+gs 1 -1 sc (script or edit) col0 sh gr
+/Times-Bold ff 180.00 scf sf
+975 3225 m
+gs 1 -1 sc (configure.in file) col0 sh gr
+% Polyline
+n 3150 2625 m 4800 2625 l 4800 3225 l 3150 3225 l
+ cp gs col0 s gr
+/Times-Roman ff 180.00 scf sf
+3300 3000 m
+gs 1 -1 sc (Root Source Tree) col0 sh gr
+% Polyline
+n 3825 3825 m 4875 3825 l 4875 4275 l 3825 4275 l
+ cp gs col0 s gr
+/Times-Roman ff 180.00 scf sf
+3975 4125 m
+gs 1 -1 sc (resources) col0 sh gr
+% Polyline
+n 5025 3825 m 6075 3825 l 6075 4275 l 5025 4275 l
+ cp gs col0 s gr
+/Times-Roman ff 180.00 scf sf
+5250 4125 m
+gs 1 -1 sc (bin) col0 sh gr
+% Polyline
+n 4350 3225 m
+ 4350 3825 l gs col0 s gr
+% Polyline
+n 3450 3225 m
+ 1725 3825 l gs col0 s gr
+% Polyline
+n 2625 4275 m
+ 2325 5700 l gs col0 s gr
+% Polyline
+n 4575 3225 m
+ 5400 3825 l gs col0 s gr
+% Polyline
+n 2925 3825 m
+ 3675 3225 l gs col0 s gr
+% Polyline
+n 3139 4261 m
+ 3439 5686 l gs col0 s gr
+% Polyline
+gs clippath
+3159 3023 m 3179 2935 l 3034 2902 l 3135 2971 l 3015 2990 l cp
+eoclip
+n 2480 2826 m
+ 3155 2976 l gs col0 s gr gr
+
+% arrowhead
+n 3015 2990 m 3135 2971 l 3034 2902 l 3047 2951 l 3015 2990 l
+ cp gs 0.00 setgray ef gr col0 s
+% Polyline
+n 783 4753 m 588 4753 588 5177 195 arcto 4 {pop} repeat
+ 588 5372 1768 5372 195 arcto 4 {pop} repeat
+ 1963 5372 1963 4948 195 arcto 4 {pop} repeat
+ 1963 4753 783 4753 195 arcto 4 {pop} repeat
+ cp gs col6 1.00 shd ef gr gs col0 s gr
+% Polyline
+n 4605 4575 m 4425 4575 4425 5070 180 arcto 4 {pop} repeat
+ 4425 5250 6045 5250 180 arcto 4 {pop} repeat
+ 6225 5250 6225 4755 180 arcto 4 {pop} repeat
+ 6225 4575 4605 4575 180 arcto 4 {pop} repeat
+ cp gs col6 1.00 shd ef gr gs col0 s gr
+% Polyline
+n 5580 2700 m 5400 2700 5400 3195 180 arcto 4 {pop} repeat
+ 5400 3375 7020 3375 180 arcto 4 {pop} repeat
+ 7200 3375 7200 2880 180 arcto 4 {pop} repeat
+ 7200 2700 5580 2700 180 arcto 4 {pop} repeat
+ cp gs col6 1.00 shd ef gr gs col0 s gr
+% Polyline
+n 5655 1650 m 5475 1650 5475 2145 180 arcto 4 {pop} repeat
+ 5475 2325 7095 2325 180 arcto 4 {pop} repeat
+ 7275 2325 7275 1830 180 arcto 4 {pop} repeat
+ 7275 1650 5655 1650 180 arcto 4 {pop} repeat
+ cp gs col6 1.00 shd ef gr gs col0 s gr
+% Polyline
+2 slj
+gs clippath
+4677 2619 m 4759 2657 l 4822 2523 l 4734 2606 l 4741 2485 l cp
+eoclip
+n 5475 1875 m 5474 1875 l 5472 1874 l 5468 1874 l 5461 1873 l 5453 1872 l
+ 5442 1871 l 5430 1870 l 5415 1869 l 5399 1869 l 5381 1870 l
+ 5363 1872 l 5343 1875 l 5322 1880 l 5300 1887 l 5277 1896 l
+ 5252 1908 l 5226 1923 l 5197 1942 l 5166 1965 l 5134 1993 l
+ 5100 2025 l 5071 2055 l 5043 2086 l 5017 2119 l 4992 2151 l
+ 4968 2183 l 4946 2216 l 4925 2247 l 4905 2279 l 4886 2310 l
+ 4868 2342 l 4851 2372 l 4834 2403 l 4819 2433 l 4804 2462 l
+ 4790 2490 l 4777 2516 l 4765 2540 l 4755 2561 l 4746 2579 l
+ 4739 2595 l 4734 2606 l
+ 4725 2625 l gs col0 s gr gr
+
+% arrowhead
+0 slj
+n 4741 2485 m 4734 2606 l 4822 2523 l 4772 2524 l 4741 2485 l
+ cp gs 0.00 setgray ef gr col0 s
+% Polyline
+2 slj
+gs clippath
+1980 5683 m 2051 5739 l 2143 5623 l 2038 5684 l 2072 5567 l cp
+eoclip
+n 1950 5025 m 1952 5026 l 1956 5029 l 1964 5034 l 1974 5041 l 1988 5051 l
+ 2004 5063 l 2022 5077 l 2041 5093 l 2061 5110 l 2080 5129 l
+ 2098 5149 l 2116 5172 l 2132 5196 l 2146 5224 l 2159 5254 l
+ 2169 5288 l 2175 5325 l 2177 5359 l 2176 5392 l 2171 5423 l
+ 2165 5453 l 2157 5480 l 2147 5506 l 2136 5531 l 2124 5555 l
+ 2111 5578 l 2098 5599 l 2084 5620 l 2071 5638 l 2059 5655 l
+ 2049 5669 l 2040 5681 l
+ 2025 5700 l gs col0 s gr gr
+
+% arrowhead
+0 slj
+n 2072 5567 m 2038 5684 l 2143 5623 l 2093 5613 l 2072 5567 l
+ cp gs 0.00 setgray ef gr col0 s
+% Polyline
+2 slj
+gs clippath
+3116 5733 m 3196 5693 l 3142 5583 l 3142 5684 l 3061 5623 l cp
+eoclip
+n 1950 5025 m 1951 5025 l 1954 5024 l 1959 5023 l 1967 5021 l 1978 5019 l
+ 1992 5016 l 2009 5012 l 2029 5009 l 2052 5005 l 2077 5001 l
+ 2104 4998 l 2133 4995 l 2163 4992 l 2194 4991 l 2226 4990 l
+ 2259 4991 l 2293 4993 l 2329 4997 l 2366 5004 l 2405 5012 l
+ 2446 5023 l 2488 5037 l 2533 5055 l 2579 5076 l 2625 5100 l
+ 2667 5125 l 2708 5152 l 2746 5181 l 2782 5209 l 2815 5238 l
+ 2846 5268 l 2875 5297 l 2902 5326 l 2927 5356 l 2950 5385 l
+ 2973 5414 l 2994 5443 l 3014 5472 l 3033 5501 l 3051 5529 l
+ 3067 5555 l 3083 5581 l 3097 5604 l 3109 5626 l 3120 5645 l
+ 3129 5661 l 3136 5674 l 3142 5684 l
+ 3150 5700 l gs col0 s gr gr
+
+% arrowhead
+0 slj
+n 3061 5623 m 3142 5684 l 3142 5583 l col0 s
+% Polyline
+2 slj
+gs clippath
+2596 4285 m 2519 4238 l 2442 4366 l 2539 4293 l 2519 4412 l cp
+eoclip
+n 2025 4950 m 2026 4949 l 2029 4947 l 2034 4944 l 2041 4940 l 2050 4933 l
+ 2061 4925 l 2074 4915 l 2089 4903 l 2104 4889 l 2122 4872 l
+ 2142 4853 l 2164 4829 l 2189 4800 l 2218 4765 l 2250 4725 l
+ 2274 4694 l 2298 4662 l 2320 4630 l 2342 4600 l 2362 4570 l
+ 2382 4542 l 2401 4514 l 2418 4486 l 2436 4460 l 2452 4434 l
+ 2468 4409 l 2483 4384 l 2497 4362 l 2510 4341 l 2521 4323 l
+ 2530 4307 l 2538 4295 l
+ 2550 4275 l gs col0 s gr gr
+
+% arrowhead
+0 slj
+n 2519 4412 m 2539 4293 l 2442 4366 l 2492 4370 l 2519 4412 l
+ cp gs 0.00 setgray ef gr col0 s
+% Polyline
+2 slj
+gs clippath
+3406 4239 m 3328 4283 l 3400 4413 l 3385 4293 l 3479 4368 l cp
+eoclip
+n 4425 4950 m 4424 4950 l 4420 4950 l 4415 4950 l 4406 4951 l 4394 4951 l
+ 4378 4951 l 4360 4951 l 4338 4951 l 4315 4950 l 4289 4949 l
+ 4261 4948 l 4232 4945 l 4202 4942 l 4170 4937 l 4138 4931 l
+ 4105 4923 l 4070 4914 l 4033 4902 l 3995 4888 l 3955 4871 l
+ 3912 4850 l 3869 4827 l 3825 4800 l 3785 4773 l 3747 4745 l
+ 3712 4716 l 3679 4688 l 3649 4659 l 3621 4631 l 3595 4603 l
+ 3572 4575 l 3549 4548 l 3529 4521 l 3509 4494 l 3491 4467 l
+ 3473 4441 l 3457 4416 l 3442 4392 l 3429 4370 l 3416 4349 l
+ 3406 4330 l 3397 4314 l 3389 4301 l 3384 4291 l
+ 3375 4275 l gs col0 s gr gr
+
+% arrowhead
+0 slj
+n 3479 4368 m 3385 4293 l 3400 4413 l 3429 4371 l 3479 4368 l
+ cp gs 0.00 setgray ef gr col0 s
+% Polyline
+2 slj
+gs clippath
+3477 5705 m 3565 5724 l 3596 5579 l 3529 5680 l 3508 5560 l cp
+eoclip
+n 4425 4950 m 4423 4950 l 4420 4950 l 4414 4949 l 4404 4948 l 4391 4947 l
+ 4374 4946 l 4354 4946 l 4330 4945 l 4304 4944 l 4276 4945 l
+ 4247 4945 l 4216 4947 l 4185 4950 l 4152 4954 l 4119 4960 l
+ 4085 4967 l 4051 4977 l 4015 4989 l 3978 5004 l 3941 5022 l
+ 3902 5045 l 3863 5070 l 3825 5100 l 3789 5133 l 3755 5167 l
+ 3726 5202 l 3699 5237 l 3676 5272 l 3655 5306 l 3637 5341 l
+ 3621 5375 l 3606 5409 l 3594 5442 l 3582 5475 l 3572 5508 l
+ 3563 5539 l 3555 5569 l 3548 5597 l 3542 5622 l 3537 5644 l
+ 3533 5663 l 3530 5677 l
+ 3525 5700 l gs col0 s gr gr
+
+% arrowhead
+0 slj
+n 3508 5560 m 3529 5680 l 3596 5579 l 3548 5592 l 3508 5560 l
+ cp gs 0.00 setgray ef gr col0 s
+% Polyline
+2 slj
+gs clippath
+4602 3819 m 4684 3857 l 4747 3723 l 4659 3806 l 4666 3685 l cp
+eoclip
+n 5400 3075 m 5399 3075 l 5397 3074 l 5393 3074 l 5386 3073 l 5378 3072 l
+ 5367 3071 l 5355 3070 l 5340 3069 l 5324 3069 l 5306 3070 l
+ 5288 3072 l 5268 3075 l 5247 3080 l 5225 3087 l 5202 3096 l
+ 5177 3108 l 5151 3123 l 5122 3142 l 5091 3165 l 5059 3193 l
+ 5025 3225 l 4996 3255 l 4968 3286 l 4942 3319 l 4917 3351 l
+ 4893 3383 l 4871 3416 l 4850 3447 l 4830 3479 l 4811 3510 l
+ 4793 3542 l 4776 3572 l 4759 3603 l 4744 3633 l 4729 3662 l
+ 4715 3690 l 4702 3716 l 4690 3740 l 4680 3761 l 4671 3779 l
+ 4664 3795 l 4659 3806 l
+ 4650 3825 l gs col0 s gr gr
+
+% arrowhead
+0 slj
+n 4666 3685 m 4659 3806 l 4747 3723 l 4697 3724 l 4666 3685 l
+ cp gs 0.00 setgray ef gr col0 s
+/Times-Bold ff 180.00 scf sf
+750 5025 m
+gs 1 -1 sc (Create) col0 sh gr
+/Times-Bold ff 180.00 scf sf
+750 5250 m
+gs 1 -1 sc (directories) col0 sh gr
+/Times-Bold ff 180.00 scf sf
+4575 4875 m
+gs 1 -1 sc (Copy and/or) col0 sh gr
+/Times-Bold ff 180.00 scf sf
+4575 5100 m
+gs 1 -1 sc (create Makefile.in) col0 sh gr
+/Times-Bold ff 180.00 scf sf
+5550 3225 m
+gs 1 -1 sc (files \(module level\)) col0 sh gr
+/Times-Bold ff 180.00 scf sf
+5550 3000 m
+gs 1 -1 sc (Exported resource) col0 sh gr
+/Times-Bold ff 180.00 scf sf
+5625 1950 m
+gs 1 -1 sc (Update SUBDIRS ) col0 sh gr
+/Times-Bold ff 180.00 scf sf
+5625 2175 m
+gs 1 -1 sc (list in Makefile.in) col0 sh gr
+$F2psEnd
+rs
+
+%%EndDocument
+ @endspecial Black 727 4596 a(Figure)g(2:)29 b(Source)c(tree)f(:)k
+(modi\002cation)d(when)f(adding)h(an)f(ne)n(w)f(module)p
+Black Black 0 5018 a Fj(4)119 b(De)n(v)o(elopment)31
+b(unit)g(cr)n(eation)0 5295 y Fn(Here)24 b(we)f(w)o(ant)g(to)h(add)g(a)
+g(de)n(v)o(elopment)i(unit)e(named)g Ff(<Unit>)d Fn(in)i(the)h(e)o
+(xisting)i(module)f Ff(<Module>)19 b Fn(\(replace)26
+b(the)0 5430 y(names)e Ff(<Unit>)c Fn(and)k Ff(<Module>)19
+b Fn(with)k(real)h(ones\).)p Black 0 5644 3827 9 v 0
+5757 a(SALOME)415 b(Using)24 b(the)g(SALOME)d(con\002guration)26
+b(and)e(b)n(uilding)i(system)e(V)-12 b(.)23 b(0.3)607
+b(9/20)p Black eop
+%%Page: 10 10
+10 9 bop Black Black Black 114 50 a Fn(1.)p Black 45
+w(In)24 b(the)g Ff(src)d Fn(subdirectory)27 b(of)d Ff(<Module>)p
+Fn(,)18 b(create)25 b(a)e(subdirectory)k(named)d Ff(<Unit>)c
+Fn(:)p Black Black 227 185 a Ff(cd)54 b(<path)e(to)i(<Module>)d(>/src)
+227 321 y(mkdir)i(<Unit>)227 373 y Fn(Modify)38 b(then)g
+Ff(Makefile.in)49 b Fn(\002le)37 b(in)g(the)g Ff(src)e
+Fn(directory)k(to)e(add)g(the)g(ne)n(w)g(unit)g(to)g(the)g(compilation)
+227 509 y(process)26 b(:)227 644 y(Complete)f(the)e(line)h(be)o
+(ginning)i(with)p Black Black 227 780 a Ff(SUBDIRS)52
+b(=)i(...)227 874 y Fn(with)24 b(the)f(name)h(of)g(the)f(ne)n(w)g
+(directory)p Black Black 227 1009 a Ff(SUBDIRS)52 b(=)i(...)f(<Unit>)p
+Black 114 1178 a Fn(2.)p Black 45 w(Create)25 b(a)f Ff(Makefile.in)50
+b Fn(\002le)24 b(in)g(the)h(ne)n(w)f Ff(<Unit>)d Fn(directory)27
+b(\(you)e(can)g(cop)o(y)h(a)e Ff(Makefile.in)50 b Fn(\002le)227
+1313 y(from)31 b(the)h(corresponding)j(subdirectory)g(in)c
+Ff(GEOM)e Fn(module)j(:)44 b Ff(GEOM/src/GEOMG)o(UI)24
+b Fn(subdirectory)35 b(for)227 1449 y(e)o(xample,)24
+b(and)g(modify)h(as)e(you)h(need\))p Black Black 227
+1584 a Ff(cd)54 b(<Unit>)227 1720 y(...)f(create)f(Makefile.in)227
+1772 y Fn(The)23 b(details)i(of)f Ff(Makefile.in)49 b
+Fn(creation)26 b(is)d(detailed)j(in)d(the)h(ne)o(xt)g(section.)0
+2055 y(The)f(dif)n(ferent)j(\002les)d(of)g(your)i(unit)f(must)f(be)h
+(located)h(in)f(se)n(v)o(eral)g(directories)j(\(see)d(\002gure)g(3)f
+(and)h(the)g(list)f(belo)n(w\).)p Black 136 2337 a Fc(\017)p
+Black 46 w Fn(Pri)n(v)n(ate)h(source)h(and)f(header)h(\002les)e(of)h
+(your)g(unit)227 2473 y(Place)29 b(the)f(only)h(cop)o(y)h(of)e(these)h
+(\002les)f(in)g(your)h(unit.)44 b(If)28 b(you)h(use)g(the)f(proposed)j
+(mak)o(e\002le)e(system,)g(dont)h(put)227 2608 y(them)24
+b(in)f(subdirectories)28 b(of)23 b(your)i(unit.)227 2744
+y(Note)p Black Black 427 2916 a(Using)k(a)g(non-\003at)g(directory)i
+(structure)g(for)e(an)g(unit,)h(has)f(not)h(been)f(tested)h(b)n(ut)f
+(it)g(should)h(w)o(ork.)427 3052 y(Y)-10 b(ou)24 b(must)f(write)h(your)
+g(mak)o(e\002le)g(to)f(tak)o(e)i(care)f(of)f(subdirectories.)p
+Black 136 3225 a Fc(\017)p Black 46 w Fn(Exported)i(idl)f(\002les)f
+(from)h(a)f(unit)227 3360 y(These)h(\002les)f(are)h(pro)o(vided)i(by)d
+(the)h(unit)g(for)g(CORB)m(A)d(communication)26 b(with)d(other)i
+(units.)227 3496 y(Place)f(the)g(only)g(cop)o(y)h(of)e(these)i(\002les)
+e(into)h(the)g(idl)g(subdirectory)j(of)c(the)h(root)g(source)h(tree.)p
+Black 136 3664 a Fc(\017)p Black 46 w Fn(Exported)g(header)g(\002les)f
+(from)f(a)g(unit)227 3800 y(These)34 b(\002les)g(are)g(pro)o(vided)i
+(by)e(the)g(unit)g(for)g(direct)h(communication)i(from)d(other)g(units)
+h(\(using)h(the)e(unit')-5 b(s)227 3935 y(library\).)227
+4071 y(Place)24 b(the)g(master)g(cop)o(y)g(of)g(these)g(\002les)g(in)f
+(your)h(unit)h(subtree.)227 4206 y(Assure)e(that)g(these)g(\002les)g
+(are)f(automatically)j(or)e(manually)h(copied)f(in)g(the)f(inc)h
+(subdirectory)j(of)c(the)h(root)g(b)n(uild)227 4342 y(tree.)0
+4712 y Fj(5)119 b(Cr)n(eating)31 b(a)e Fb(Makefile.in)69
+b Fj(\002le)31 b(in)f(a)g(new)h(unit)0 4992 y Fe(5.1)99
+b(Using)25 b(pr)n(ede\002ned)j(mak)o(e)d(rules)0 5237
+y Fn(Cop)o(y)f(the)g(follo)n(wing)h Ff(Makefile.in)72
+b Fn(sk)o(eleton)26 b(in)d(the)h(unit)g(directory)i(:)p
+Black Black 0 5519 a Ff(#)54 b(begin)e(copy)h(here)g(==============)o
+(===)o(==)o(==)o(==)o(==)o(===)o(==)o(==)o(==)o(==)o(===)o(==)o(=)p
+Black 0 5644 3827 9 v 0 5757 a Fn(SALOME)415 b(Using)24
+b(the)g(SALOME)d(con\002guration)26 b(and)e(b)n(uilding)i(system)e(V)
+-12 b(.)23 b(0.3)562 b(10/20)p Black eop
+%%Page: 11 11
+11 10 bop Black Black Black 0 3100 a @beginspecial 0
+@llx 0 @lly 404 @urx 377 @ury 4040 @rwi @setspecial
+%%BeginDocument: ../../../SALOME_ROOT/doc/DevelopersGuide/srctree_unit.eps
+%!PS-Adobe-2.0 EPSF-2.0
+%%Title: srctree_unit.eps
+%%Creator: fig2dev Version 3.2 Patchlevel 3c
+%%CreationDate: Thu Jul 26 11:57:40 2001
+%%For: tajchman@nikyo (Marc Tajchman - SFME/LGLS)
+%%BoundingBox: 0 0 404 377
+%%Magnification: 1.0000
+%%EndComments
+/$F2psDict 200 dict def
+$F2psDict begin
+$F2psDict /mtrx matrix put
+/col-1 {0 setgray} bind def
+/col0 {0.000 0.000 0.000 srgb} bind def
+/col1 {0.000 0.000 1.000 srgb} bind def
+/col2 {0.000 1.000 0.000 srgb} bind def
+/col3 {0.000 1.000 1.000 srgb} bind def
+/col4 {1.000 0.000 0.000 srgb} bind def
+/col5 {1.000 0.000 1.000 srgb} bind def
+/col6 {1.000 1.000 0.000 srgb} bind def
+/col7 {1.000 1.000 1.000 srgb} bind def
+/col8 {0.000 0.000 0.560 srgb} bind def
+/col9 {0.000 0.000 0.690 srgb} bind def
+/col10 {0.000 0.000 0.820 srgb} bind def
+/col11 {0.530 0.810 1.000 srgb} bind def
+/col12 {0.000 0.560 0.000 srgb} bind def
+/col13 {0.000 0.690 0.000 srgb} bind def
+/col14 {0.000 0.820 0.000 srgb} bind def
+/col15 {0.000 0.560 0.560 srgb} bind def
+/col16 {0.000 0.690 0.690 srgb} bind def
+/col17 {0.000 0.820 0.820 srgb} bind def
+/col18 {0.560 0.000 0.000 srgb} bind def
+/col19 {0.690 0.000 0.000 srgb} bind def
+/col20 {0.820 0.000 0.000 srgb} bind def
+/col21 {0.560 0.000 0.560 srgb} bind def
+/col22 {0.690 0.000 0.690 srgb} bind def
+/col23 {0.820 0.000 0.820 srgb} bind def
+/col24 {0.500 0.190 0.000 srgb} bind def
+/col25 {0.630 0.250 0.000 srgb} bind def
+/col26 {0.750 0.380 0.000 srgb} bind def
+/col27 {1.000 0.500 0.500 srgb} bind def
+/col28 {1.000 0.630 0.630 srgb} bind def
+/col29 {1.000 0.750 0.750 srgb} bind def
+/col30 {1.000 0.880 0.880 srgb} bind def
+/col31 {1.000 0.840 0.000 srgb} bind def
+
+end
+save
+newpath 0 377 moveto 0 0 lineto 404 0 lineto 404 377 lineto closepath clip newpath
+-12.0 416.0 translate
+1 -1 scale
+
+/cp {closepath} bind def
+/ef {eofill} bind def
+/gr {grestore} bind def
+/gs {gsave} bind def
+/sa {save} bind def
+/rs {restore} bind def
+/l {lineto} bind def
+/m {moveto} bind def
+/rm {rmoveto} bind def
+/n {newpath} bind def
+/s {stroke} bind def
+/sh {show} bind def
+/slc {setlinecap} bind def
+/slj {setlinejoin} bind def
+/slw {setlinewidth} bind def
+/srgb {setrgbcolor} bind def
+/rot {rotate} bind def
+/sc {scale} bind def
+/sd {setdash} bind def
+/ff {findfont} bind def
+/sf {setfont} bind def
+/scf {scalefont} bind def
+/sw {stringwidth} bind def
+/tr {translate} bind def
+/tnt {dup dup currentrgbcolor
+ 4 -2 roll dup 1 exch sub 3 -1 roll mul add
+ 4 -2 roll dup 1 exch sub 3 -1 roll mul add
+ 4 -2 roll dup 1 exch sub 3 -1 roll mul add srgb}
+ bind def
+/shd {dup dup currentrgbcolor 4 -2 roll mul 4 -2 roll mul
+ 4 -2 roll mul srgb} bind def
+/$F2psBegin {$F2psDict begin /$F2psEnteredState save def} def
+/$F2psEnd {$F2psEnteredState restore end} def
+
+$F2psBegin
+%%Page: 1 1
+10 setmiterlimit
+ 0.06000 0.06000 sc
+%
+% Fig objects follow
+%
+% Polyline
+15.000 slw
+n 1530 675 m 1350 675 1350 1395 180 arcto 4 {pop} repeat
+ 1350 1575 2820 1575 180 arcto 4 {pop} repeat
+ 3000 1575 3000 855 180 arcto 4 {pop} repeat
+ 3000 675 1530 675 180 arcto 4 {pop} repeat
+ cp gs col6 1.00 shd ef gr gs col0 s gr
+/Times-Bold ff 180.00 scf sf
+1500 975 m
+gs 1 -1 sc (Run reconfigure) col0 sh gr
+/Times-Bold ff 180.00 scf sf
+1500 1200 m
+gs 1 -1 sc (script or edit) col0 sh gr
+/Times-Bold ff 180.00 scf sf
+1500 1425 m
+gs 1 -1 sc (configure.in file) col0 sh gr
+% Polyline
+n 855 3000 m 675 3000 675 3495 180 arcto 4 {pop} repeat
+ 675 3675 1770 3675 180 arcto 4 {pop} repeat
+ 1950 3675 1950 3180 180 arcto 4 {pop} repeat
+ 1950 3000 855 3000 180 arcto 4 {pop} repeat
+ cp gs col6 1.00 shd ef gr gs col0 s gr
+/Times-Bold ff 180.00 scf sf
+825 3300 m
+gs 1 -1 sc (Exported) col0 sh gr
+/Times-Bold ff 180.00 scf sf
+825 3525 m
+gs 1 -1 sc (idl files) col0 sh gr
+% Polyline
+n 2475 2025 m 3450 2025 l 3450 2475 l 2475 2475 l
+ cp gs col0 s gr
+/Times-Roman ff 180.00 scf sf
+2625 2325 m
+gs 1 -1 sc (Module 1) col0 sh gr
+% Polyline
+n 3000 3900 m 3900 3900 l 3900 4350 l 3000 4350 l
+ cp gs col0 s gr
+/Times-Roman ff 180.00 scf sf
+3150 4200 m
+gs 1 -1 sc (src) col0 sh gr
+% Polyline
+n 1725 3900 m 2700 3900 l 2700 4350 l 1725 4350 l
+ cp gs col0 s gr
+/Times-Roman ff 180.00 scf sf
+1800 4200 m
+gs 1 -1 sc (resources) col0 sh gr
+% Polyline
+n 1275 2025 m 2250 2025 l 2250 2475 l 1275 2475 l
+ cp gs col0 s gr
+/Times-Roman ff 180.00 scf sf
+1575 2325 m
+gs 1 -1 sc (idl) col0 sh gr
+% Polyline
+n 5205 3150 m 5025 3150 5025 3645 180 arcto 4 {pop} repeat
+ 5025 3825 6495 3825 180 arcto 4 {pop} repeat
+ 6675 3825 6675 3330 180 arcto 4 {pop} repeat
+ 6675 3150 5205 3150 180 arcto 4 {pop} repeat
+ cp gs col6 1.00 shd ef gr gs col0 s gr
+/Times-Bold ff 180.00 scf sf
+5175 3450 m
+gs 1 -1 sc (Exported shell) col0 sh gr
+/Times-Bold ff 180.00 scf sf
+5175 3675 m
+gs 1 -1 sc (scripts) col0 sh gr
+% Polyline
+n 5430 4275 m 5250 4275 5250 4770 180 arcto 4 {pop} repeat
+ 5250 4950 6720 4950 180 arcto 4 {pop} repeat
+ 6900 4950 6900 4455 180 arcto 4 {pop} repeat
+ 6900 4275 5430 4275 180 arcto 4 {pop} repeat
+ cp gs col6 1.00 shd ef gr gs col0 s gr
+/Times-Bold ff 180.00 scf sf
+5400 4575 m
+gs 1 -1 sc (Update SUBDIR) col0 sh gr
+/Times-Bold ff 180.00 scf sf
+5400 4800 m
+gs 1 -1 sc (list in Makefile.in) col0 sh gr
+% Polyline
+n 4275 2025 m 5325 2025 l 5325 2475 l 4275 2475 l
+ cp gs col0 s gr
+/Times-Roman ff 180.00 scf sf
+4425 2325 m
+gs 1 -1 sc (resources) col0 sh gr
+% Polyline
+n 5625 2025 m 6675 2025 l 6675 2475 l 5625 2475 l
+ cp gs col0 s gr
+/Times-Roman ff 180.00 scf sf
+5850 2325 m
+gs 1 -1 sc (bin) col0 sh gr
+% Polyline
+n 2700 5100 m 3675 5100 l 3675 5550 l 2700 5550 l
+ cp gs col0 s gr
+/Times-Roman ff 180.00 scf sf
+2775 5400 m
+gs 1 -1 sc (New unit) col0 sh gr
+% Polyline
+n 1380 6225 m 1200 6225 1200 6720 180 arcto 4 {pop} repeat
+ 1200 6900 2670 6900 180 arcto 4 {pop} repeat
+ 2850 6900 2850 6405 180 arcto 4 {pop} repeat
+ 2850 6225 1380 6225 180 arcto 4 {pop} repeat
+ cp gs col6 1.00 shd ef gr gs col0 s gr
+/Times-Bold ff 180.00 scf sf
+1350 6750 m
+gs 1 -1 sc (and header files) col0 sh gr
+/Times-Bold ff 180.00 scf sf
+1350 6525 m
+gs 1 -1 sc (Private source) col0 sh gr
+% Polyline
+n 3330 6225 m 3150 6225 3150 6720 180 arcto 4 {pop} repeat
+ 3150 6900 4620 6900 180 arcto 4 {pop} repeat
+ 4800 6900 4800 6405 180 arcto 4 {pop} repeat
+ 4800 6225 3330 6225 180 arcto 4 {pop} repeat
+ cp gs col6 1.00 shd ef gr gs col0 s gr
+/Times-Bold ff 180.00 scf sf
+3300 6525 m
+gs 1 -1 sc (Exported header) col0 sh gr
+/Times-Bold ff 180.00 scf sf
+3300 6750 m
+gs 1 -1 sc (files) col0 sh gr
+% Polyline
+n 3675 825 m 5325 825 l 5325 1425 l 3675 1425 l
+ cp gs col0 s gr
+% Polyline
+n 4725 1425 m
+ 4875 2025 l gs col0 s gr
+% Polyline
+n 3975 1425 m
+ 1800 2025 l gs col0 s gr
+% Polyline
+n 2700 2475 m
+ 2400 3900 l gs col0 s gr
+% Polyline
+gs clippath
+3679 1172 m 3699 1084 l 3554 1051 l 3655 1120 l 3535 1139 l cp
+eoclip
+n 3000 975 m
+ 3675 1125 l gs col0 s gr gr
+
+% arrowhead
+n 3535 1139 m 3655 1120 l 3554 1051 l 3567 1100 l 3535 1139 l
+ cp gs 0.00 setgray ef gr col0 s
+% Polyline
+n 5100 1425 m
+ 5625 2025 l gs col0 s gr
+% Polyline
+n 3000 2025 m
+ 4200 1425 l gs col0 s gr
+% Polyline
+n 3300 4350 m
+ 3150 5100 l gs col0 s gr
+% Polyline
+n 3075 2475 m
+ 3375 3900 l gs col0 s gr
+% Polyline
+ [60] 0 sd
+n 3675 4350 m
+ 4425 5025 l gs col0 s gr [] 0 sd
+% Polyline
+ [60] 0 sd
+n 3450 4350 m
+ 3900 5025 l gs col0 s gr [] 0 sd
+% Polyline
+ [60] 0 sd
+n 4350 1425 m
+ 3675 2025 l gs col0 s gr [] 0 sd
+% Polyline
+ [60] 0 sd
+n 4500 1425 m
+ 4050 2025 l gs col0 s gr [] 0 sd
+% Polyline
+n 405 4950 m 225 4950 225 5445 180 arcto 4 {pop} repeat
+ 225 5625 1845 5625 180 arcto 4 {pop} repeat
+ 2025 5625 2025 5130 180 arcto 4 {pop} repeat
+ 2025 4950 405 4950 180 arcto 4 {pop} repeat
+ cp gs col6 1.00 shd ef gr gs col0 s gr
+% Polyline
+n 4305 5325 m 4125 5325 4125 5820 180 arcto 4 {pop} repeat
+ 4125 6000 5745 6000 180 arcto 4 {pop} repeat
+ 5925 6000 5925 5505 180 arcto 4 {pop} repeat
+ 5925 5325 4305 5325 180 arcto 4 {pop} repeat
+ cp gs col6 1.00 shd ef gr gs col0 s gr
+% Polyline
+2 slj
+gs clippath
+2663 5277 m 2610 5204 l 2490 5291 l 2608 5262 l 2543 5364 l cp
+eoclip
+n 2100 6225 m 2099 6224 l 2098 6221 l 2095 6217 l 2091 6210 l 2086 6201 l
+ 2080 6189 l 2073 6174 l 2065 6158 l 2058 6140 l 2051 6120 l
+ 2044 6098 l 2039 6075 l 2035 6051 l 2033 6025 l 2032 5997 l
+ 2035 5967 l 2040 5934 l 2049 5899 l 2061 5860 l 2078 5819 l
+ 2100 5775 l 2122 5737 l 2145 5701 l 2170 5665 l 2197 5631 l
+ 2223 5599 l 2250 5568 l 2278 5539 l 2305 5512 l 2333 5485 l
+ 2361 5459 l 2389 5435 l 2417 5411 l 2445 5388 l 2471 5367 l
+ 2497 5346 l 2522 5327 l 2544 5310 l 2564 5295 l 2582 5282 l
+ 2596 5271 l 2607 5263 l
+ 2625 5250 l gs col0 s gr gr
+
+% arrowhead
+0 slj
+n 2543 5364 m 2608 5262 l 2490 5291 l 2535 5314 l 2543 5364 l
+ cp gs 0.00 setgray ef gr col0 s
+% Polyline
+2 slj
+gs clippath
+3241 5505 m 3185 5576 l 3301 5668 l 3241 5563 l 3357 5597 l cp
+eoclip
+n 3675 6225 m 3675 6224 l 3676 6221 l 3677 6216 l 3679 6209 l 3680 6199 l
+ 3682 6187 l 3684 6173 l 3684 6157 l 3684 6140 l 3683 6121 l
+ 3680 6101 l 3675 6078 l 3667 6054 l 3656 6026 l 3642 5996 l
+ 3623 5962 l 3600 5925 l 3579 5894 l 3556 5864 l 3532 5835 l
+ 3509 5808 l 3485 5782 l 3462 5758 l 3438 5734 l 3415 5712 l
+ 3392 5691 l 3369 5670 l 3347 5651 l 3325 5632 l 3305 5615 l
+ 3286 5599 l 3269 5586 l 3255 5574 l 3244 5565 l
+ 3225 5550 l gs col0 s gr gr
+
+% arrowhead
+0 slj
+n 3357 5597 m 3241 5563 l 3301 5668 l 3311 5618 l 3357 5597 l
+ cp gs 0.00 setgray ef gr col0 s
+% Polyline
+2 slj
+gs clippath
+3892 4003 m 3878 4092 l 4025 4114 l 3921 4053 l 4039 4026 l cp
+eoclip
+n 5250 4500 m 5250 4499 l 5249 4498 l 5248 4496 l 5246 4492 l 5244 4487 l
+ 5240 4480 l 5236 4473 l 5229 4464 l 5222 4454 l 5212 4444 l
+ 5201 4433 l 5188 4421 l 5172 4408 l 5152 4395 l 5129 4381 l
+ 5102 4366 l 5069 4350 l 5031 4333 l 4986 4315 l 4934 4295 l
+ 4875 4275 l 4829 4260 l 4781 4245 l 4733 4231 l 4686 4218 l
+ 4638 4205 l 4591 4193 l 4545 4182 l 4500 4171 l 4456 4160 l
+ 4412 4150 l 4368 4141 l 4325 4132 l 4283 4123 l 4241 4114 l
+ 4200 4106 l 4160 4098 l 4122 4091 l 4086 4084 l 4052 4078 l
+ 4021 4072 l 3993 4067 l 3969 4062 l 3948 4059 l 3932 4056 l
+ 3919 4053 l
+ 3900 4050 l gs col0 s gr gr
+
+% arrowhead
+0 slj
+n 4039 4026 m 3921 4053 l 4025 4114 l 4009 4067 l 4039 4026 l
+ cp gs 0.00 setgray ef gr col0 s
+% Polyline
+2 slj
+gs clippath
+1302 2288 m 1276 2202 l 1134 2245 l 1255 2256 l 1160 2331 l cp
+eoclip
+n 675 3300 m 674 3299 l 671 3296 l 666 3292 l 659 3285 l 648 3275 l
+ 635 3262 l 620 3247 l 602 3229 l 583 3208 l 562 3186 l
+ 541 3162 l 520 3136 l 500 3109 l 480 3081 l 462 3053 l
+ 446 3023 l 432 2993 l 420 2961 l 411 2928 l 406 2894 l
+ 405 2858 l 408 2820 l 416 2781 l 430 2741 l 450 2700 l
+ 472 2665 l 498 2632 l 527 2601 l 558 2571 l 591 2544 l
+ 625 2518 l 661 2494 l 697 2472 l 735 2451 l 773 2432 l
+ 812 2413 l 851 2396 l 891 2379 l 931 2363 l 970 2348 l
+ 1009 2334 l 1047 2321 l 1084 2309 l 1118 2298 l 1150 2288 l
+ 1178 2279 l 1203 2271 l 1224 2265 l 1242 2260 l 1255 2256 l
+
+ 1275 2250 l gs col0 s gr gr
+
+% arrowhead
+0 slj
+n 1160 2331 m 1255 2256 l 1134 2245 l 1168 2281 l 1160 2331 l
+ cp gs 0.00 setgray ef gr col0 s
+% Polyline
+2 slj
+gs clippath
+1765 4073 m 1706 4006 l 1594 4104 l 1709 4064 l 1653 4171 l cp
+eoclip
+n 1050 4950 m 1050 4949 l 1050 4947 l 1049 4942 l 1049 4936 l 1049 4927 l
+ 1049 4916 l 1049 4902 l 1050 4887 l 1052 4870 l 1056 4852 l
+ 1060 4832 l 1067 4810 l 1075 4786 l 1086 4759 l 1101 4729 l
+ 1119 4696 l 1141 4660 l 1168 4619 l 1200 4575 l 1227 4540 l
+ 1255 4505 l 1284 4472 l 1312 4439 l 1341 4408 l 1369 4378 l
+ 1397 4349 l 1425 4321 l 1452 4295 l 1479 4269 l 1506 4243 l
+ 1533 4219 l 1559 4195 l 1584 4173 l 1608 4151 l 1630 4131 l
+ 1651 4113 l 1670 4097 l 1686 4084 l 1699 4072 l 1709 4064 l
+
+ 1725 4050 l gs col0 s gr gr
+
+% arrowhead
+0 slj
+n 1653 4171 m 1709 4064 l 1594 4104 l 1641 4123 l 1653 4171 l
+ cp gs 0.00 setgray ef gr col0 s
+% Polyline
+2 slj
+gs clippath
+6234 2428 m 6189 2506 l 6317 2580 l 6243 2485 l 6362 2502 l cp
+eoclip
+n 6675 3225 m 6676 3224 l 6677 3221 l 6680 3215 l 6685 3208 l 6690 3197 l
+ 6696 3184 l 6703 3168 l 6710 3150 l 6717 3131 l 6723 3111 l
+ 6728 3089 l 6732 3066 l 6733 3041 l 6732 3015 l 6729 2987 l
+ 6722 2956 l 6711 2923 l 6695 2887 l 6675 2850 l 6655 2819 l
+ 6633 2789 l 6609 2760 l 6585 2734 l 6560 2709 l 6534 2685 l
+ 6509 2663 l 6483 2642 l 6457 2623 l 6431 2604 l 6405 2586 l
+ 6380 2569 l 6355 2553 l 6331 2538 l 6308 2524 l 6288 2512 l
+ 6270 2501 l 6256 2492 l 6244 2486 l
+ 6225 2475 l gs col0 s gr gr
+
+% arrowhead
+0 slj
+n 6362 2502 m 6243 2485 l 6317 2580 l 6320 2530 l 6362 2502 l
+ cp gs 0.00 setgray ef gr col0 s
+% Polyline
+2 slj
+gs clippath
+3700 5285 m 3630 5341 l 3722 5457 l 3688 5341 l 3793 5401 l cp
+eoclip
+n 4125 5625 m 4123 5625 l 4118 5625 l 4110 5624 l 4099 5624 l 4085 5622 l
+ 4069 5620 l 4051 5617 l 4031 5613 l 4010 5606 l 3987 5597 l
+ 3961 5585 l 3932 5570 l 3900 5550 l 3872 5530 l 3846 5510 l
+ 3823 5490 l 3801 5470 l 3782 5451 l 3764 5432 l 3747 5413 l
+ 3731 5395 l 3717 5378 l 3704 5363 l 3694 5349 l
+ 3675 5325 l gs col0 s gr gr
+
+% arrowhead
+0 slj
+n 3793 5401 m 3688 5341 l 3722 5457 l 3743 5411 l 3793 5401 l
+ cp gs 0.00 setgray ef gr col0 s
+/Times-Roman ff 180.00 scf sf
+3825 1200 m
+gs 1 -1 sc (Root Source Tree) col0 sh gr
+/Times-Bold ff 180.00 scf sf
+4275 5625 m
+gs 1 -1 sc (Copy and/or) col0 sh gr
+/Times-Bold ff 180.00 scf sf
+4275 5850 m
+gs 1 -1 sc (create Makefile.in) col0 sh gr
+/Times-Bold ff 180.00 scf sf
+375 5250 m
+gs 1 -1 sc (Exported resource) col0 sh gr
+/Times-Bold ff 180.00 scf sf
+375 5475 m
+gs 1 -1 sc (files \(xml, ...\)) col0 sh gr
+$F2psEnd
+rs
+
+%%EndDocument
+ @endspecial Black 390 3319 a Fn(Figure)24 b(3:)29 b(Source)24
+b(tree)g(:)k(modi\002cation)e(when)d(adding)i(an)f(ne)n(w)f(unit)h(in)g
+(an)f(e)o(xisting)i(module)p Black Black 0 3731 a Ff(top_srcdir=@top)o
+(_s)o(rc)o(di)o(r@)0 3867 y(top_builddir=..)o(/.)o(./)o(..)0
+4002 y(srcdir=@srcdir@)0 4138 y(VPATH=.:@srcdir)o(@)0
+4409 y(@COMMENCE@)0 4680 y(#)54 b(Libraries)d(targets)0
+4815 y(LIB)i(=)0 4951 y(LIB_SRC)e(=)0 5086 y(LIB_MOC)g(=)0
+5222 y(LIB_CLIENT_IDL)d(=)0 5357 y(LIB_SERVER_IDL)g(=)p
+Black 0 5644 3827 9 v 0 5757 a Fn(SALOME)415 b(Using)24
+b(the)g(SALOME)d(con\002guration)26 b(and)e(b)n(uilding)i(system)e(V)
+-12 b(.)23 b(0.3)562 b(11/20)p Black eop
+%%Page: 12 12
+12 11 bop Black Black 0 50 a Ff(#)54 b(Executable)c(targets)0
+185 y(BIN)j(=)0 321 y(BIN_SRC)e(=)0 456 y(BIN_MOC)g(=)0
+592 y(BIN_CLIENT_IDL)d(=)0 727 y(BIN_SERVER_IDL)g(=)0
+998 y(#)54 b(exported)d(header)h(files)0 1134 y(EXPORT_HEADERS)c(=)0
+1405 y(#)54 b(exported)d(python)h(executable)e(files)0
+1540 y(EXPORT_PYSCRIPT)o(S)e(=)0 1811 y(#)54 b(list)f(of)g(files)g(in)g
+(resources)e(directory)f(\(copy)j(when)f(do)i(make)f(install\))0
+1947 y(RESOURCES_FILES)48 b(=)0 2218 y(#)54 b(po)g(ressources)c(files)i
+(\(to)h(transform)e(them)h(in)i(qm)g(file\))e(:)0 2353
+y(PO_FILES)f(=)0 2624 y(#)j(put)f(here)g(additional)d(rules,)i(or)h
+(extra)g(compiler)e(options)g(...)0 2895 y(@CONCLUDE@)0
+3166 y(#)j(end)f(copy)g(here)g(==============)o(==)o(===)o(==)o(==)o
+(==)o(==)o(===)o(==)o(==)o(==)o(==)o(===)o(==)o(=)0 3432
+y Fn(Adapt)24 b(this)g Ff(Makefile.in)50 b Fn(sk)o(eleton)25
+b(to)f(your)g(particular)i(needs)f(:)p Black 136 3677
+a Fc(\017)p Black 46 w Fn(if)f(you)g(ha)n(v)o(e)g(to)f(compile)i(a)e
+(library)p Black 314 3812 a(1.)p Black 45 w(Complete)i(the)e(line)p
+Black Black 427 3948 a Ff(LIB)53 b(=)427 4042 y Fn(as)p
+Black Black 427 4177 a Ff(LIB)g(=)i(lib<MyLibrary>)o(.l)o(a)427
+4271 y Fn(Example)24 b(:)p Black Black 427 4406 a Ff(LIB)53
+b(=)i(libGeometryGui)o(.l)o(a)427 4500 y Fn(Notes)p Black
+451 4650 a(\(a\))p Black 46 w(the)25 b(library)g(name)f
+Fi(must)g Fn(be)o(gin)g(with)g Ff(lib)e Fn(and)j(end)f(with)g
+Ff(.la)e Fn(\(this)j(allo)n(ws)f(automatic)i(creation)597
+4785 y(of)e(shared)h(libraries)g(with)f(libtool\).)p
+Black 446 4954 a(\(b\))p Black 46 w(there)h(must)e(be)h(only)g(one)g
+(library)h(by)f(de)n(v)o(elopment)i(unit)p Black 314
+5123 a(2.)p Black 45 w(Also)e(add)g(to)f(the)h(line)g(:)p
+Black Black 427 5258 a Ff(LIB_SRC)52 b(=)427 5352 y Fn(the)24
+b(list)g(of)f(sources)j(\002les)d(\(in)h(this)g(unit\))g(needed)i(to)d
+(b)n(uild)i(the)f(library)p Black 314 5521 a(3.)p Black
+45 w(If)g(your)g(library)h(uses)f(QT)e(MOC)g(\002le,)h(add)h(to)f(the)h
+(line)g(:)p Black 0 5644 3827 9 v 0 5757 a(SALOME)415
+b(Using)24 b(the)g(SALOME)d(con\002guration)26 b(and)e(b)n(uilding)i
+(system)e(V)-12 b(.)23 b(0.3)562 b(12/20)p Black eop
+%%Page: 13 13
+13 12 bop Black Black Black Black 427 50 a Ff(LIB_MOC)52
+b(=)427 144 y Fn(the)24 b(list)g(of)f(headers)j(\002les)d(to)h
+(transform)h(with)e(moc.)p Black 314 312 a(4.)p Black
+45 w(If)g(your)h(library)h(uses)f(CORB)m(A)c(functionnalities)28
+b(from)23 b(other)h(units)g(\(i.e.)29 b(uses)24 b(idl)f(\002les)g(e)o
+(xported)i(from)427 448 y(other)g(units\),)f(add)g(to)g(the)g(line)g(:)
+p Black Black 427 583 a Ff(LIB_CLIENT_IDL)48 b(=)427
+677 y Fn(the)24 b(list)g(of)f(idl)h(\002les.)p Black
+314 846 a(5.)p Black 45 w(If)i(your)h(unit)f(pro)o(vides)i(CORB)m(A)23
+b(functionnalities)31 b(\(i.e.)36 b(e)o(xports)27 b(idl)f(\002les)g(to)
+g(the)g(other)h(units\),)h(add)e(to)427 982 y(the)e(line)g(:)p
+Black Black 427 1117 a Ff(LIB_SERVER_IDL)48 b(=)427 1211
+y Fn(the)24 b(list)g(of)f(idl)h(\002les.)p Black 136
+1380 a Fc(\017)p Black 46 w Fn(if)g(you)g(w)o(ant)f(to)h(b)n(uild)g
+(one)g(or)g(more)f(e)o(x)o(ecutables)k(:)p Black 314
+1515 a(1.)p Black 45 w(Complete)e(the)e(line)p Black
+Black 427 1651 a Ff(BIN)53 b(=)427 1745 y Fn(as)p Black
+Black 427 1880 a Ff(BIN)g(=)i(<MyBin1>)50 b(<MyBin2>)h(..)427
+2016 y(.)427 2110 y Fn(Note)p Black Black 597 2262 a(F)o(or)21
+b(each)h(e)o(x)o(ecutable)i(in)d(the)h Ff(BIN)d Fn(list,)j(say)g
+Ff(MyBin1)p Fn(,)c(the)j(main)h(function)h Fi(must)e
+Fn(be)g(in)h(a)f(\002le)597 2397 y(named)j(accordingly)-6
+b(,)27 b(in)d(this)g(e)o(xample)g(:)k Ff(MyBin1.cxx)19
+b Fn(and)24 b Ff(MyBin2.cxx)p Fn(.)p Black 314 2566 a(2.)p
+Black 45 w(Also)g(add)g(to)f(the)h(line)g(:)p Black Black
+427 2702 a Ff(BIN_SRC)52 b(=)427 2796 y Fn(the)30 b(list)f(of)g(source)
+h(\002les)f(\(in)g(this)h(unit\))g(needed)g(to)f(b)n(uild)h
+Fi(all)g Fn(the)f(e)o(x)o(ecutables,)j Fi(excluding)d(\002les)g(con-)
+427 2931 y(taining)24 b(main)f(function\(s\))p Fn(.)427
+3066 y(Notes)h(:)p Black 451 3219 a(\(a\))p Black 46
+w(The)34 b(mak)o(e\002le)g(system)h(will)e(automatically)k(add)e(to)f
+(each)g(e)o(x)o(ecutable,)39 b(its)34 b(main)g(function)i(\002le.)597
+3354 y(That')-5 b(s)24 b(why)f(these)i(\002les)e(must)g(not)h(be)g
+(included)i(in)d(the)h Ff(BIN)p 2590 3354 28 4 v 31 w(SRC)e
+Fn(list)p Black 446 3523 a(\(b\))p Black 46 w(The)33
+b(object)h(\002les)f(\(compiled)i(from)e(the)g(source)h(\002les)f(in)g
+(the)g Ff(BIN)p 2831 3523 V 32 w(SRC)d Fn(list\))k(will)f(be)g
+(properly)597 3658 y(dispatched)27 b(between)d(the)g(e)o(x)o(ecutables)
+i(by)e(the)g(link)o(er)-5 b(.)p Black 314 3827 a(3.)p
+Black 45 w(If)24 b(your)g(binaries)h(uses)g(QT)d(MOC)f(\002le,)i(add)h
+(to)g(the)f(line)h(:)p Black Black 427 3962 a Ff(BIN_MOC)52
+b(=)427 4056 y Fn(the)24 b(list)g(of)f(headers)j(\002les)d(to)h
+(transform)h(with)e(moc.)p Black 314 4225 a(4.)p Black
+45 w(If)d(your)g(binaries)i(uses)f(CORB)m(A)16 b(functionnalities)25
+b(from)20 b(other)g(units)h(\(i.e.)27 b(uses)21 b(idl)f(\002les)f(e)o
+(xported)j(from)427 4361 y(other)j(units\),)f(add)g(to)g(the)g(line)g
+(:)p Black Black 427 4496 a Ff(BIN_CLIENT_IDL)48 b(=)427
+4590 y Fn(the)24 b(list)g(of)f(idl)h(\002les.)p Black
+314 4759 a(5.)p Black 45 w(If)i(your)h(unit)f(pro)o(vides)i(CORB)m(A)23
+b(functionnalities)31 b(\(i.e.)36 b(e)o(xports)27 b(idl)f(\002les)g(to)
+g(the)g(other)h(units\),)h(add)e(to)427 4894 y(the)e(line)g(:)p
+Black Black 427 5030 a Ff(BIN_SERVER_IDL)48 b(=)427 5124
+y Fn(the)24 b(list)g(of)f(idl)h(\002les.)p Black 136
+5292 a Fc(\017)p Black 46 w Fn(List)f(the)h(e)o(xported)i(header)f
+(\002les)e(that)h(your)g(unit)h(pro)o(vides)g(to)f(other)g(de)n(v)o
+(elopments)i(units)f(:)227 5428 y(Complete)g(the)e(line)p
+Black 0 5644 3827 9 v 0 5757 a(SALOME)415 b(Using)24
+b(the)g(SALOME)d(con\002guration)26 b(and)e(b)n(uilding)i(system)e(V)
+-12 b(.)23 b(0.3)562 b(13/20)p Black eop
+%%Page: 14 14
+14 13 bop Black Black Black Black 227 50 a Ff(EXPORT_HEADERS)48
+b(=)227 144 y Fn(with)24 b(the)f(list)h(header)h(\002les.)227
+279 y(Note)p Black Black 427 452 a(The)e(mak)o(e\002le)h(system)g(will)
+f(automatically)j(cop)o(y)f(these)f(\002les)f(in)h(a)e(subdirectory)27
+b Ff(inc)22 b Fn(in)h(the)h(top)427 588 y(b)n(uild)i(directory)-6
+b(,)28 b(and)d(maintain)h(coherence)i(with)d(your)g(pri)n(v)n(ate)h
+(cop)o(y)g(inside)g(your)g(unit)g(subtree.)427 723 y(This)d(is)f(to)g
+(assure)i(name)f(uniqueness)i(of)e(dif)n(ferents)i(e)o(xported)f
+(header)g(\002les)e(from)h(dif)n(ferent)h(units)427 859
+y(and)g(to)g(write)f(easier)i(mak)o(e\002les.)p Black
+136 1031 a Fc(\017)p Black 46 w Fn(List)e(the)h(p)o(ython)i(scripts)f
+(\002les)e(that)h(your)g(unit)h(e)o(xport)f(:)227 1167
+y(Complete)h(the)e(line)p Black Black 227 1302 a Ff(EXPORT_PYSCRIPT)o
+(S)49 b(=)p Black 136 1471 a Fc(\017)p Black 46 w Fn(T)-7
+b(o)23 b(generate)i(qm)e(\002le)g(from)h(po)f(\002le)g(\(use)h(by)g
+(QT\),)e(list)i(po)f(\002les)h(in)f(:)p Black Black 227
+1607 a Ff(PO_FILES)51 b(=)227 1659 y Fn(Note)p Black
+Black 427 1832 a(The)33 b(resulting)j(qm)c(\002les)h(will)g(ge)g
+(generated)j(directory)f(which)f(contain)h(Mak)o(e\002le.)58
+b(It)33 b(will)g(be)427 1967 y(copied)25 b(in)f(resources)i(directory)g
+(when)d(do)h Ff('make)52 b(install')p Fn(.)0 2287 y Fe(5.2)99
+b(Using)25 b(y)n(our)f(o)o(wn)h(mak)o(e\002les)h(in)f(an)g(unit)0
+2531 y Fn(If)d(the)g(proposed)i(mak)o(e\002le)f(system)f(don')n(t)i
+(suit)e(your)h(needs)g(\(se)n(v)o(eral)g(libraries,)h(non)f(\003at)e
+(unit)i(subtree)g(structure,)i(...\).)0 2667 y(It')-5
+b(s)24 b(possible)i(to)d(write)h(your)g(o)n(wn)f(mak)o(e\002les.)p
+Black 114 2949 a(1.)p Black 45 w(Create)h(a)f(\002le)g
+Ff(Makefile.in)227 3085 y Fn(This)h(\002le)f(must)g(be)o(gin)h(with)g
+(the)g(lines)p Black Black 227 3220 a Ff(#)54 b(begin)f(copy)f(here)h
+(===============)o(==)o(==)o(===)o(==)o(==)o(==)o(==)o(===)o(==)o(==)o
+(==)o(==)o(=)227 3491 y(top_srcdir=@top)o(_sr)o(cd)o(ir)o(@)227
+3627 y(top_builddir=..)o(/..)o(/.)o(.)227 3762 y(srcdir=@srcdir@)227
+3898 y(VPATH=.:@srcdir)o(@)227 4169 y(@COMMENCE@)227
+4439 y(#)h(end)g(copy)e(here)h(===============)o(==)o(==)o(==)o(===)o
+(==)o(==)o(==)o(==)o(===)o(==)o(==)o(==)o(==)o(=)227
+4592 y Fn(The)23 b(rest)h(of)g(the)g(\002le)f(has)g(the)h(standard)i
+(GNU)c(mak)o(e)h(format.)227 4727 y(Y)-10 b(ou)24 b(must)f(de\002ne)h
+(the)g(follo)n(wing)h(tar)n(gets)g(:)p Black 281 4863
+a(\(a\))p Black 46 w Ff(inc)d Fn(:)28 b(cop)o(y/update)f(the)d(e)o
+(xported)i(header)f(\002les)e(to)g(the)h Ff($top)p 2498
+4863 28 4 v 31 w(builddir/inc)17 b Fn(directory)p Black
+276 5031 a(\(b\))p Black 46 w Ff(dep)22 b Fn(:)28 b(update)d
+(dependencies)p Black 281 5200 a(\(c\))p Black 46 w Ff(lib)d
+Fn(:)28 b(b)n(uild)d(libraries)h(and)e(link)g(them)f(into)h(the)g
+Ff($top)p 2241 5200 V 31 w(builddir/lib)17 b Fn(directory)p
+Black 276 5369 a(\(d\))p Black 46 w Ff(bin)22 b Fn(:)28
+b(b)n(uild)d(e)o(x)o(ecutables)h(and)e(link)g(them)g(into)g(the)g
+Ff($top)p 2365 5369 V 31 w(builddir/bin)17 b Fn(directory)227
+5500 y(Some)23 b(of)h(these)g(tar)n(gets)i(may)d(be)g(empty)-6
+b(,)24 b(if)f(not)h(applicable.)p Black 0 5644 3827 9
+v 0 5757 a(SALOME)415 b(Using)24 b(the)g(SALOME)d(con\002guration)26
+b(and)e(b)n(uilding)i(system)e(V)-12 b(.)23 b(0.3)562
+b(14/20)p Black eop
+%%Page: 15 15
+15 14 bop Black Black 0 50 a Fn(The)23 b(line)p Black
+Black 0 307 a Ff(@\\texttt{COMMEN)o(CE)o(}@)0 565 y Fn(pro)o(vides)38
+b(a)e(number)h(of)f(prede\002ned)i(v)n(ariables)g(that)e(you)h(can)f
+(use)h(in)f(your)h(mak)o(e\002le)f(rules)h(\(de\002ning)h(standard)0
+700 y(libraries)26 b(locations,)f(compiler)g(options,)g(...,)d(see)i
+(ne)o(xt)g(section\).)0 1070 y Fj(6)119 b(Add)31 b(or)f(r)n(emo)o(v)o
+(e)f(a)h(script)0 1347 y Fn(If)18 b(you)g(w)o(ant)h(to)f(add)g(a)g(ne)n
+(w)f(shell)i(script)g(in)f Ff(SALOME)p 1716 1347 28 4
+v 30 w(ROOT/bin)p Fn(,)d(you)k(must)f(edit)g Ff(SALOME)p
+3055 1347 V 30 w(ROOT/Makefile.i)o(n)0 1482 y Fn(to)23
+b(add)h(it)g(in)f Ff(BIN)p 584 1482 V 32 w(SCRIPT)p Fn(.)0
+1665 y(If)h(this)h(script)h(ha)n(v)o(e)f(some)f(package)i(dependent)i
+(v)n(ariable,)e(you)f(must)f(create)h(a)f(\224.in\224)h(\002le)f(and)h
+(add)f(this)h(reference)i(to)0 1801 y Ff(configure.in)17
+b Fn(\002le.)0 1983 y(T)-7 b(o)29 b(remo)o(v)o(e)h(an)g(e)o(xisting)i
+(script,)g(you)f(must)f(of)g(course)h(remo)o(v)o(e)f(it)g(from)g(CVS)e
+(archi)n(v)o(e)j(and)g(also)f(remo)o(v)o(e)g(it)g(from)0
+2119 y Ff(SALOME)p 335 2119 V 30 w(ROOT/Makefile.i)o(n)16
+b Fn(and)24 b(if)g(an)o(y)-6 b(,)23 b(from)h Ff(configure.in)p
+Fn(.)0 2301 y(If)e(you)g(w)o(ant)g(to)g(add)g(a)f(ne)n(w)h(p)o(ython)h
+(script,)g(put)g(it)e(in)h Ff(EXPORT)p 2066 2301 V 30
+w(PYSCRIPTS)17 b Fn(v)n(ariable.)30 b(It)21 b(will)h(be)g(copied)h(at)f
+(same)0 2437 y(place)j(than)f(others)h(e)o(x)o(ecutables.)0
+2807 y Fj(7)119 b(Add)31 b(or)f(r)n(emo)o(v)o(e)f(an)h(IDL)g(\002le)0
+3084 y Fn(If)18 b(you)g(w)o(ant)h(to)f(add)g(a)g(ne)n(w)f(IDL)g(\002le)
+g(in)h Ff(SALOME)p 1610 3084 V 30 w(ROOT/idl)p Fn(,)d(you)j(must)h
+(edit)f Ff(SALOME)p 2949 3084 V 30 w(ROOT/idl/Makefi)o(le)o(.in)0
+3219 y Fn(and)24 b(add)g(its)g(in)f Ff(IDL)p 680 3219
+V 31 w(FILES)p Fn(.)0 3402 y(T)-7 b(o)24 b(remo)o(v)o(e)h(an)g(e)o
+(xisting)i(IDL)d(\002le,)g(you)i(must)f(of)g(course)i(remo)o(v)o(e)e
+(it)g(from)g(CVS)e(archi)n(v)o(e)j(and)f(also)h(remo)o(v)o(e)f(it)g
+(from)0 3537 y Ff(SALOME)p 335 3537 V 30 w(ROOT/idl/Makefi)o(le)o(.i)o
+(n)p Fn(.)0 3907 y Fj(8)119 b(Pr)n(ede\002ned)32 b(symbols)d(used)h(in)
+h Fb(Makefile.in)0 4184 y Fn(Y)-10 b(ou)23 b(can)h(use)g(prede\002ned)i
+(symbols)e(in)g(you)g Ff(Makefile.in)18 b Fn(\002les.)28
+b(These)c(symbols)h(de\002ne)p Black 136 4441 a Fc(\017)p
+Black 46 w Fn(compilation)h(\003ags)e(for)g(source)h(compiling,)p
+Black 136 4610 a Fc(\017)p Black 46 w Fn(header)g(\002les)f(location)h
+(in)f(your)g(local)g(system,)p Black 136 4779 a Fc(\017)p
+Black 46 w Fn(libraries)i(needed)f(for)f(binaries)h(linking.)0
+5036 y(F)o(or)e(e)o(xample)h(to)f(use)h(the)g(OpenCascade)i(libraries)f
+(in)f(your)g(unit,)g(you)g(will)f(add)h(the)p Black 136
+5294 a Fc(\017)p Black 46 w Ff($OCC)p 452 5294 V 31 w(INCLUDES)19
+b Fn(symbol)25 b(to)e(the)h(included)i(header)f(\002le)e(locations,)p
+Black 136 5462 a Fc(\017)p Black 46 w Ff($OCC)p 452 5462
+V 31 w(CXXFLAGS)c Fn(symbol)25 b(to)e(the)h(compilation)i(\003ags,)p
+Black 0 5644 3827 9 v 0 5757 a(SALOME)415 b(Using)24
+b(the)g(SALOME)d(con\002guration)26 b(and)e(b)n(uilding)i(system)e(V)
+-12 b(.)23 b(0.3)562 b(15/20)p Black eop
+%%Page: 16 16
+16 15 bop Black Black Black 136 50 a Fc(\017)p Black
+46 w Ff($OCC)p 452 50 28 4 v 31 w(LIBS)21 b Fn(symbol)k(to)e(the)h
+(link)o(er')-5 b(s)25 b(\003ags)0 307 y(If)e(you)h(use)g(the)g
+(prede\002ned)i(mak)o(e)d(rules,)h(add)g(the)g(lines)p
+Black Black 0 565 a Ff(CPPFLAGS+=$\(OCC)o(_I)o(NC)o(LU)o(DES)o(\))0
+700 y(CXXFLAGS+=$\(OCC)o(_C)o(XX)o(FL)o(AGS)o(\))0 836
+y(LDFLAGS+=$\(OCC_)o(LI)o(BS)o(\))0 1093 y Fn(in)f(your)i
+Ff(Makefile.in)18 b Fn(\002le)k(after)j(the)f(@)p Ff(COMMENCE)p
+Fn(@)18 b(line.)0 1276 y(F)o(or)34 b(each)h(standard)i(tool)e(you)h
+(need)f(in)g(SALOME)c(\(QT)-7 b(,)34 b(p)o(ython,)39
+b(OpenCascade,)g(CORB)m(A,)32 b(VTK,)g(.)14 b(.)g(.)g(\),)35
+b(main)0 1411 y(symbols)25 b(listed)g(belo)n(w)-6 b(.)p
+Black 114 1793 a(1.)p Black 45 w Fd(Corba)p 361 1923
+3105 4 v 361 1923 V 359 2140 4 217 v 411 2075 a(variable)p
+1215 2140 V 555 w(value)p 3464 2140 V 361 2143 3105 4
+v 361 2143 V 359 2360 4 217 v 411 2295 a Ff(CORBA)p 691
+2295 28 4 v 30 w(ROOT)p 1215 2360 4 217 v 330 w Fn(CORB)m(A)21
+b(home)j(base)p 3464 2360 V 361 2363 3105 4 v 361 2363
+V 359 2580 4 217 v 411 2515 a Ff(CORBA)p 691 2515 28
+4 v 30 w(INCLUDES)p 1215 2580 4 217 v 110 w Fn(compiler)h(options)h(to)
+d(include)j(CORB)m(A)20 b(headers)p 3464 2580 V 361 2583
+3105 4 v 361 2583 V 359 2800 4 217 v 411 2735 a Ff(CORBA)p
+691 2735 28 4 v 30 w(LIBS)p 1215 2800 4 217 v 330 w Fn(libraries)26
+b(needed)f(to)f(link)g(with)f(CORB)m(A)p 3464 2800 V
+361 2803 3105 4 v 361 2803 V 359 3156 4 353 v 411 2955
+a Ff(CORBA)p 691 2955 28 4 v 30 w(CXXFLAGS)p 1215 3156
+4 353 v 110 w Fn(C++)g(compiler)i(options)h(to)d(use)h(with)f(CORB)m(A)
+p 3464 3156 V 361 3159 3105 4 v 361 3159 V 359 3376 4
+217 v 411 3311 a Ff(IDL)p 1215 3376 V 690 w Fn(idl)h(compiler)p
+3464 3376 V 361 3379 3105 4 v 361 3379 V 359 3731 4 353
+v 411 3531 a Ff(IDLCXXFLAGS)p 1215 3731 V 250 w Fn(options)g(to)e(the)g
+(idl)g(compiler)h(to)f(generate)i(C++)d(stub)h(or)g(sk)o(eleton)1266
+3666 y(code)p 3464 3731 V 361 3735 3105 4 v 361 3735
+V 359 4087 4 353 v 411 3886 a Ff(IDLPYFLAGS)p 1215 4087
+V 305 w Fn(options)i(to)d(the)h(idl)g(compiler)h(to)e(generate)j(p)o
+(ython)f(stub)f(or)g(sk)o(ele-)1266 4022 y(ton)i(code)p
+3464 4087 V 361 4090 3105 4 v 361 4090 V 359 4307 4 217
+v 411 4242 a Ff(IDL)p 581 4242 28 4 v 31 w(CLN)p 777
+4242 V 32 w(H)p 1215 4307 4 217 v 407 w Fn(e)o(xtension)i(of)e
+(generated)i(CORB)m(A)20 b(header)25 b(\002les)f(\(client)h(side\))p
+3464 4307 V 361 4310 3105 4 v 361 4310 V 359 4527 4 217
+v 411 4462 a Ff(IDL)p 581 4462 28 4 v 31 w(CLN)p 777
+4462 V 32 w(CXX)p 1215 4527 4 217 v 297 w Fn(e)o(xtension)h(of)e
+(generated)i(CORB)m(A)20 b(source)25 b(\002les)f(\(client)h(side\))p
+3464 4527 V 361 4530 3105 4 v 361 4530 V 359 4747 4 217
+v 411 4682 a Ff(IDL)p 581 4682 28 4 v 31 w(CLN)p 777
+4682 V 32 w(OBJ)p 1215 4747 4 217 v 297 w Fn(e)o(xtension)h(of)e
+(generated)i(CORB)m(A)20 b(object)25 b(\002les)f(\(client)h(side\))p
+3464 4747 V 361 4751 3105 4 v 361 4751 V 359 4967 4 217
+v 411 4902 a Ff(IDL)p 581 4902 28 4 v 31 w(SRV)p 777
+4902 V 32 w(H)p 1215 4967 4 217 v 407 w Fn(e)o(xtension)h(of)e
+(generated)i(CORB)m(A)20 b(header)25 b(\002les)f(\(serv)o(er)g(side\))p
+3464 4967 V 361 4971 3105 4 v 361 4971 V 359 5187 4 217
+v 411 5122 a Ff(IDL)p 581 5122 28 4 v 31 w(SRV)p 777
+5122 V 32 w(CXX)p 1215 5187 4 217 v 297 w Fn(e)o(xtension)i(of)e
+(generated)i(CORB)m(A)20 b(source)25 b(\002les)f(\(serv)o(er)g(side\))p
+3464 5187 V 361 5191 3105 4 v 361 5191 V 359 5408 4 217
+v 411 5342 a Ff(IDL)p 581 5342 28 4 v 31 w(SRV)p 777
+5342 V 32 w(OBJ)p 1215 5408 4 217 v 297 w Fn(e)o(xtension)i(of)e
+(generated)i(CORB)m(A)20 b(object)25 b(\002les)f(\(serv)o(er)g(side\))p
+3464 5408 V 361 5411 3105 4 v 361 5411 V Black 0 5644
+3827 9 v 0 5757 a(SALOME)415 b(Using)24 b(the)g(SALOME)d
+(con\002guration)26 b(and)e(b)n(uilding)i(system)e(V)-12
+b(.)23 b(0.3)562 b(16/20)p Black eop
+%%Page: 17 17
+17 16 bop Black Black Black 114 50 a Fn(2.)p Black 45
+w Fd(python)p 361 196 3105 4 v 361 196 V 359 413 4 217
+v 411 348 a(variable)p 1215 413 V 555 w(value)p 3464
+413 V 361 417 3105 4 v 361 417 V 359 633 4 217 v 411
+568 a Ff(PYTHON)p 1215 633 V 525 w Fn(p)o(ython)26 b(interpreter)g
+(\(absolute)g(path)e(to\))p 3464 633 V 361 637 3105 4
+v 361 637 V 359 853 4 217 v 411 788 a Ff(PYTHON)p 746
+788 28 4 v 30 w(VERSION)p 1215 853 4 217 v 110 w Fn(p)o(ython)i(v)o
+(ersion)p 3464 853 V 361 857 3105 4 v 361 857 V 359 1074
+4 217 v 411 1009 a Ff(PYTHONHOME)p 1215 1074 V 305 w
+Fn(p)o(ython)g(home)d(base)i(\(sometimes)g(needed)g(to)e(run)h(p)o
+(ython\))p 3464 1074 V 361 1077 3105 4 v 361 1077 V 359
+1294 4 217 v 411 1229 a Ff(PYTHON)p 746 1229 28 4 v 30
+w(INCLUDES)p 1215 1294 4 217 v 55 w Fn(compiler)h(options)h(to)d
+(include)j(p)o(ython)f(header)g(\002les)p 3464 1294 V
+361 1297 3105 4 v 361 1297 V 359 1514 4 217 v 411 1449
+a Ff(PYTHON)p 746 1449 28 4 v 30 w(LIBS)p 1215 1514 4
+217 v 275 w Fn(libraries)h(needed)f(to)f(link)g(with)f(p)o(ython)p
+3464 1514 V 361 1517 3105 4 v 361 1517 V Black 114 1866
+a(3.)p Black 45 w Fd(QT)p 361 2011 V 361 2011 V 359 2227
+4 217 v 411 2162 a(variable)p 1215 2227 V 555 w(value)p
+3464 2227 V 361 2231 3105 4 v 361 2231 V 359 2447 4 217
+v 411 2382 a Ff(MOC)p 1215 2447 V 690 w Fn(moc)h(compiler)p
+3464 2447 V 361 2451 3105 4 v 361 2451 V 359 2668 4 217
+v 411 2603 a Ff(UIC)p 1215 2668 V 690 w Fn(uic)g(graphical)i(compiler)p
+3464 2668 V 361 2671 3105 4 v 361 2671 V 359 2888 4 217
+v 411 2823 a Ff(QTDIR)p 1215 2888 V 580 w Fn(QT)c(home)i(base)p
+3464 2888 V 361 2891 3105 4 v 361 2891 V 359 3108 4 217
+v 411 3043 a Ff(QT)p 526 3043 28 4 v 32 w(ROOT)p 1215
+3108 4 217 v 493 w Fn(QT)e(home)i(base)p 3464 3108 V
+361 3111 3105 4 v 361 3111 V 359 3328 4 217 v 411 3263
+a Ff(QT)p 526 3263 28 4 v 32 w(INCLUDES)p 1215 3328 4
+217 v 273 w Fn(compiler)h(options)h(to)d(include)j(QT)21
+b(headers)p 3464 3328 V 361 3331 3105 4 v 361 3331 V
+359 3548 4 217 v 411 3483 a Ff(QT)p 526 3483 28 4 v 32
+w(MT)p 668 3483 V 31 w(INCLUDES)p 1215 3548 4 217 v 132
+w Fn(same)j(as)f(abo)o(v)o(e,)h(for)g(multithreaded)j(applications)p
+3464 3548 V 361 3551 3105 4 v 361 3551 V 359 3768 4 217
+v 411 3703 a Ff(QT)p 526 3703 28 4 v 32 w(LIBS)p 1215
+3768 4 217 v 493 w Fn(libraries)f(needed)f(to)f(link)g(with)f(QT)f
+(\(single)j(threaded\))p 3464 3768 V 361 3771 3105 4
+v 361 3771 V 359 3988 4 217 v 411 3923 a Ff(QT)p 526
+3923 28 4 v 32 w(MT)p 668 3923 V 31 w(LIBS)p 1215 3988
+4 217 v 352 w Fn(same)f(as)f(abo)o(v)o(e,)h(for)g(multithreaded)j
+(applications)p 3464 3988 V 361 3992 3105 4 v 361 3992
+V 227 4210 a(F)o(or)c(SALOME)d(de)n(v)o(elopments,)26
+b(multithreaded)h(v)o(ersions)e(of)f(qt)f(options)j(and)e(libraries)h
+(are)f(needed.)p Black 114 4479 a(4.)p Black 45 w Fd(OpenGL)p
+361 4625 V 361 4625 V 359 4842 4 217 v 411 4777 a(variable)p
+1215 4842 V 555 w(value)p 3464 4842 V 361 4845 3105 4
+v 361 4845 V 359 5062 4 217 v 411 4997 a Ff(OGL)p 581
+4997 28 4 v 31 w(INCLUDES)p 1215 5062 4 217 v 219 w Fn(compiler)h
+(options)h(to)d(include)j(OpenGL)c(headers)p 3464 5062
+V 361 5065 3105 4 v 361 5065 V 359 5282 4 217 v 411 5217
+a Ff(OGL)p 581 5217 28 4 v 31 w(LIBS)p 1215 5282 4 217
+v 439 w Fn(libraries)k(needed)f(to)f(link)g(with)f(OpenGL)p
+3464 5282 V 361 5285 3105 4 v 361 5285 V Black 0 5644
+3827 9 v 0 5757 a(SALOME)415 b(Using)24 b(the)g(SALOME)d
+(con\002guration)26 b(and)e(b)n(uilding)i(system)e(V)-12
+b(.)23 b(0.3)562 b(17/20)p Black eop
+%%Page: 18 18
+18 17 bop Black Black Black 114 50 a Fn(5.)p Black 45
+w Fd(VTK)p 361 179 3105 4 v 361 179 V 359 396 4 217 v
+411 331 a(variable)p 1215 396 V 555 w(value)p 3464 396
+V 361 399 3105 4 v 361 399 V 359 616 4 217 v 411 551
+a Ff(VTK)p 581 551 28 4 v 31 w(INCLUDES)p 1215 616 4
+217 v 219 w Fn(compiler)25 b(options)h(to)d(include)j(VTK)21
+b(headers)p 3464 616 V 361 620 3105 4 v 361 620 V 359
+836 4 217 v 411 771 a Ff(VTK)p 581 771 28 4 v 31 w(LIBS)p
+1215 836 4 217 v 439 w Fn(libraries)26 b(needed)f(to)f(link)g(with)f
+(VTK)p 3464 836 V 361 840 3105 4 v 361 840 V Black 114
+1206 a(6.)p Black 45 w Fd(HDF)f(\(v5\))p 361 1350 V 361
+1350 V 359 1567 4 217 v 411 1502 a(variable)p 1215 1567
+V 555 w(value)p 3464 1567 V 361 1570 3105 4 v 361 1570
+V 359 1787 4 217 v 411 1722 a Ff(HDF5)p 636 1722 28 4
+v 31 w(INCLUDES)p 1215 1787 4 217 v 164 w Fn(compiler)j(options)h(to)d
+(include)j(HDF)21 b(headers)p 3464 1787 V 361 1790 3105
+4 v 361 1790 V 359 2007 4 217 v 411 1942 a Ff(HDF5)p
+636 1942 28 4 v 31 w(LIBS)p 1215 2007 4 217 v 384 w Fn(libraries)26
+b(needed)f(to)f(link)g(with)f(HDF)p 3464 2007 V 361 2011
+3105 4 v 361 2011 V 359 2227 4 217 v 411 2162 a Ff(HDF5)p
+636 2162 28 4 v 31 w(MT)p 777 2162 V 32 w(LIBS)p 1215
+2227 4 217 v 242 w Fn(libraries)j(needed)f(to)f(link)g(with)f(HDF)f
+(\(multithreaded)27 b(v)o(ersion\))p 3464 2227 V 361
+2231 3105 4 v 361 2231 V Black 114 2582 a(7.)p Black
+45 w Fd(OpenCascade)p 361 2729 V 361 2729 V 359 2946
+4 217 v 411 2881 a(variable)p 1215 2946 V 555 w(value)p
+3464 2946 V 361 2949 3105 4 v 361 2949 V 359 3166 4 217
+v 411 3101 a Ff(OCC)p 581 3101 28 4 v 31 w(INCLUDES)p
+1215 3166 4 217 v 219 w Fn(compiler)e(options)h(to)d(include)j
+(OpenCascade)f(headers)p 3464 3166 V 361 3169 3105 4
+v 361 3169 V 359 3386 4 217 v 411 3321 a Ff(OCC)p 581
+3321 28 4 v 31 w(LIBS)p 1215 3386 4 217 v 439 w Fn(libraries)h(needed)f
+(to)f(link)g(with)f(OpenCascade)p 3464 3386 V 361 3389
+3105 4 v 361 3389 V 359 3606 4 217 v 411 3541 a Ff(OCC)p
+581 3541 28 4 v 31 w(CXXFLAGS)p 1215 3606 4 217 v 219
+w Fn(C++)g(compiler)i(options)h(to)d(use)h(with)f(OpenCascade)p
+3464 3606 V 361 3609 3105 4 v 361 3609 V 0 3960 a Fj(9)119
+b(Location)30 b(of)f(generated)i(\002les)f(in)h(the)f(b)n(uild)h(tr)n
+(ee)0 4237 y Fn(A)22 b(partial)j(vie)n(w)f(of)f(the)h(b)n(uild)h(tree)f
+(sho)n(ws)f(the)h(location)i(of)d(\002les)h(generated)i(during)f(the)f
+(compilation)i(process.)0 4607 y Fj(10)119 b(What')l(s)28
+b(matter)i(when)h(launch)g Fb(make)71 b(install)0 4884
+y Fn(When)23 b(all)f(libraries)j(and)e(binaries)h(\002les)e(are)h
+(generated,)i(mak)o(e)e(copies)h(all)e(identi\002ed)i(\002les)e(as)h
+Ff(configure)17 b Fn(param-)0 5019 y(eters)24 b Ff(--prefix)p
+Fn(,)19 b Ff(bindir)p Fn(,)h Ff(datadir)p Fn(,)f(...)28
+b(\(see)c Ff(configure)50 b(--help)20 b Fn(for)k(details\).)0
+5202 y(If)f(you)h(specify)i(nothing,)f(all)f(are)f(installed)j(in)e
+Ff(<prefix>=/usr/)o(lo)o(ca)o(l)p Fn(.)0 5385 y(All)19
+b(e)o(x)o(ecutables)j(\(binaries)f(and)f(scripts\))h(are)f(placed)h(in)
+e Ff(<prefix>/bin)13 b Fn(\(see)20 b(BIN)e(and)i(BIN)p
+3147 5385 28 4 v 32 w(SCRIPT)d(v)n(ariables)0 5520 y(in)23
+b Ff(Makefile)p Fn(\).)p Black 0 5644 3827 9 v 0 5757
+a(SALOME)415 b(Using)24 b(the)g(SALOME)d(con\002guration)26
+b(and)e(b)n(uilding)i(system)e(V)-12 b(.)23 b(0.3)562
+b(18/20)p Black eop
+%%Page: 19 19
+19 18 bop Black Black Black 0 2350 a @beginspecial 0
+@llx 0 @lly 437 @urx 287 @ury 4370 @rwi @setspecial
+%%BeginDocument: ../../../SALOME_ROOT/doc/DevelopersGuide/bldtree.eps
+%!PS-Adobe-2.0 EPSF-2.0
+%%Title: bldtree.eps
+%%Creator: fig2dev Version 3.2 Patchlevel 3c
+%%CreationDate: Thu Jul 26 11:57:29 2001
+%%For: tajchman@nikyo (Marc Tajchman - SFME/LGLS)
+%%BoundingBox: 0 0 437 287
+%%Magnification: 1.0000
+%%EndComments
+/$F2psDict 200 dict def
+$F2psDict begin
+$F2psDict /mtrx matrix put
+/col-1 {0 setgray} bind def
+/col0 {0.000 0.000 0.000 srgb} bind def
+/col1 {0.000 0.000 1.000 srgb} bind def
+/col2 {0.000 1.000 0.000 srgb} bind def
+/col3 {0.000 1.000 1.000 srgb} bind def
+/col4 {1.000 0.000 0.000 srgb} bind def
+/col5 {1.000 0.000 1.000 srgb} bind def
+/col6 {1.000 1.000 0.000 srgb} bind def
+/col7 {1.000 1.000 1.000 srgb} bind def
+/col8 {0.000 0.000 0.560 srgb} bind def
+/col9 {0.000 0.000 0.690 srgb} bind def
+/col10 {0.000 0.000 0.820 srgb} bind def
+/col11 {0.530 0.810 1.000 srgb} bind def
+/col12 {0.000 0.560 0.000 srgb} bind def
+/col13 {0.000 0.690 0.000 srgb} bind def
+/col14 {0.000 0.820 0.000 srgb} bind def
+/col15 {0.000 0.560 0.560 srgb} bind def
+/col16 {0.000 0.690 0.690 srgb} bind def
+/col17 {0.000 0.820 0.820 srgb} bind def
+/col18 {0.560 0.000 0.000 srgb} bind def
+/col19 {0.690 0.000 0.000 srgb} bind def
+/col20 {0.820 0.000 0.000 srgb} bind def
+/col21 {0.560 0.000 0.560 srgb} bind def
+/col22 {0.690 0.000 0.690 srgb} bind def
+/col23 {0.820 0.000 0.820 srgb} bind def
+/col24 {0.500 0.190 0.000 srgb} bind def
+/col25 {0.630 0.250 0.000 srgb} bind def
+/col26 {0.750 0.380 0.000 srgb} bind def
+/col27 {1.000 0.500 0.500 srgb} bind def
+/col28 {1.000 0.630 0.630 srgb} bind def
+/col29 {1.000 0.750 0.750 srgb} bind def
+/col30 {1.000 0.880 0.880 srgb} bind def
+/col31 {1.000 0.840 0.000 srgb} bind def
+
+end
+save
+newpath 0 287 moveto 0 0 lineto 437 0 lineto 437 287 lineto closepath clip newpath
+-46.0 335.0 translate
+1 -1 scale
+
+/cp {closepath} bind def
+/ef {eofill} bind def
+/gr {grestore} bind def
+/gs {gsave} bind def
+/sa {save} bind def
+/rs {restore} bind def
+/l {lineto} bind def
+/m {moveto} bind def
+/rm {rmoveto} bind def
+/n {newpath} bind def
+/s {stroke} bind def
+/sh {show} bind def
+/slc {setlinecap} bind def
+/slj {setlinejoin} bind def
+/slw {setlinewidth} bind def
+/srgb {setrgbcolor} bind def
+/rot {rotate} bind def
+/sc {scale} bind def
+/sd {setdash} bind def
+/ff {findfont} bind def
+/sf {setfont} bind def
+/scf {scalefont} bind def
+/sw {stringwidth} bind def
+/tr {translate} bind def
+/tnt {dup dup currentrgbcolor
+ 4 -2 roll dup 1 exch sub 3 -1 roll mul add
+ 4 -2 roll dup 1 exch sub 3 -1 roll mul add
+ 4 -2 roll dup 1 exch sub 3 -1 roll mul add srgb}
+ bind def
+/shd {dup dup currentrgbcolor 4 -2 roll mul 4 -2 roll mul
+ 4 -2 roll mul srgb} bind def
+/$F2psBegin {$F2psDict begin /$F2psEnteredState save def} def
+/$F2psEnd {$F2psEnteredState restore end} def
+
+$F2psBegin
+%%Page: 1 1
+10 setmiterlimit
+ 0.06000 0.06000 sc
+%
+% Fig objects follow
+%
+% Polyline
+15.000 slw
+n 2475 2025 m 3450 2025 l 3450 2475 l 2475 2475 l
+ cp gs col0 s gr
+/Times-Roman ff 180.00 scf sf
+2625 2325 m
+gs 1 -1 sc (Module 1) col0 sh gr
+% Polyline
+n 3000 3900 m 3900 3900 l 3900 4350 l 3000 4350 l
+ cp gs col0 s gr
+/Times-Roman ff 180.00 scf sf
+3150 4200 m
+gs 1 -1 sc (src) col0 sh gr
+% Polyline
+n 1725 3900 m 2700 3900 l 2700 4350 l 1725 4350 l
+ cp gs col0 s gr
+/Times-Roman ff 180.00 scf sf
+1800 4200 m
+gs 1 -1 sc (resources) col0 sh gr
+% Polyline
+n 1275 2025 m 2250 2025 l 2250 2475 l 1275 2475 l
+ cp gs col0 s gr
+/Times-Roman ff 180.00 scf sf
+1575 2325 m
+gs 1 -1 sc (inc) col0 sh gr
+% Polyline
+n 1080 2775 m 900 2775 900 3270 180 arcto 4 {pop} repeat
+ 900 3450 1995 3450 180 arcto 4 {pop} repeat
+ 2175 3450 2175 2955 180 arcto 4 {pop} repeat
+ 2175 2775 1080 2775 180 arcto 4 {pop} repeat
+ cp gs col6 1.00 shd ef gr gs col0 s gr
+/Times-Bold ff 180.00 scf sf
+1050 3075 m
+gs 1 -1 sc (Exported) col0 sh gr
+/Times-Bold ff 180.00 scf sf
+1050 3300 m
+gs 1 -1 sc (header files) col0 sh gr
+% Polyline
+n 5040 4725 m 4800 4725 4800 5310 240 arcto 4 {pop} repeat
+ 4800 5550 5910 5550 240 arcto 4 {pop} repeat
+ 6150 5550 6150 4965 240 arcto 4 {pop} repeat
+ 6150 4725 5040 4725 240 arcto 4 {pop} repeat
+ cp gs col6 1.00 shd ef gr gs col0 s gr
+/Times-Bold ff 180.00 scf sf
+5025 4950 m
+gs 1 -1 sc (Object files) col0 sh gr
+/Times-Bold ff 180.00 scf sf
+5025 5175 m
+gs 1 -1 sc (libraries) col0 sh gr
+/Times-Bold ff 180.00 scf sf
+5025 5400 m
+gs 1 -1 sc (executables) col0 sh gr
+% Polyline
+n 4125 2025 m 5175 2025 l 5175 2475 l 4125 2475 l
+ cp gs col0 s gr
+/Times-Roman ff 180.00 scf sf
+4275 2325 m
+gs 1 -1 sc (resources) col0 sh gr
+% Polyline
+n 5325 2025 m 6375 2025 l 6375 2475 l 5325 2475 l
+ cp gs col0 s gr
+/Times-Roman ff 180.00 scf sf
+5550 2325 m
+gs 1 -1 sc (bin) col0 sh gr
+% Polyline
+n 6525 2025 m 7575 2025 l 7575 2475 l 6525 2475 l
+ cp gs col0 s gr
+/Times-Roman ff 180.00 scf sf
+6750 2325 m
+gs 1 -1 sc (lib) col0 sh gr
+% Polyline
+n 6330 975 m 6150 975 6150 1170 180 arcto 4 {pop} repeat
+ 6150 1350 7695 1350 180 arcto 4 {pop} repeat
+ 7875 1350 7875 1155 180 arcto 4 {pop} repeat
+ 7875 975 6330 975 180 arcto 4 {pop} repeat
+ cp gs col2 1.00 shd ef gr gs col0 s gr
+/Times-Bold ff 180.00 scf sf
+6375 1200 m
+gs 1 -1 sc (Links to libraries) col0 sh gr
+% Polyline
+n 3705 2850 m 3525 2850 3525 3345 180 arcto 4 {pop} repeat
+ 3525 3525 5670 3525 180 arcto 4 {pop} repeat
+ 5850 3525 5850 3030 180 arcto 4 {pop} repeat
+ 5850 2850 3705 2850 180 arcto 4 {pop} repeat
+ cp gs col2 1.00 shd ef gr gs col0 s gr
+/Times-Bold ff 180.00 scf sf
+3675 3150 m
+gs 1 -1 sc (Link to corresponding) col0 sh gr
+/Times-Bold ff 180.00 scf sf
+3675 3375 m
+gs 1 -1 sc (directories in source tree) col0 sh gr
+% Polyline
+n 6255 2850 m 6075 2850 6075 3345 180 arcto 4 {pop} repeat
+ 6075 3525 7845 3525 180 arcto 4 {pop} repeat
+ 8025 3525 8025 3030 180 arcto 4 {pop} repeat
+ 8025 2850 6255 2850 180 arcto 4 {pop} repeat
+ cp gs col2 1.00 shd ef gr gs col0 s gr
+/Times-Bold ff 180.00 scf sf
+6225 3150 m
+gs 1 -1 sc (Shell scripts) col0 sh gr
+/Times-Bold ff 180.00 scf sf
+6225 3375 m
+gs 1 -1 sc (Links to executables) col0 sh gr
+% Polyline
+n 2700 5100 m 3675 5100 l 3675 5550 l 2700 5550 l
+ cp gs col0 s gr
+/Times-Roman ff 180.00 scf sf
+2775 5400 m
+gs 1 -1 sc (Unit 1) col0 sh gr
+% Polyline
+n 3675 825 m 5325 825 l 5325 1425 l 3675 1425 l
+ cp gs col0 s gr
+% Polyline
+n 4725 1425 m
+ 4875 2025 l gs col0 s gr
+% Polyline
+n 3975 1425 m
+ 1800 2025 l gs col0 s gr
+% Polyline
+n 5100 1425 m
+ 7050 2025 l gs col0 s gr
+% Polyline
+n 3000 2025 m
+ 4200 1425 l gs col0 s gr
+% Polyline
+ [60] 0 sd
+n 3675 4350 m
+ 4425 5025 l gs col0 s gr [] 0 sd
+% Polyline
+ [60] 0 sd
+n 3450 4350 m
+ 3900 5025 l gs col0 s gr [] 0 sd
+% Polyline
+ [60] 0 sd
+n 4350 1425 m
+ 3675 2025 l gs col0 s gr [] 0 sd
+% Polyline
+ [60] 0 sd
+n 4500 1425 m
+ 3975 2025 l gs col0 s gr [] 0 sd
+% Polyline
+n 5100 1425 m
+ 5625 2025 l gs col0 s gr
+% Polyline
+n 3300 4350 m
+ 3150 5100 l gs col0 s gr
+% Polyline
+n 2700 2475 m
+ 2400 3900 l gs col0 s gr
+% Polyline
+n 3075 2475 m
+ 3375 3900 l gs col0 s gr
+% Polyline
+2 slj
+gs clippath
+1287 2295 m 1292 2205 l 1143 2198 l 1254 2249 l 1139 2288 l cp
+eoclip
+n 900 3225 m 899 3223 l 898 3220 l 896 3213 l 893 3202 l 888 3188 l
+ 882 3169 l 875 3146 l 868 3120 l 859 3091 l 850 3058 l
+ 841 3024 l 832 2988 l 823 2951 l 815 2914 l 808 2875 l
+ 801 2836 l 796 2797 l 792 2758 l 790 2718 l 790 2677 l
+ 792 2637 l 796 2595 l 802 2554 l 812 2514 l 825 2475 l
+ 842 2436 l 862 2402 l 884 2373 l 907 2348 l 931 2327 l
+ 956 2309 l 981 2295 l 1007 2283 l 1034 2274 l 1060 2267 l
+ 1087 2261 l 1113 2257 l 1139 2254 l 1164 2252 l 1187 2250 l
+ 1209 2250 l 1227 2249 l 1243 2249 l 1255 2249 l
+ 1275 2250 l gs col0 s gr gr
+
+% arrowhead
+0 slj
+n 1139 2288 m 1254 2249 l 1143 2198 l 1164 2244 l 1139 2288 l
+ cp gs 0.00 setgray ef gr col0 s
+% Polyline
+2 slj
+gs clippath
+7160 2051 m 7247 2027 l 7207 1884 l 7194 2005 l 7120 1908 l cp
+eoclip
+n 7125 1350 m 7125 1352 l 7124 1356 l 7123 1362 l 7122 1372 l 7121 1385 l
+ 7119 1400 l 7118 1418 l 7117 1437 l 7116 1459 l 7115 1482 l
+ 7115 1509 l 7116 1538 l 7118 1571 l 7121 1609 l 7125 1650 l
+ 7130 1688 l 7135 1724 l 7140 1758 l 7146 1790 l 7151 1820 l
+ 7157 1848 l 7163 1875 l 7169 1900 l 7174 1924 l 7180 1947 l
+ 7185 1967 l 7189 1985 l 7193 2000 l
+ 7200 2025 l gs col0 s gr gr
+
+% arrowhead
+0 slj
+n 7120 1908 m 7194 2005 l 7207 1884 l 7169 1918 l 7120 1908 l
+ cp gs 0.00 setgray ef gr col0 s
+% Polyline
+2 slj
+gs clippath
+2055 3883 m 2125 3939 l 2218 3824 l 2113 3884 l 2148 3768 l cp
+eoclip
+n 3525 3150 m 3524 3150 l 3522 3149 l 3517 3147 l 3510 3145 l 3501 3142 l
+ 3489 3139 l 3474 3135 l 3456 3130 l 3436 3126 l 3413 3121 l
+ 3389 3116 l 3363 3112 l 3336 3109 l 3307 3107 l 3276 3106 l
+ 3244 3106 l 3211 3109 l 3175 3113 l 3137 3119 l 3096 3128 l
+ 3053 3140 l 3006 3156 l 2957 3175 l 2904 3198 l 2850 3225 l
+ 2803 3251 l 2756 3279 l 2710 3308 l 2667 3338 l 2625 3369 l
+ 2586 3399 l 2548 3430 l 2512 3461 l 2477 3491 l 2444 3522 l
+ 2412 3553 l 2381 3584 l 2351 3615 l 2322 3645 l 2295 3675 l
+ 2268 3704 l 2243 3733 l 2219 3760 l 2197 3785 l 2177 3808 l
+ 2159 3829 l 2143 3848 l 2130 3863 l 2120 3876 l 2112 3885 l
+
+ 2100 3900 l gs col0 s gr gr
+
+% arrowhead
+0 slj
+n 2148 3768 m 2113 3884 l 2218 3824 l 2169 3813 l 2148 3768 l
+ cp gs 0.00 setgray ef gr col0 s
+% Polyline
+2 slj
+gs clippath
+4154 2287 m 4124 2202 l 3983 2251 l 4105 2257 l 4013 2336 l cp
+eoclip
+n 3525 3150 m 3524 3149 l 3523 3146 l 3521 3141 l 3517 3133 l 3512 3122 l
+ 3506 3109 l 3499 3092 l 3492 3073 l 3484 3052 l 3476 3029 l
+ 3469 3005 l 3462 2979 l 3456 2952 l 3451 2925 l 3449 2897 l
+ 3447 2867 l 3449 2837 l 3452 2805 l 3459 2772 l 3469 2737 l
+ 3484 2700 l 3502 2663 l 3525 2625 l 3550 2591 l 3577 2559 l
+ 3606 2529 l 3635 2501 l 3666 2475 l 3697 2452 l 3728 2431 l
+ 3760 2411 l 3791 2392 l 3823 2375 l 3855 2359 l 3887 2344 l
+ 3919 2330 l 3950 2317 l 3979 2304 l 4007 2293 l 4033 2283 l
+ 4056 2275 l 4076 2267 l 4092 2261 l 4105 2257 l
+ 4125 2250 l gs col0 s gr gr
+
+% arrowhead
+0 slj
+n 4013 2336 m 4105 2257 l 3983 2251 l 4020 2286 l 4013 2336 l
+ cp gs 0.00 setgray ef gr col0 s
+% Polyline
+2 slj
+gs clippath
+3657 5355 m 3662 5445 l 3810 5437 l 3696 5399 l 3805 5347 l cp
+eoclip
+n 4800 5175 m 4799 5176 l 4796 5177 l 4791 5180 l 4784 5184 l 4774 5189 l
+ 4761 5195 l 4746 5203 l 4728 5211 l 4709 5220 l 4687 5229 l
+ 4663 5238 l 4637 5248 l 4608 5258 l 4576 5269 l 4541 5279 l
+ 4500 5290 l 4455 5302 l 4405 5313 l 4350 5325 l 4306 5333 l
+ 4263 5341 l 4220 5348 l 4179 5355 l 4139 5360 l 4101 5365 l
+ 4064 5370 l 4028 5374 l 3993 5377 l 3960 5380 l 3927 5383 l
+ 3896 5386 l 3865 5388 l 3835 5390 l 3808 5392 l 3782 5394 l
+ 3758 5395 l 3737 5397 l 3719 5398 l 3704 5398 l 3693 5399 l
+
+ 3675 5400 l gs col0 s gr gr
+
+% arrowhead
+0 slj
+n 3805 5347 m 3696 5399 l 3810 5437 l 3785 5394 l 3805 5347 l
+ cp gs 0.00 setgray ef gr col0 s
+% Polyline
+2 slj
+gs clippath
+5786 2428 m 5738 2505 l 5864 2584 l 5793 2486 l 5912 2508 l cp
+eoclip
+n 6450 2850 m 6449 2849 l 6446 2848 l 6441 2846 l 6434 2843 l 6424 2839 l
+ 6412 2833 l 6398 2827 l 6382 2820 l 6365 2811 l 6346 2803 l
+ 6326 2793 l 6303 2782 l 6279 2769 l 6251 2755 l 6221 2739 l
+ 6187 2720 l 6150 2700 l 6116 2681 l 6083 2662 l 6052 2644 l
+ 6022 2627 l 5995 2611 l 5969 2595 l 5944 2580 l 5920 2566 l
+ 5897 2552 l 5876 2538 l 5855 2526 l 5837 2514 l 5820 2503 l
+ 5806 2494 l 5794 2487 l
+ 5775 2475 l gs col0 s gr gr
+
+% arrowhead
+0 slj
+n 5912 2508 m 5793 2486 l 5864 2584 l 5869 2534 l 5912 2508 l
+ cp gs 0.00 setgray ef gr col0 s
+/Times-Roman ff 180.00 scf sf
+3825 1200 m
+gs 1 -1 sc (Root Build Tree) col0 sh gr
+$F2psEnd
+rs
+
+%%EndDocument
+ @endspecial Black 557 2569 a Fn(Figure)24 b(4:)29 b(P)o(artial)24
+b(vie)n(w)f(of)h(the)f(b)n(uild)i(tree)f(:)29 b(generated)d(\002les)d
+(during)i(compilation)p Black Black 0 2846 a(All)e(libraries)j(are)d
+(placed)i(in)f Ff(<prefix>/lib)17 b Fn(\(see)24 b(LIB)e(v)n(ariable)k
+(in)d Ff(Makefile)p Fn(\).)0 3028 y(All)g(includes)j(are)d(placed)i(in)
+f Ff(<prefix>/inclu)o(de)16 b Fn(\(see)24 b(EXPOR)-5
+b(T)p 2372 3028 28 4 v 30 w(HEADERS)20 b(v)n(ariable)25
+b(in)f Ff(Makefile)p Fn(\).)0 3211 y(All)f(idls)h(are)g(placed)h(in)e
+Ff(<prefix>/idl)17 b Fn(\(see)25 b(IDL)p 1784 3211 V
+32 w(FILES)c(v)n(ariable)k(in)f Ff(Makefile)p Fn(\).)0
+3394 y(All)g(p)o(ython)i(srcipts)f(are)g(placed)h(in)e
+Ff(<prefix>/lib/p)o(yth)o(on)o(2.)o(1/)o(..)o(.)g Fn(\(see)h
+Ff(EXPORT)p 3118 3394 V 30 w(PYSCRIPTS)19 b Fn(v)n(ari-)0
+3529 y(able)24 b(in)g Ff(Makefile)p Fn(\).)0 3712 y(All)17
+b(ressources)k(\002les)d(\(icons,)i(messages,)h(con\002guration,)h
+(...\))k(are)18 b(placed)h(in)f Ff(<prefix>/share/s)o(al)o(om)o(e/)o
+(res)o(so)o(ur)o(ce)o(s)0 3848 y Fn(\(see)24 b(RESOURCES)p
+703 3848 V 29 w(FILES)d(v)n(ariable)26 b(in)d Ff(Makefile)p
+Fn(\).)0 4217 y Fj(11)119 b(Cr)n(eating)30 b(sour)n(ce)g(\002les)g
+(according)h(to)e(SALOME)h(b)n(uilding)i(system)0 4494
+y Fn(Building)24 b(system)g(use)f(dependencies)k(between)d(\002les)f
+(writing)g(in)g(Mak)o(e\002le)h(rules.)29 b(W)-7 b(e)22
+b(use)h Ff(C)f Fn(or)h Ff(C++)d Fn(preprocessor)0 4630
+y(to)j(automatically)k(generate)f(this)e(dependencies)j(rules.)0
+4812 y(There)37 b(are)f(some)h(con\002guration)j(and)c(useful)i(macro)f
+(de\002ned)h(in)e(header)i(\002le)e Ff(SALOMEconfig.h)p
+Fn(.)60 b Fi(All)36 b(\002les)0 4948 y(should)24 b(be)f(included)h
+(this)g(header)h(!)32 b Fn(Y)-10 b(ou)24 b(must)h(include)i(it)d
+(ussing)i Ff(<>)d Fn(delimiter)j(because)h Ff(SALOMEconfig.h)0
+5083 y Fn(must)d(not)f(appear)i(in)f(dependencies)j(rules)e(\(see)f
+(belo)n(w)g(11.1\).)0 5266 y(When)31 b(a)e Ff(Makefile)d
+Fn(is)k(re)o(generate)j(with)d Ff(config.status)23 b
+Fn(script,)33 b(all)e(\002les)f(are)g(re)o(generates)j(\(in)d
+(particular)0 5402 y Ff(SALOMEconfig.h)p Fn(\).It)15
+b(is)22 b(a)f(restriction)k(of)d Ff(autoconf)51 b(2.13)19
+b Fn(which)j(could)h(not)f(re)o(generate)j(only)d(one)h(partic-)p
+Black 0 5644 3827 9 v 0 5757 a(SALOME)415 b(Using)24
+b(the)g(SALOME)d(con\002guration)26 b(and)e(b)n(uilding)i(system)e(V)
+-12 b(.)23 b(0.3)562 b(19/20)p Black eop
+%%Page: 20 20
+20 19 bop Black Black 0 50 a Fn(ular)26 b(\002le.)33
+b(So,)25 b(all)h(\002les)f(which)g(depend)j(of)d Ff(SALOMEconfig.h)18
+b Fn(are)26 b(reb)n(uild)h(e)n(v)o(en)e(if)g(it)h(does)g(not)f(change.)
+36 b(If)25 b(you)0 185 y(ef)n(fecti)n(v)o(ely)h(change)f
+Ff(SALOMEconfig.h)16 b Fn(\002le,)23 b(you)h(must)f(clean)i(all)f(and)g
+(reb)n(uild.)0 505 y Fe(11.1)99 b Fa(C)25 b Fe(or)g Fa(C++)f
+Fe(sour)n(ce)i(\002les)0 749 y Fi(Y)-10 b(ou)22 b(must)h(name)g(y)n
+(our)g Ff(C)f Fi(\002le)h Ff(<myCFile>.c)18 b Fi(and)k(header)i(\002le)
+e Ff(<myCHeaderFile>.)o(h)0 932 y Fi(Y)-10 b(ou)22 b(must)h(name)g(y)n
+(our)g Ff(C++)e Fi(\002le)i Ff(<myC++File>.cxx)16 b Fi(and)22
+b(header)i(\002le)f Ff(<myC++HeaderFi)o(le)o(>.h)o(xx)0
+1115 y Fn(T)-7 b(o)23 b(ha)n(v)o(e)i(right)h(dependencies)i(rules,)d
+(you)g(must)g(correctly)i(write)d(the)h(include)h(statement)g(in)f
+(your)g(source)h(\002les.)31 b(W)-7 b(e)0 1250 y(only)33
+b(tak)o(e)h(care)f(about)h(SALOME)c(package)k(header)g(\002les)f(to)f
+(generate)j(dependencies.)60 b(W)-7 b(e)32 b(suppose)j(that)e(other)0
+1386 y(header)d(\002les)d(\(qt,)j(vtk,)f(OpenCascade,)i(...\))42
+b(are)28 b(stables)i(and)e(are)h(not)f(modi\002ed)h(when)f(we)f(b)n
+(uild)j(some)e(SALOME)0 1521 y(modules.)0 1704 y(According)33
+b(to)e(cpp)g(documentation,)36 b(local)c(header)g(\002les)f(must)g(be)g
+(included)i(with)d Ff("")g Fn(statement)i(and)f(system)h(or)0
+1839 y(tools)25 b(headers)g(\002les)e(must)h(be)f(included)j(with)d
+Ff(<>)f Fn(statement.)0 2022 y(If)36 b(you)h(do)g(not)g(respect)h(this)
+f(notation,)42 b(dependencies)e(w)o(ould)d(not)g(be)g(true)g(and)g
+(some)g(reb)n(uilding)i(trouble)g(can)0 2157 y(appear)48
+b(!)0 2477 y Fe(11.2)99 b(idl)25 b(\002les)0 2721 y Fn(W)-7
+b(e)25 b(use)i Ff(C)e Fn(preprocessor)k(to)d(b)n(uild)i(dependencies)i
+(between)d(idl)f(\002les.)37 b(The)25 b(same)h(con)l(v)o(ention)k(must)
+c(be)g(applied)i(as)0 2857 y Ff(C)22 b Fn(or)i Ff(C++)d
+Fn(source)k(\002les.)0 3039 y(If)c(included)j(\002le)d(is)g(an)h(e)o
+(xternal)h(\002les,)e(you)h(must)g(use)g(statement)h
+Ff(<>)d Fn(because)j(this)f(\002le)f(will)g(not)h(be)f(modi\002ed)h
+(during)0 3175 y(SALOME)16 b(de)n(vloppement)22 b(and/or)f(b)n
+(uilding.)30 b(If)19 b(included)i(\002le)e(is)g(part)h(of)f(SALOME)d
+(\002les,)k(you)f(must)h(use)f(statement)0 3310 y Ff("")p
+Fn(.)0 3493 y(If)h(you)g(do)g(not)g(respect)i(this)e(notation,)i
+(dependencies)i(w)o(ould)d(not)f(be)g(true)g(and)g(some)g(b)n(uilding)j
+(or)c(reb)n(uilding)k(trouble)0 3629 y(can)h(appear)48
+b(!)0 3948 y Fe(11.3)99 b(Included)26 b(header)h(\002le)e(generated)h
+(fr)n(om)g(idl)e(\002le)0 4192 y Fn(T)-7 b(o)22 b(include)k(header)f
+(\002le)e(generated)j(from)d(idl)h(\002le,)f(you)h(must)f(use)h(macro)g
+Ff(CORBA)p 2699 4192 28 4 v 31 w(CLIENT)p 3060 4192 V
+30 w(HEADER)c Fn(or)0 4328 y Ff(CORBA)p 280 4328 V 30
+w(SERVER)p 640 4328 V 30 w(HEADER)g Fn(de\002ned)25 b(in)e
+Ff(SALOMEconfig.h)p Fn(.)0 4511 y(These)f(tw)o(o)g(macros)h(replace)g
+(idl)g(pre\002x)f(into)h(corresponding)j(header)e(name)e(generated)i
+(\(tak)o(e)f(care)g(if)f(you)g(use)h(client)0 4646 y(part)h(or)g(serv)o
+(er)g(part\))0 4829 y Fi(Example)f(:)p Black Black 0
+5086 a Ff(#include)105 b(CORBA_CLIENT_HEA)o(DE)o(R\()o(ge)o(om\))0
+5222 y(#include)g(CORBA_SERVER_HEA)o(DE)o(R\()o(me)o(sh\))p
+Black 0 5644 3827 9 v 0 5757 a Fn(SALOME)415 b(Using)24
+b(the)g(SALOME)d(con\002guration)26 b(and)e(b)n(uilding)i(system)e(V)
+-12 b(.)23 b(0.3)562 b(20/20)p Black eop
+%%Trailer
+end
+userdict /end-hook known{end-hook}if
+%%EOF
--- /dev/null
+\documentclass[11pt,a4paper]{article}
+\usepackage{isolatin1}
+\usepackage{psfig}
+\usepackage{graphicx}
+\usepackage{fancyheadings}
+\usepackage{lastpage}
+\usepackage{epic}
+\usepackage{longtable}
+\usepackage{times}
+\usepackage{verbatim}
+
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% mise en page du document %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \voffset -20pt
+ \topmargin 0 cm
+ \headheight 15pt
+ \headsep 0 cm
+ \textheight 670 pt
+ \footskip 1 cm
+ \marginparwidth 0 cm
+ \oddsidemargin 0 cm
+ \evensidemargin 0 cm
+ \textwidth 16.2 cm
+ \parindent 0 cm
+
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% test si on passe par pdflatex %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\newif\ifpdf
+ \ifx\pdfoutput\undefined
+ \pdffalse % we are not running pdflatex
+ \else
+ \pdfoutput=1 % we are running pdflatex
+ \pdfcompresslevel=9 % compression level for text and image;
+ \pdftrue
+ \fi
+
+\ifpdf
+\usepackage{thumbpdf}
+\usepackage[pdftex,
+ colorlinks=true,
+ urlcolor=rltblue, % \href{...}{...} external (URL)
+ filecolor=rltgreen, % \href{...} local file
+ linkcolor=rltred, % \ref{...} and \pageref{...}
+ pdftitle={Adding a new module or unit development},
+ pdfauthor={Patrick Goldbronn, Marc Tajchman},
+ pdfsubject={},
+ pdfkeywords={},
+ pagebackref,
+ pdfpagemode=None,
+ bookmarksopen=true]{hyperref}
+\usepackage{color}
+\definecolor{rltred}{rgb}{0.75,0,0}
+\definecolor{rltgreen}{rgb}{0,0.5,0}
+\definecolor{rltblue}{rgb}{0,0,0.75}
+\else
+\usepackage{color}
+\fi
+
+%%
+%%%%%%%%%%%%%%%%%%%%%%%%%
+%% epaisseur des traits %
+%%%%%%%%%%%%%%%%%%%%%%%%%
+\linethickness{1pt}
+%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% mise en page des environnement array %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \arraycolsep 2pt
+ \renewcommand{\arraystretch}{1.6}
+%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% interligne du document %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\renewcommand{\baselinestretch}{1.2}
+%%
+%%%%%%%%%%%%%%%%%%%%%%%%
+%% haut et bas de page %
+%%%%%%%%%%%%%%%%%%%%%%%%
+\newcommand{\version}{0.3}
+
+\pagestyle{fancy}
+%
+ \chead{}
+ \lhead{}
+ \rhead{}
+%
+ \lfoot{
+ SALOME
+ }
+ \cfoot{
+ Using the SALOME configuration and building system V. \version
+ }
+ \rfoot{
+ \thepage/\pageref{LastPage}
+ }
+%%
+ \setlength{\headrulewidth}{0pt}
+ \setlength{\footrulewidth}{1pt}
+%
+%-----------------------------------------------------------
+% Les racourcis :
+\newcommand{\fsc}{\sc}
+
+
+%%-----------------------------------------------------------
+%%-----------------------------------------------------------
+%%-----------------------------------------------------------
+
+
+%% Bring items closer together in list environments
+% Prevent infinite loops
+\let\Itemize =\itemize
+\let\Enumerate =\enumerate
+\let\Description =\description
+% Zero the vertical spacing parameters
+\def\Nospacing{\itemsep=4pt\topsep=-5pt\partopsep=-5pt%
+\parskip=0pt\parsep=0pt}
+% Redefinition de art12.sty pour commencer a la marge de gauche
+%\leftmargini 1.2em % 2.5em
+
+\def\noitemsep{
+% Redefine the environments in terms of the original values
+\renewenvironment{itemize}{\Itemize\Nospacing}{\endlist}
+\renewenvironment{enumerate}{\Enumerate\Nospacing}{\endlist}
+\renewenvironment{description}{\Description\Nospacing}%
+{\endlist}
+}
+
+\def\doitemsep{
+% Redefine the environments to the original values
+\renewenvironment{itemize}{\Itemize}{\endlist}
+\renewenvironment{enumerate}{\Enumerate}{\endlist}
+\renewenvironment{description}{\Description}{\endlist}
+}
+
+%%%% fin macro %%%%
+
+\begin{document}
+\noitemsep
+
+%%%%%%%%%%%%%%%%%%%%
+%% TITRE AUTEUR(S) %
+%%%%%%%%%%%%%%%%%%%%
+
+\textcolor{white}{.}
+\vfill\vfill
+\begin{figure}[!h]
+\begin{center}
+\ifpdf
+ \includegraphics[width=11.88cm, height=5.11cm]{@srcdir@/SALOME.png}
+\else
+ \includegraphics[width=11.88cm, height=5.11cm]{@srcdir@/SALOME.ps}
+\fi
+\end{center}
+\end{figure}
+
+\bigskip
+\bigskip
+
+\begin{center}
+{\usefont{T1}{phv}{bx}{n}
+\huge Using the SALOME configuration and building system
+environment
+}
+\bigskip
+\medskip
+
+{\LARGE Version \version}
+\end{center}
+
+\vfill
+
+{
+\large
+\renewcommand{\arraystretch}{0.85}
+\begin{tabular}{lll}
+Patrick & Goldbronn & C.E.A. \\
+Marc & Tajchman & C.E.A.
+\end{tabular}
+}
+
+
+\def\Mkin{{\tt Makefile.in }}
+
+\thispagestyle{empty}
+
+\newpage
+%-----------------------------------------------------------
+\section*{Successive versions}
+
+\vfill
+\begin{tabular}{|p{2cm}|p{1.5cm}|p{8cm}|p{2cm}|}
+\hline
+\textbf{Date} & \textbf{Version} & \textbf{Description} & \textbf{Author(s)}\\
+\hline
+10/07/2001& 0.0 & Initial version & PG \\
+\hline
+25/07/2001 & 0.1 & English traduction, rewriting & MT \\
+\hline
+29/08/2001 & 0.2 & Add source creation, some precision & PG \\
+\hline
+24/05/2002 & 0.3 & Add instruction to do installation correctly & PG \\
+\hline
+\end{tabular}
+\vfill
+\vfill
+
+%\thispagestyle{empty}
+\newpage
+%-----------------------------------------------------------
+ \begin{abstract}
+ This document contains rules and advices to configure,
+ build and extend the SALOME platform.
+ \end{abstract}
+
+ \newpage
+%-----------------------------------------------------------
+ \tableofcontents
+ \newpage
+ \parskip 0.2 cm
+%-----------------------------------------------------------
+\newpage
+
+\section{SALOME Configuration}
+
+\subsection{Directories organisation}
+
+We suppose here that you unpack the SALOME distribution from scratch.
+The path to the SALOME sources will be named ``top source directory''
+or {\tt SALOME\_ROOT}.
+
+It is possible, but not advised, to build the set of binaries and libraries
+in the same subtree. Instead, we suppose you have choosen a different subtree
+where to put builded files (you can so build to multiples architectures from the same source tree). The root of the build subtree will be named
+``top build directory''.
+
+At the end of configuration and compilation processs, you may install
+builded files in a separate subtree, name ``installation subtree''.
+The root of the installation subtree will be named ``top installation directory''.
+
+The figure \ref{FigDirs} shows subtrees organisation.
+
+\begin{figure}[h]
+\ifpdf
+ \includegraphics{@srcdir@/subtrees.pdf}
+\else
+ \includegraphics{@srcdir@/subtrees.eps}
+\fi
+\caption{\label{FigDirs} Subtrees organisation}
+\end{figure}
+
+\subsection{PreConfiguration step}
+
+SALOME needs some environment variables (to be defined for example in
+a .cshrc or .bashrc file in your home directory)~:
+
+\begin{tabular}{|p{3.5cm}|p{11cm}|}
+\hline
+\it variable & \it set value and check \\
+\hline
+{\tt QTDIR} & root directory of qt distribution ({\tt \$QTDIR/lib} must contain libqt.so) \\
+\hline
+{\tt HDF5HOME} & root directory of hdf5 distribution ({\tt \$HDF5HOME/lib} must contain libhdf5.so) \\
+\hline
+{\tt VTKHOME} & root directory of vtk distribution ({\tt \$VTKHOME/common} must contain libVTKCommon.so) \\
+\hline
+{\tt CASROOT} & root directory of OpenCascade distribution ({\tt \$CASROOT/Linux/lib} must contain libTKernel.so) \\
+\hline
+{\tt PYTHONHOME} & root directory of python distribution ({\tt \$PYTHONHOME/lib/pythonXXX/config} must contain libpythonXXX.a) \\
+\hline
+{\tt OMNIORB\_CONFIG } & path to the omniORB.cfg file (this file contains default
+options to omniORB, see below) \\
+\hline
+\end{tabular}
+
+\bigskip
+Create a file named omniORB.cfg in your root tree, containing default
+options to omniORB. Put in this file, the following line~:
+\begin{verbatim}
+ORBInitRef NameService=corbaname::localhost
+\end{verbatim}
+
+(tells omniORB that the CORBA name service is local).
+
+\subsection{Configuration step}
+
+\begin{enumerate}
+\item There are two cases~:
+\begin{itemize}
+\item There is a {\tt configure} file in the top source directory,
+and you didn't change the SALOME structure (adding a module or unit,
+see sections \ref{sec_module} or \ref{sec_unit} below).
+Go to point \ref{pConf}.
+\item You don't have a {\tt configure} file or you add a module/unit
+in the SALOME system.
+Go to point \ref{pReConf}
+\end{itemize}
+
+\item \label{pReConf}
+Go to the top source directory and type~:
+\begin{verbatim}
+./reconfigure
+\end{verbatim}
+This script find all file with suffix {\tt .in} (which will be generate by {\tt configure} script) and add them in {\tt configure.in} file, launch {\tt aclocal} and {\tt autoconf} to generete {\tt configure} script.
+
+Continue with point \ref{pConf}
+
+\item \label{pConf}
+Go to the top build directory you choose.
+
+If you plan to install SALOME files after building in a non-standard
+location (i.e. different from /usr/local), type~:
+
+\begin{verbatim}
+<path to the top source directory>/configure \
+ --prefix=<installation directory>
+\end{verbatim}
+
+otherwise, type~:
+\begin{verbatim}
+<path to the top source directory>/configure
+\end{verbatim}
+
+where ``path to the top source directory'' is to be replaced by the path
+to the SALOME sources.
+
+For other options to the configure command, type~:
+\begin{verbatim}
+<path to the top source directory>/configure --help
+\end{verbatim}
+
+This will create a mirror subtree of the sources into the top build directory
+where object files, binaries and libraries will be builded. Also a makefile
+system will be created into the build tree.
+
+\end{enumerate}
+
+\subsection{PostConfiguration step}
+
+This phase is optional, to be used only if the compilation process
+(see next section) fails to use {\tt libtool} script.
+
+On some systems, the {\tt libtool} script generated by the configure
+command will not operate correctly during compilation
+(see next section). If you encounter this situation,
+copy the local libtool script in your system (e.g. in the /usr/bin
+directory) to the top build directory after configuration and before
+compilation phases.
+
+Check the following line in libtool script :
+\begin{verbatim}
+deplibs_check_method=...
+\end{verbatim}
+
+If needed, replace this line by
+\begin{verbatim}
+deplibs_check_method="pass_all"
+\end{verbatim}
+
+\section{SALOME compilation}
+
+From the top build directory, type
+\begin{verbatim}
+make
+\end{verbatim}
+
+After some time (be patient ...), it will create various binaries.
+Building SALOME is split in several phases~:
+
+\begin{itemize}
+\item {\tt make inc} : copy/update header files exported by development units
+in the directory {\tt inc} of the build tree ;
+\item {\tt make depend\_idl} : determine dependencies between idl files (useful when recompiling SALOME after idl modification);
+\item {\tt make depend (make dep)} : determine dependencies between source files and header files (useful when recompiling SALOME after source modification);
+\item {\tt make lib} : generate libraries, put a copy/link into the {\tt lib} directory of the build tree;
+\item {\tt make bin} : generate binaries;
+\item {\tt make tests (make check)} : build and run tests (not yet implemented).
+\end{itemize}
+
+After building, testing, the user may install the system in a choosen directory
+(different from and not included in the top source directory and the top build directory).
+
+From the top build directory, type~:
+\begin{quotation}\noindent%
+ {\tt make install} : install libraries, header and idl files, binaries,
+resource files in the installation directory
+\end{quotation}
+
+\section{\label{sec_module}Module creation}
+
+In this section, the new module will be named {\tt <Module>}. Replace
+each occurence with the real name of your module.
+
+\begin{enumerate}
+\item In the source tree root {\tt SALOME\_ROOT}, create a new directory
+{\tt <Module>} :
+
+\begin{verbatim}
+cd SALOME_ROOT
+mkdir <Module>
+\end{verbatim}
+
+\item Modify the \Mkin file in the {\tt SALOME\_ROOT} directory to add the new module~:
+
+Append to the line beginning with
+\begin{verbatim}
+SUBDIRS =
+\end{verbatim}
+
+the name of the new module.
+
+\item In the module root directory, create two subdirectories {\tt src} and {\tt resources} and create a file \Mkin
+ (e.g. copy the corresponding file in {\tt GEOM} module for example)~:
+
+\begin{verbatim}
+cd <Module>
+mkdir src
+mkdir resources
+cp ../GEOM/Makefile.in .
+\end{verbatim}
+
+\item In the {\tt src} subdirectory, copy a \Mkin file (e.g. from the corresponding file in {\tt GEOM/src} subdirectory for example)~:
+
+\begin{verbatim}
+cd src
+cp ../../GEOM/src/Makefile.in .
+\end{verbatim}
+
+\item Edit this file and replace the line
+\begin{verbatim}
+MODULE = GEOM
+\end{verbatim}
+
+with
+\begin{verbatim}
+MODULE = <Module>
+\end{verbatim}
+
+\item Edit this file and replace the line
+\begin{verbatim}
+SUBDIRS = GEOMDS GEOM GEOMGUI
+\end{verbatim}
+
+with
+\begin{verbatim}
+SUBDIRS =
+\end{verbatim}
+
+(empty list of development units in this module).
+
+\item Edit this file and replace the line
+\begin{verbatim}
+RESOURCES_FILES = arc.png \
+...
+\end{verbatim}
+
+with
+\begin{verbatim}
+RESOURCES_FILES =
+\end{verbatim}
+
+(list of all ressources for this module).
+
+\item Add the new \Mkin files in the global list of .in files.
+
+In the root directory of the source tree, execute the {\tt reconfigure}
+script or manually :
+
+\begin{enumerate}
+\item edit the configure.in file in the source tree root,
+add \Mkin files into the {\tt AC\_OUTPUT} list,
+\item from the source tree root directory, run the {\tt genconf} script which launch {\tt aclocal} and {\tt autoconf}.
+\end{enumerate}
+
+\end{enumerate}
+
+Figure \ref{srctree_module} summarize these changes.
+
+\begin{figure}[h]
+\ifpdf
+ \includegraphics{@srcdir@/srctree_module.pdf}
+\else
+ \includegraphics{@srcdir@/srctree_module.eps}
+\fi
+\caption{\label{srctree_module} Source tree : modification when adding an new module}
+
+\end{figure}
+
+\section{\label{sec_unit}Development unit creation}
+
+Here we want to add a development unit named {\tt <Unit>}
+in the existing module {\tt <Module>} (replace the names {\tt <Unit>}
+and {\tt <Module>} with real ones).
+
+\begin{enumerate}
+
+\item In the {\tt src} subdirectory of {\tt <Module>}, create a
+subdirectory named {\tt <Unit>}~:
+
+\begin{verbatim}
+cd <path to <Module> >/src
+mkdir <Unit>
+\end{verbatim}
+
+Modify then \Mkin file in the {\tt src} directory to add
+the new unit
+to the compilation process~:
+
+Complete the line beginning with
+\begin{verbatim}
+SUBDIRS = ...
+\end{verbatim}
+
+with the name of the new directory
+
+\begin{verbatim}
+SUBDIRS = ... <Unit>
+\end{verbatim}
+
+\item Create a \Mkin file in the new {\tt <Unit>} directory (you can copy a \Mkin file from the corresponding subdirectory in {\tt GEOM} module : {\tt GEOM/src/GEOMGUI} subdirectory for example, and modify as you need)
+
+
+\begin{verbatim}
+cd <Unit>
+... create Makefile.in
+\end{verbatim}
+
+The details of \Mkin creation is detailed in the next section.
+\end{enumerate}
+
+
+The different files of your unit must be located in several directories
+(see figure \ref{srctree_unit} and the list below).
+
+\begin{figure}[!h]
+\ifpdf
+ \includegraphics{@srcdir@/srctree_unit.pdf}
+\else
+ \includegraphics{@srcdir@/srctree_unit.eps}
+\fi
+\caption{\label{srctree_unit}Source tree : modification when adding an new unit in an existing module}
+\end{figure}
+
+\begin{itemize}
+\item Private source and header files of your unit
+
+Place the only copy of these files in your unit. If you use
+the proposed makefile system, dont put them in subdirectories
+of your unit.
+
+Note
+\begin{quotation}\noindent%
+Using a non-flat directory structure for an unit, has not been
+tested but it should work. You must write your makefile to take care
+of subdirectories.
+\end{quotation}
+
+\item Exported idl files from a unit
+
+These files are provided by the unit for CORBA communication
+with other units.
+
+Place the only copy of these files into the idl subdirectory of the
+root source tree.
+
+\item Exported header files from a unit
+
+These files are provided by the unit for direct communication
+from other units (using the unit's library).
+
+Place the master copy of these files in your unit subtree.
+
+Assure that these files are automatically or manually copied in
+the inc subdirectory of the root build tree.
+
+\end{itemize}
+
+\section{Creating a \Mkin file in a new unit}
+
+\subsection{Using predefined make rules}
+
+Copy the following \Mkin \ skeleton in the unit directory~:
+
+\verbatiminput{@srcdir@/makefile.skel}
+
+Adapt this \Mkin skeleton to your particular needs~:
+\begin{itemize}
+\item if you have to compile a library
+
+\begin{enumerate}
+\item Complete the line
+\begin{verbatim}
+LIB =
+\end{verbatim}
+
+as
+\begin{verbatim}
+LIB = lib<MyLibrary>.la
+\end{verbatim}
+
+Example~:
+\begin{verbatim}
+LIB = libGeometryGui.la
+\end{verbatim}
+
+Notes
+\begin{enumerate}
+\item the library name {\bf must} begin with {\tt lib} and end with
+{\tt .la} (this allows automatic creation of shared libraries with libtool).
+\item there must be only one library by development unit
+\end{enumerate}
+
+\item Also add to the line~:
+\begin{verbatim}
+LIB_SRC =
+\end{verbatim}
+the list of sources files (in this unit) needed to build the library
+
+\item If your library uses QT MOC file, add to the line~:
+\begin{verbatim}
+LIB_MOC =
+\end{verbatim}
+the list of headers files to transform with moc.
+
+\item If your library uses CORBA functionnalities from other units (i.e.
+uses idl files exported from other units), add to the line~:
+\begin{verbatim}
+LIB_CLIENT_IDL =
+\end{verbatim}
+the list of idl files.
+
+\item If your unit provides CORBA functionnalities (i.e. exports idl
+files to the other units), add to the line~:
+\begin{verbatim}
+LIB_SERVER_IDL =
+\end{verbatim}
+the list of idl files.
+\end{enumerate}
+
+\item if you want to build one or more executables~:
+
+\begin{enumerate}
+\item Complete the line
+\begin{verbatim}
+BIN =
+\end{verbatim}
+
+as
+\begin{verbatim}
+BIN = <MyBin1> <MyBin2> ..
+.
+\end{verbatim}
+
+Note
+\begin{quotation}\noindent%
+For each executable in the {\tt BIN} list, say {\tt MyBin1}, the main
+function {\bf must} be in a file named accordingly, in this example~:
+{\tt MyBin1.cxx} and {\tt MyBin2.cxx}.
+\end{quotation}
+
+\item Also add to the line~:
+\begin{verbatim}
+BIN_SRC =
+\end{verbatim}
+the list of source files (in this unit) needed to build {\bf all} the executables,
+{\bf excluding files containing main function(s)}.
+
+Notes~:
+\begin{enumerate}
+\item The makefile system will automatically add to each executable, its
+main function file. That's why these files must not be included in the
+{\tt BIN\_SRC} list
+\item The object files (compiled from the source files in the {\tt BIN\_SRC}
+list) will be properly dispatched between the executables by the linker.
+\end{enumerate}
+
+\item If your binaries uses QT MOC file, add to the line~:
+\begin{verbatim}
+BIN_MOC =
+\end{verbatim}
+the list of headers files to transform with moc.
+
+\item If your binaries uses CORBA functionnalities from other units (i.e.
+uses idl files exported from other units), add to the line~:
+\begin{verbatim}
+BIN_CLIENT_IDL =
+\end{verbatim}
+the list of idl files.
+
+\item If your unit provides CORBA functionnalities (i.e. exports idl
+files to the other units), add to the line~:
+\begin{verbatim}
+BIN_SERVER_IDL =
+\end{verbatim}
+the list of idl files.
+
+\end{enumerate}
+
+\item List the exported header files that your unit provides
+to other developments units~:
+
+Complete the line
+\begin{verbatim}
+EXPORT_HEADERS =
+\end{verbatim}
+with the list header files.
+
+Note
+\begin{quotation}\noindent%
+The makefile system will automatically copy these files in a
+subdirectory {\tt inc} in the top build directory, and maintain
+coherence with your private copy inside your unit subtree.
+This is to assure name uniqueness of differents exported header
+files from different units and to write easier makefiles.
+\end{quotation}
+
+\item List the python scripts files that your unit export~:
+
+Complete the line
+\begin{verbatim}
+EXPORT_PYSCRIPTS =
+\end{verbatim}
+
+\item To generate qm file from po file (use by QT), list po files in~:
+
+\begin{verbatim}
+PO_FILES =
+\end{verbatim}
+Note
+\begin{quotation}\noindent%
+The resulting qm files will ge generated directory which contain Makefile.
+It will be copied in resources directory when do {\tt 'make install'}.
+\end{quotation}
+
+\end{itemize}
+
+
+\subsection{Using your own makefiles in an unit}
+
+If the proposed makefile system don't suit your needs (several libraries,
+non flat unit subtree structure, ...). It's possible
+to write your own makefiles.
+
+\begin{enumerate}
+\item Create a file \Mkin
+
+This file must begin with the lines
+
+\verbatiminput{@srcdir@/makefile_own.skel}
+
+\bigskip
+
+The rest of the file has the standard GNU make format.
+
+You must define the following targets~:
+
+\begin{enumerate}
+\item {\tt inc} : copy/update the exported header files to the {\tt \$top\_builddir/inc} directory
+\item {\tt dep} : update dependencies
+\item {\tt lib} : build libraries and link them into the {\tt \$top\_builddir/lib} directory
+\item {\tt bin} : build executables and link them into the {\tt \$top\_builddir/bin} directory
+\end{enumerate}
+
+Some of these targets may be empty, if not applicable.
+
+\end{enumerate}
+
+The line
+\begin{verbatim}
+@\texttt{COMMENCE}@
+\end{verbatim}
+provides a number of predefined variables that you can use in your makefile
+rules (defining standard libraries locations, compiler options, ..., see next section).
+
+
+\section{Add or remove a script}
+
+If you want to add a new shell script in {\tt SALOME\_ROOT/bin}, you must edit {\tt SALOME\_ROOT/Makefile.in} to add it in {\tt BIN\_SCRIPT}.
+
+If this script have some package dependent variable, you must create a ".in" file and add this reference to {\tt configure.in} file.
+
+To remove an existing script, you must of course remove it from CVS archive and also remove it from {\tt SALOME\_ROOT/Makefile.in} and if any, from {\tt configure.in}.
+
+If you want to add a new python script, put it in {\tt EXPORT\_PYSCRIPTS} variable. It will be copied at same place than others executables.
+
+
+\section{Add or remove an IDL file}
+
+If you want to add a new IDL file in {\tt SALOME\_ROOT/idl}, you must edit {\tt SALOME\_ROOT/idl/Makefile.in} and add its in {\tt IDL\_FILES}.
+
+To remove an existing IDL file, you must of course remove it from CVS archive and also remove it from {\tt SALOME\_ROOT/idl/Makefile.in}.
+
+
+\section{Predefined symbols used in {\tt Makefile.in}}
+
+You can use predefined symbols in you {\tt Makefile.in} files.
+These symbols define
+\begin{itemize}
+\item compilation flags for source compiling,
+\item header files location in your local system,
+\item libraries needed for binaries linking.
+\end{itemize}
+
+For example to use the OpenCascade libraries in your unit, you will add the
+\begin{itemize}
+\item {\tt \$OCC\_INCLUDES} symbol to the included header file locations,
+\item {\tt \$OCC\_CXXFLAGS} symbol to the compilation flags,
+\item {\tt \$OCC\_LIBS} symbol to the linker's flags
+\end{itemize}
+
+If you use the predefined make rules, add the lines
+\begin{verbatim}
+CPPFLAGS+=$(OCC_INCLUDES)
+CXXFLAGS+=$(OCC_CXXFLAGS)
+LDFLAGS+=$(OCC_LIBS)
+\end{verbatim}
+in your {\tt Makefile.in} file after the @{\tt COMMENCE}@ line.
+
+For each standard tool you need in SALOME (QT, python, OpenCascade, CORBA, VTK, \ldots), main symbols listed below.
+
+\begin{enumerate}
+\bigskip
+
+\item {\it Corba}
+\smallskip
+
+\begin{longtable}{|p{3.2cm}|p{9.1cm}|}
+\hline
+\it variable & \it value \\
+\hline
+{\tt CORBA\_ROOT } & CORBA home base \\
+\hline
+{\tt CORBA\_INCLUDES} & compiler options to include CORBA headers \\
+\hline
+{\tt CORBA\_LIBS } & libraries needed to link with CORBA \\
+\hline
+{\tt CORBA\_CXXFLAGS } & C++ compiler options to use with CORBA \\
+\hline
+{\tt IDL} & idl compiler \\
+\hline
+{\tt IDLCXXFLAGS} & options to the idl compiler to generate C++
+stub or skeleton code \\
+\hline
+{\tt IDLPYFLAGS} & options to the idl compiler to generate python
+stub or skeleton code \\
+\hline
+{\tt IDL\_CLN\_H} & extension of generated CORBA header files (client side) \\
+\hline
+{\tt IDL\_CLN\_CXX} & extension of generated CORBA source files (client side) \\
+\hline
+{\tt IDL\_CLN\_OBJ} & extension of generated CORBA object files (client side) \\
+\hline
+{\tt IDL\_SRV\_H} & extension of generated CORBA header files (server side) \\
+\hline
+{\tt IDL\_SRV\_CXX} & extension of generated CORBA source files (server side) \\
+\hline
+{\tt IDL\_SRV\_OBJ} & extension of generated CORBA object files (server side) \\
+\hline
+\end{longtable}
+
+\item {\it python}
+\smallskip
+
+\begin{longtable}{|p{3.2cm}|p{9.1cm}|}
+\hline
+\it variable & \it value \\
+\hline
+{\tt PYTHON} & python interpreter (absolute path to) \\
+\hline
+{\tt PYTHON\_VERSION} & python version \\
+\hline
+{\tt PYTHONHOME} & python home base (sometimes needed
+ to run python) \\
+\hline
+{\tt PYTHON\_INCLUDES} & compiler options to include python header files \\
+\hline
+{\tt PYTHON\_LIBS} & libraries needed to link with python \\
+\hline
+\end{longtable}
+
+\bigskip
+\item {\it QT}
+\smallskip
+
+\begin{longtable}{|p{3.2cm}|p{9.1cm}|}
+\hline
+\it variable & \it value \\
+\hline
+{\tt MOC} & moc compiler \\
+\hline
+{\tt UIC} & uic graphical compiler \\
+\hline
+{\tt QTDIR} & QT home base \\
+\hline
+{\tt QT\_ROOT} & QT home base \\
+\hline
+{\tt QT\_INCLUDES} & compiler options to include QT headers \\
+\hline
+{\tt QT\_MT\_INCLUDES} & same as above, for multithreaded applications \\
+\hline
+{\tt QT\_LIBS} & libraries needed to link with QT (single threaded) \\
+\hline
+{\tt QT\_MT\_LIBS} & same as above, for multithreaded applications \\
+\hline
+\end{longtable}
+
+For SALOME developments, multithreaded versions of qt options and libraries
+are needed.
+
+\bigskip
+\item {\it OpenGL}
+\smallskip
+
+\begin{longtable}{|p{3.2cm}|p{9.1cm}|}
+\hline
+\it variable & \it value \\
+\hline
+{\tt OGL\_INCLUDES} & compiler options to include OpenGL headers \\
+\hline
+{\tt OGL\_LIBS} & libraries needed to link with OpenGL \\
+\hline
+\end{longtable}
+
+\bigskip
+\item {\it VTK}
+\smallskip
+
+\begin{longtable}{|p{3.2cm}|p{9.1cm}|}
+\hline
+\it variable & \it value \\
+\hline
+{\tt VTK\_INCLUDES} & compiler options to include VTK headers \\
+\hline
+{\tt VTK\_LIBS} & libraries needed to link with VTK \\
+\hline
+\end{longtable}
+
+\bigskip
+\item {\it HDF (v5)}
+\smallskip
+
+\begin{longtable}{|p{3.2cm}|p{9.1cm}|}
+\hline
+\it variable & \it value \\
+\hline
+{\tt HDF5\_INCLUDES} & compiler options to include HDF headers \\
+\hline
+{\tt HDF5\_LIBS} & libraries needed to link with HDF \\
+\hline
+{\tt HDF5\_MT\_LIBS} & libraries needed to link with HDF
+ (multithreaded version) \\
+\hline
+\end{longtable}
+
+\bigskip
+\item {\it OpenCascade}
+\smallskip
+
+\begin{longtable}{|p{3.2cm}|p{9.1cm}|}
+\hline
+\it variable & \it value \\
+\hline
+{\tt OCC\_INCLUDES} & compiler options to include OpenCascade headers \\
+\hline
+{\tt OCC\_LIBS} & libraries needed to link with OpenCascade \\
+\hline
+{\tt OCC\_CXXFLAGS} & C++ compiler options to use with OpenCascade \\
+\hline
+\end{longtable}
+
+\end{enumerate}
+
+\section{Location of generated files in the build tree}
+
+A partial view of the build tree shows the location of files generated
+during the compilation process.
+
+\begin{figure}[h]
+\ifpdf
+ \includegraphics{@srcdir@/bldtree.pdf}
+\else
+ \includegraphics{@srcdir@/bldtree.eps}
+\fi
+\caption{Partial view of the build tree : generated files during compilation}
+\end{figure}
+
+\section{What's matter when launch {\tt make install}}
+
+When all libraries and binaries files are generated, make copies all identified files as {\tt configure} parameters {\tt --prefix}, {\tt bindir}, {\tt datadir}, ... (see {\tt configure --help} for details).
+
+If you specify nothing, all are installed in {\tt <prefix>=/usr/local}.
+
+All executables (binaries and scripts) are placed in {\tt <prefix>/bin} (see BIN and BIN\_SCRIPT variables in {\tt Makefile}).
+
+All libraries are placed in {\tt <prefix>/lib} (see LIB variable in {\tt Makefile}).
+
+All includes are placed in {\tt <prefix>/include} (see EXPORT\_HEADERS variable in {\tt Makefile}).
+
+All idls are placed in {\tt <prefix>/idl} (see IDL\_FILES variable in {\tt Makefile}).
+
+All python srcipts are placed in {\tt <prefix>/lib/pythonX.X/...} (see {\tt EXPORT\_PYSCRIPTS} variable in {\tt Makefile}).
+
+All ressources files (icons, messages, configuration, ...) are placed in {\tt <prefix>/share/salome/ressources} (see RESOURCES\_FILES variable in {\tt Makefile}).
+
+
+\section{Creating source files according to SALOME building system}
+
+Building system use dependencies between files writing in Makefile rules. We use {\tt C} or {\tt C++} preprocessor to automatically generate this dependencies rules.
+
+There are some configuration and useful macro defined in header file {\tt SALOMEconfig.h}. \textbf{All files should be included this header !}
+You must include it ussing {\tt <>} delimiter because {\tt SALOMEconfig.h} must not appear in dependencies rules (see below \ref{include}).
+
+When a {\tt Makefile} is regenerate with {\tt config.status} script, all files are regenerates (in particular {\tt SALOMEconfig.h}).It is a restriction of {\tt autoconf 2.13} which could not regenerate only one particular file.
+So, all files which depend of {\tt SALOMEconfig.h} are rebuild even if it does not change. If you effectively change {\tt SALOMEconfig.h} file, you must clean all and rebuild.
+
+\subsection{{\tt C} or {\tt C++} source files}
+
+\textbf{You must name your {\tt C} file {\tt <myCFile>.c} and header file {\tt <myCHeaderFile>.h}}
+
+\textbf{You must name your {\tt C++} file {\tt <myC++File>.cxx} and header file {\tt <myC++HeaderFile>.hxx}}
+
+To have right dependencies rules, you must correctly write the include statement in your source files. We only take care about SALOME package header files to generate dependencies. We suppose that other header files (qt, vtk, OpenCascade, ...) are stables and are not modified when we build some SALOME modules.
+
+According to cpp documentation, local header files must be included with {\tt ""} statement and system or tools headers files must be included with {\tt <>} statement.
+\label{include}
+
+If you do not respect this notation, dependencies would not be true and some rebuilding trouble can appear~ !
+
+\subsection{idl files}
+
+We use {\tt C} preprocessor to build dependencies between idl files. The same convention must be applied as {\tt C} or {\tt C++} source files.
+
+If included file is an external files, you must use statement {\tt <>} because this file will not be modified during SALOME devloppement and/or building.
+If included file is part of SALOME files, you must use statement {\tt ""}.
+
+If you do not respect this notation, dependencies would not be true and some building or rebuilding trouble can appear~ !
+
+\subsection{Included header file generated from idl file}
+
+To include header file generated from idl file, you must use macro {\tt CORBA\_CLIENT\_HEADER} or \\
+{\tt CORBA\_SERVER\_HEADER} defined in {\tt SALOMEconfig.h}.
+
+These two macros replace idl prefix into corresponding header name generated (take care if you use client part or server part)
+
+{\bf Example :}
+\begin{verbatim}
+#include CORBA_CLIENT_HEADER(geom)
+#include CORBA_SERVER_HEADER(mesh)
+\end{verbatim}
+
+
+\end{document}
--- /dev/null
+# Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+#
+# This library is free software; you can redistribute it and/or
+# modify it under the terms of the GNU Lesser General Public
+# License as published by the Free Software Foundation; either
+# version 2.1 of the License.
+#
+# This library is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this library; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+#
+# See http://www.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org
+#
+#
+#
+# File : Makefile.in
+# Author : Patrick GOLDBRONN (CEA)
+# Module : doc
+# $Header$
+
+top_srcdir=@top_srcdir@
+top_builddir=../../..
+srcdir=@srcdir@
+VPATH=.:@srcdir@
+
+
+TEX=DevelopersGuide.tex
+TEX_PS=$(TEX:%.tex=%.ps)
+TEX_PDF=$(TEX:%.tex=%.pdf)
+
+.SUFFIXES: .tex .dvi .ps .pdf
+
+docs: $(TEX_PS) clean $(TEX_PDF) clean
+
+clean:
+ \rm -f *~ *.bak *.aux *.log *.dvi *.toc $(TEX:%.tex=%.out)
+ \rm -f dummy thumb*
+
+distclean: clean
+ \rm -f $(TEX_PS) $(TEX_PDF)
+
+install:
+
+#implicits rules
+.tex.dvi: clean
+ latex $<
+ latex $<
+.dvi.ps:
+ dvips $< -o $@
+
+
+.tex.pdf: clean
+ pdflatex $<
+ pdflatex $<
+
--- /dev/null
+%!PS-Adobe-2.0 EPSF-2.0
+%%Title: /home/tajchman/superv/GRAPHIQUES/SALOME.ps
+%%Creator: XV Version 3.10a Rev: 12/29/94 (PNG patch 1.2) - by John Bradley
+%%BoundingBox: 131 321 481 471
+%%Pages: 1
+%%DocumentFonts:
+%%EndComments
+%%EndProlog
+
+%%Page: 1 1
+
+% remember original state
+/origstate save def
+
+% build a temporary dictionary
+20 dict begin
+
+% define string to hold a scanline's worth of data
+/pix 1050 string def
+
+% define space for color conversions
+/grays 350 string def % space for gray scale line
+/npixls 0 def
+/rgbindx 0 def
+
+% lower left corner
+131 321 translate
+
+% size of image (on paper, in 1/72inch coords)
+349.99200 149.97600 scale
+
+% define 'colorimage' if it isn't defined
+% ('colortogray' and 'mergeprocs' come from xwd2ps
+% via xgrab)
+/colorimage where % do we know about 'colorimage'?
+ { pop } % yes: pop off the 'dict' returned
+ { % no: define one
+ /colortogray { % define an RGB->I function
+ /rgbdata exch store % call input 'rgbdata'
+ rgbdata length 3 idiv
+ /npixls exch store
+ /rgbindx 0 store
+ 0 1 npixls 1 sub {
+ grays exch
+ rgbdata rgbindx get 20 mul % Red
+ rgbdata rgbindx 1 add get 32 mul % Green
+ rgbdata rgbindx 2 add get 12 mul % Blue
+ add add 64 idiv % I = .5G + .31R + .18B
+ put
+ /rgbindx rgbindx 3 add store
+ } for
+ grays 0 npixls getinterval
+ } bind def
+
+ % Utility procedure for colorimage operator.
+ % This procedure takes two procedures off the
+ % stack and merges them into a single procedure.
+
+ /mergeprocs { % def
+ dup length
+ 3 -1 roll
+ dup
+ length
+ dup
+ 5 1 roll
+ 3 -1 roll
+ add
+ array cvx
+ dup
+ 3 -1 roll
+ 0 exch
+ putinterval
+ dup
+ 4 2 roll
+ putinterval
+ } bind def
+
+ /colorimage { % def
+ pop pop % remove 'false 3' operands
+ {colortogray} mergeprocs
+ image
+ } bind def
+ } ifelse % end of 'false' case
+
+
+
+350 150 8 % dimensions of data
+[350 0 0 -150 0 150] % mapping matrix
+{currentfile pix readhexstring pop}
+false 3 colorimage
+
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfdfdfdfdfdfdfdfdfdfdfd
+fefdfdfefdfefefdfefefdfefefdfefefdfefefdfefefdfefefdfefefdfefefdfefefdfe
+fefdfefefdfefefdfefefdfefefdfefefdfefefdfefefdfefefdfefdfdfdfdfdfdfdfdfd
+fdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfd
+fdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfd
+fdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfefdfefefdfe
+fefdfefefdfefefdfefefdfefefdfefefdfefefdfefefdfefefdfefefdfefefdfefefdfe
+fefdfefefdfefefdfefefdfefefdfefefdfefefdfefefdfefefdfefefdfefefdfefefdfe
+fefdfefefdfefefdfefefdfefefdfefefdfefefdfefefdfefefdfefefdfefefdfefefdfe
+fefdfefefdfefefdfefefdfefefdfefefdfefefdfefefdfefefdfefefdfefefdfefefdfe
+fefdfefefdfefefdfefefdfefefdfefefdfefefdfefefdfefefdfefefdfefefdfefefdfe
+fefdfefefdfefefdfefefdfefefdfefefdfefefdfefefdfefefdfefefdfefefdfefefdfe
+fefdfefefdfefefdfefefdfefefdfefefdfefefdfefefdfefefdfefefdfefefdfefefdfe
+fdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfefdfefefefefefefefefefefefefe
+fffefeffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffffefefefefefefefefe
+fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+fefefefefefefefefefefefefefefefefefefefefefefefefefefeffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fefefefefefefefefefefefefefefefdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfdfdfefdfefefdfefefdfefefdfe
+fefefeffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffefefefefefefefefefefefefefdfd
+fefdfdfefdfdfefdfdfefdfdfefdfdfefdfdfefdfdfefdfdfefdfdfefdfdfefdfdfefdfd
+fefdfdfefdfdfefdfdfefdfdfefdfdfefdfdfefdfdfefdfdfefdfdfefdfdfefdfdfefdfd
+fefdfdfefdfdfefdfdfefdfdfefdfdfefdfdfefdfdfefdfdfdfdfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefdfeffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffefefefefefefefefefefefefefefefefefe
+fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+fefefefefefefefefefefefefefefefefefefefefefefefefefefefefdfefdfdfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefefeffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffefefefefefefefefefefefefefefefefefefefefe
+fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefdfe
+fefdfefefdfefefdfefefdfefefdfefefdfefefdfefefdfefdfdfdfdfdfdfefdfefdfdfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefefeffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffefefefefefefefefefefefefefefefefefefefefefefefefefefe
+fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+fefdfefdfdfefdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefefeffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffefefeffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+fefefefefefefefefefefefefefefefefefefefefefefefefefefeffffffffffffffffff
+fefefefefefefdfdfdfdfdfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefefeffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffefefefefefeffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffefefe
+fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefdfdfd
+fdfdfdfdfdfdfdfdfdfdfdfdfefefefefefefefefefefefefefefefefefefefefefefefe
+fefefefefefefefefefefefefefefefefefeffffffffffffffffffffffffffffffffffff
+fffffffefefefefefefefefefefefefefdfdfefdfdfefdfdfefdfdfefdfdfdfdfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefefeffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffefefefefefefefefefefefeffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffefefe
+fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+fefefefefefefefefefdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfd
+fdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfefefefefefefefefe
+fefefefefefefefefefefefefefefefefefeffffffffffffffffffffffffffffffffffff
+fefefefefefefefefefdfefefefefefefefefefefefefefefefefefefefefdfdfdfdfdfd
+fdfdfdfdfcfcfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefefeffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fefefeffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffefefefefefefefefefefefefefefefefefeffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffefefefefefe
+fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefdfdfd
+fdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfd
+fdfdfdfdfdfdfcfcfcfcfcfcfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfefefe
+fefefefefefefefefefefefefefefefefefefffffffffffffffffffefefefefefefefefe
+fefefefefefefcfcfcfdfdfdfdfdfdfdfefefdfcfcfdfdfdfcfdfdfcfdfdfdfdfdfdfdfd
+fdfdfdfdfdfdfcfcfcfcfcfcfcfcfcfdfdfdfdfdfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefefeffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffffbfcfdf4f6fbeef1f8
+e9edf6e5eaf4e4eaf4e2e8f4e0e7f2e3e9f4e4eaf4e5ebf5eaeef6eff2f9f9fafcfefeff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffefefe
+fefefefefefefefefefffffffffffffffffffffffffffffffffffffffffffffffffefefe
+fefefefefefefffffffffffffefefffafafdfdfefeffffffffffffffffffffffffffffff
+fffffffffffffffffffefefefefefefefefefefefefefefefefefeffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffefefefefefefefefefefefefefefe
+fefefeffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffefefff8f9fceff2f9e8ecf5e3e9f3dfe6f2
+dfe6f1dfe6f1e0e7f2e4eaf3e8ecf5eff1f7f8f9fbfdfdfdfdfdfdfdfdfdfdfdfdfdfdfd
+fdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfcfcfcfcfcfcfdfdfd
+fdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfcfcfcfcfcfcfcfcfcfafafbf7f8faf6f7fa
+fbfbfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfdfdfd
+fdfdfdfefefefefefefefefefefefefefefefffffffffefefefdfcfdfdfcfdfcfbfcfcfb
+fcfcfbfdfdfcfcfcfbfcfcfbfcfcfcfcfcfbfcfcfbfcfcfbfdfdfdfdfdfdfcfcfcfcfcfc
+fcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfdfcfcfdfdfdfdfdfdfdfdfdfdfdfd
+fdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfd
+fdfdfdfdfdfdfdfdfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefefeffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffbfcfeecf0f8dbe3f1cad9eaadc6e08faed4779bca
+668dc35481bc5280bb4a79b84172b44c7bb95280bb5783bd678fc47fa1cea3bfdcc8d7e9
+dde4f2f2f5fafefeffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffefefe
+fefefefefefefefefefefefefefefefffffffffffffffffffffffffffffffbfcfdf1f3f9
+e7ecf5dee5f2d7dfefccdaebbbd1e5a7c1dec6d5e8ffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffefefefefefefefefefefefefefefefefefefefefefefefe
+fffffffffffffffffffffffffffffffffffff0f3f9dde4f1dae2f0dae2f0dae2f0dae2f0
+dae2f0dae2f0dae2f0dae2f0eaeef6fbfbfdfefefefefefefefefefefefefefefefefefe
+fefefefefefefefefefefefeffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffdfdfeeff2f9dae2f0c4d5e8a1bcdb7c9fcc628cc2517fba4172b3
+3f71b33f71b34476b55582bc668fc382a4cea7c1ddc7d6e8dbe2efeff2f7fbfbfbfcfcfc
+fcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfc
+fcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcf4f5f9dde3f0c8d7e8b3cae1a5bfdca4bfdb
+b6cde2c8d7e8d9e1eef0f3f8fcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfc
+fcfcfcfdfdfdfdfdfdfdfdfdfdfdfdfefefefefefefefefefefefefdfdfdfdfcfcfcfcfb
+fcfcfbfcfcfbfcfcfbfcfcfbfcfcfbfcfcfbfcfcfcfdfdfdf7f8fae1e7f2d7dfedd7dfed
+d7dfedd7dfedd7dfeddce2eff4f6f9fcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfc
+fcfcfcfcfcfcfbfcfceef0f7dee4f0d8e0eed7dfedd7dfedd7dfedd7dfedd7dfedd7dfed
+d7e0eed8e0eed8e0eed8e0eed8e0eed8e0eed8e0eed8e0eed8e0eed8e0eed8e0eed8e0ee
+d8e0eed8e0eed8e0eed8e0eed8e0eed8e0eed8e0eedce3f0f9f9fbfdfdfdfdfdfdfdfdfd
+fdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfdfdfdfdfdfdfdfdfdfdfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefefeffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffff8f9fcd6dfefaec5df7aa0cc4d7eba2165a90459a000579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e01589f2366aa
+5282bc8aadd3c8d5eaf8fafcffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffefefe
+fefefefefefefefefefefefefefefefefefefffffffffffffffffff1f4f9b9cbe487aad1
+6f97c75886be4376b52667ab0659a000579e2769abe9eef7ffffffffffffffffffffffff
+fffffffffffffffffffffffffefefefefefefefefefefefefefefefefefefefefefefefe
+fefefefefefeffffffffffffffffffffffff99b5d85281bc4a7cb84a7cb84a7cb84a7cb8
+4a7cb84a7cb84a7cb84d7db989a6d1e4e9f4fefefefefefefefefefefefefefefefefefe
+fefefefefefefefefefefefefefefeffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffbfcfde0e6f3b9cbe481a6cf4c7db91a62a701589f00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e02589f2266a95483bb88abd1bdcde4e1e7f2
+fafafbfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfc
+fcfcfcfcfcfcfcfcfcfcfcfcfcfcfceff2f7aabfdc5885bd2265aa0459a000579e00579e
+02589f2366a94e7fba8daed2dae1effcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfbfbfbfbfbfb
+fcfcfcfcfcfcfcfcfcfcfcfcfdfdfdfcfcfcfdfdfdfdfdfdfefefefefefefefefdfdfdfc
+fcfcfbfcfcfbfcfcfbfcfcfbfcfcfbfcfcfbfdfdfdf5f7fabacae3638ec2497bb7497bb7
+497bb7497bb7497bb75583bbb9c8e1f8f8fafcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfc
+fcfcfcfafafbd4deec8baad15a87bf4b7cb8497bb7497bb7497bb7497bb7497bb7497bb7
+497bb7497bb7497bb7497bb7497bb7497bb7497bb7497bb7497bb7497bb7497bb7497bb7
+497bb7497bb7497bb7497bb7497bb7497bb7497bb75383bce0e6f2fdfdfdfdfdfdfdfdfd
+fdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfd
+fefefefefefefefefefffffffefefefefdfefefdfefdfdfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefefeffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffd5deef95b4d64e82bb1861a600579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e01589f3a74b3c5d2e8ffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffefefe
+fefefefefefefefefefefefefefefefefefefefefefffffffcfcfebed0e62c6dae00579e
+00579e00579e00579e00579e00579e00579e03599f9db2d9ffffffffffffffffffffffff
+fffffffffffffffffffffffffefefefefefefefefefefefefefefefefefefefefefefefe
+fefefefefefefefefeffffffffffffffffff3a7bb301589e00579e00579e00579e00579e
+00579e00579e00579e00579e356eb0c7d3e8fefefefefefefefefefefefefefefefefefe
+fefefefefefefefefefefefefefefefefefeffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffefeff
+e3e9f4abc0dd5f8ec22567ab00579e00579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579e01589f2c6bad6694c4
+b0c2dee6eaf4fcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfc
+fcfcfcfcfcfcfcfcfcfcfcfcf9fafbc2d2e6296bac00579e00579e00579e00579e00579e
+00579e00579e00579e055aa0638fc2ebeef5fafafafafafafafafafafafafafafafafafa
+fafafafbfbfbfbfbfbfbfbfbfbfbfbfbfbfbfbfbfbfcfcfcfcfcfcfdfdfdfdfdfdfdfdfd
+fdfdfcfdfdfcfcfcfbfcfcfbfcfcfbfcfcfbfafafbcad6e93b76b300579e00579e00579e
+00579e00579e00579e00579e678cc2f0f3f7fcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfc
+fcfcfcdde3f06590c20d5da200579e00579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e1b62a7d6e0eefcfcfcfdfdfdfdfdfd
+fdfdfdfdfdfdfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfdfdfdfdfdfdfdfdfdfdfdfd
+fefefefefefefffffffffffffffffffffffffffffffffffffdfdfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefefeffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+f8f9fcb6c6e14f84bc0d5ca200579e00579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e88a2d0fffffffefefefefefefefefefefefefefefefefefefefefe
+fefefefefefefefefefefefefffffffffffffffffffffffffffffffffffffffffffefefe
+fefefefefefefefefefefefefefefefefefefefefefefefeecf0f77ca2cd01589f00579e
+00579e00579e00579e00579e00579e00579e01579e447ab7f2f4faffffffffffffffffff
+fffffffffffffffffffffffffefefefefefefefefefefefefefefefefefefefefefefefe
+fefefefefefefefefefefefefefefeffffff3177b000579e00579e00579e00579e00579e
+00579e00579e00579e00579e336cafc6d2e7fefefefefefefefefefefefefefefefefefe
+fefefefefefefefefefefefefefefefefefefefefefefefeffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffdfefebfcde5
+6292c32265a900579e00579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e
+2767ab6b98c6c5d1e6fafbfbfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfbfbfbfbfbfb
+fbfbfbfbfbfbfbfbfbfbfbfbf5f6f9a4beda00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e1161a4aabbdbf9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9
+f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9fafafafafafafbfbfbfcfcfcfdfdfd
+fdfdfdfdfdfdfdfdfcfcfcfcfcfcfcfbfbfbe9eef56892c301589f00579e00579e00579e
+00579e00579e00579e00579e5c84beeff2f7fcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfc
+fbfbfbb4c2df2e6eae00579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e638ac1f1f3f7fcfcfcfcfcfcfcfcfc
+fcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfdfdfdfefefefefefe
+fefefefefefefffffffffffffffffffffffffffffffffffffdfdfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefefeffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff5f7fb
+96b2d5306eae00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e819dcdfefefefefefefefefefefefefefefefefefefefefefefefe
+fefefefefefefefefefefefefefefefefefefffffffffffffffffffffffffffffffefefe
+fefefefefefefefefefefefefefefefefefefefefefdfdfecedbeb2e6fae00579e00579e
+00579e00579e00579e00579e00579e00579e00579e1061a5b7c5e3ffffffffffffffffff
+fffffffffffffffffffffffffefefefefefefefefefefefefefefefefefefefefefefefe
+fefefefefefefefefefefefefefefefefefe3177b000579e00579e00579e00579e00579e
+00579e00579e00579e00579e336cafc6d2e7fefefefefefefefefefefefefefefefefefe
+fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+fefefefefefefefefefefefefefefefffffffffffffffffffffffff5f6fba3b9da3875b2
+01589f00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e
+01579e0f5da40c5ca300579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e0359a0427ab5a4bbd9f1f3f7fbfbfbfbfbfbfbfbfbfbfbfbfbfbfbfafafafafafa
+fafafaf9f9f9f9f9f9fafafaf4f5f8a3bcda00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e0559a04c81b9e5e9f1f8f8f8f8f8f8f7f7f7f7f7f7f7f7f7
+f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f8f8f8f8f8f8f7f7f7f9f9f9fafafafbfbfb
+fbfbfbfcfcfcfcfcfcfcfcfcfcfcfcf8f9fa9bb3d7135fa400579e00579e00579e00579e
+00579e00579e00579e00579e5c84bdeef1f6fbfbfbfbfbfbfbfbfbfbfbfbfbfbfbfafafa
+fafafaadbddb296bac00579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e065aa1adc2def8f9fafbfbfbfbfbfbfbfbfb
+fbfbfbfbfbfbfbfbfbfbfbfbfbfbfbfcfcfcfcfcfcfcfcfcfcfcfcfdfdfdfefefefefefe
+fefefefefefefffffffffffffffffffffffffffffffffffffdfdfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefefeffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffdfefe9eb5d8
+2368aa01589e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e819dcdfefefefefefefefefefefefefefefefefefefefefefefefe
+fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+fefefefefefefefefefefefefefefefefefefefefef3f5fa8fadd30559a000579e00579e
+00579e00579e00579e00579e00579e00579e00579e055aa05a8abffcfcfeffffffffffff
+fffffffffffffffffffffffffefefefefefefefefefefefefefefefefefefefefefefefe
+fefefefefefefefefefefefefefefefefefe3177b000579e00579e00579e00579e00579e
+00579e00579e00579e00579e336cafc6d2e7fdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfd
+fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+fefefefefefefefefefefefefefefefefefefefefefefefef4f5fb8dacd22669ab01579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579e2266a95685bd7da3cc
+9bbcd7a8c2dca6c1db95b7d4769ec94b7eb81961a600579e00579e00579e00579e00579e
+00579e00579e03589f2a6cac92aed2eff1f6f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9
+f9f9f9f9f9f9f8f8f8f8f8f8f3f4f6a3bcd900579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e1964a7a4b6d7f7f7f7f7f7f7f6f6f6f6f6f6f6f6f6
+f6f6f6f6f6f6f6f6f6f5f5f5f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f7f7f7f8f8f8
+f9f9f9fafafafbfbfbfbfbfbfcfcfccdd8ea276bac00579e00579e00579e00579e00579e
+00579e00579e00579e00579e5c83bdeef1f6fafafafafafafafafaf9f9f9f9f9f9f9f9f8
+f8f8f7abbcda296bac00579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e01589f4c80badfe6f0fafafafafafafafafafafafa
+fafafafafafafafafafafafafafafafbfbfbfcfcfcfcfcfcfcfcfcfdfdfdfefefefefefe
+fffffffffffffffffffffffffffffffffffffffffffffffffdfdfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefefeffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc2cfe73573b1
+03589f00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e
+1a62a64c7db96a92c680a3ce86a9d186a9d184a7d07b9fcc6991c5517fbb2869ac075aa0
+00579e00579e00579e819dcdfefefefefefefefefefefefefefefefefefefefefefefefe
+fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+fefefefefefefefefefefefefefefefefefefefefee2eaf33b74b300579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e01579e236babc9d4e9ffffffffffff
+fffffffffffffffffffffffffefefefefefefefefefefefefefefefefefefefefefefefe
+fdfdfdfefefefefefefefefefefefefefefe3177b000579e00579e00579e00579e00579e
+00579e00579e00579e00579e336cafc5d1e6fcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfc
+fdfdfdfdfdfdfdfdfdfefefefefefefefefefefefefefefefefefefefefefefefefefefe
+fefefefefefefefefefefefefefefefefefefefefef8f9fc92aed32168a902589f00579e
+00579e00579e00579e00579e00579e00579e00579e1862a66794c4b6c9e1dae1efeceef5
+f9fafafafafafafafaf6f7f8e8ebf3d3dceba7bedb5486bb115ea300579e00579e00579e
+00579e00579e00579e03589f266aab94b0d2f4f5f7f9f9f9f9f9f9f9f9f9f9f9f9f8f8f8
+f8f8f8f8f8f8f8f8f8f7f7f7f2f3f5a2bcd800579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e0559a04c83b8e1e4eef5f5f5f5f5f5f5f5f5f5f5f5
+f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f6f6f6f6f6f6
+f6f6f6f7f7f7f9f9f9fafafaf3f4f75485bc00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e5c83bdedf0f5fafafaf9f9f9f9f9f9f8f8f8f8f8f8f7f7f7
+f6f6f5abbcda296bac00579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e0b5ca23871b1628cc17ca0cc91b0d49bb8d89bb8d89bb8d89bb7d7
+9ab7d69ab7d69ab7d69ab7d69ab7d6a1bdd8cfd9e9f5f5f7f9f9f8f9f9f8f9f9f8f9f9f8
+f9f9f8f9f9f9f9f9f9f9f9f9fafafafbfbfbfcfcfcfcfcfcfdfdfdfefefefefefefefefe
+fffffffffffffffffffffffffffffffffffffffffffffffffdfdfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefefeffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffff5f6fb5e91c1085ba1
+00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e2c6bad83a4cf
+c6d6e9dee6f2e8ecf6eff2f9f1f3faf1f3f9eff2f9ecf0f7e7ebf5dfe6f2d2deedb1c7e1
+7c9ecc4877b62b69acb0c0e0fefefefefefefefefefefefefefefefefefefefefefefefe
+fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+fefefefefefefefefefefefefefefefefefef9fafca5bbdc085aa100579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e0d5ea37b9dcafefefeffffff
+fffffffffffffffffffffffffefefefefefefefefefefefefefefefefefefefefefdfdfd
+fdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfd3077b000579e00579e00579e00579e00579e
+00579e00579e00579e00579e336cafc4d0e6fbfbfbfbfbfbfbfbfbfbfbfbfbfbfbfbfbfb
+fcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfd
+fefefefefefefefefefefefefefefefefefefefefeb5c4e13070af03589f00579e00579e
+00579e00579e00579e00579e00579e00579e296aac9ab4d6e3e9f3f8f9fbfbfbfbfafafa
+fafafaf9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f3f4f7dbe3ed85a3cd1c64a700579e00579e
+00579e00579e00579e00579e03589f3372afb3c3def8f8f8f7f7f7f7f7f7f7f7f7f7f7f7
+f7f7f7f7f7f7f7f7f7f7f7f7f2f2f5a2bcd800579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e1f67a8a0b3d5f4f4f4f4f4f4f4f4f4f4f4f4
+f4f4f4f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f4f4f4f4f4f4
+f5f5f5f5f5f5f6f6f6f7f7f79bafd40c5ca200579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e5c83bdeceff4f9f9f9f8f8f8f7f7f7f6f6f6f5f5f5f5f5f4
+f5f5f4aabbd9296bac00579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e2064a9698fc3afc4ded4deece2e7f1ebeef5f1f3f7f4f5f9f4f5f8f4f5f8f3f4f7
+f3f4f6f3f4f6f3f4f6f3f4f6f3f4f6f5f6f7f9f9f8f9f9f9f9f9f8f9f9f8f9f9f8f8f8f7
+f8f8f7f9f9f8faf9f9fafafafafafafbfbfbfcfcfcfdfdfdfdfdfdfefefefefefefefefe
+fffffffffffffffffffffffffffffffffffffffffffefefefdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefefeffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffc3d0e82f72af00579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579e457db8bfcfe6f2f5fa
+fdfdfefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefafbfc
+f0f3f9e6ebf4e1e9f2f4f6fafefefefefefefefefefefefefefefefefefefefefefefefe
+fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+fefefefefefefefefefefefefefefefefefef0f3f9537dba00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e01589e3777b2dce2f1fefefe
+fffffffffffffffffffffffffffffffefefefefefefefefefefefefefefefefefefefefe
+fdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfcfcfc3077b000579e00579e00579e00579e00579e
+00579e00579e00579e00579e336cafc3cfe4f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9
+fafafafafafafbfbfbfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfc
+fcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfce4e8f35389bd055aa000579e00579e00579e
+00579e00579e00579e00579e00579e2266a99bb3d6f1f4f8fcfcfcfbfbfbfafafaf9f9f9
+f9f9f9f9f9f9f9f9f9f9f9f9f8f8f8f8f8f8f8f8f8f7f7f8ebedf2819fcb1561a500579e
+00579e00579e00579e00579e00579e0559a0578bbddbe1edf7f7f7f7f7f7f7f7f7f7f7f7
+f6f6f6f6f6f6f6f6f6f5f5f5f0f1f3a1bbd800579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e04599f4d85b8dce0eaf3f3f3f3f3f3f3f3f3
+f2f2f2f2f2f2f1f1f1f1f1f1f2f2f2f2f2f2f2f2f2f2f2f2f1f1f1f1f1f1f2f2f2f2f2f2
+f3f3f3f4f4f4f5f5f5cad3e6226aaa00579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e5c83bdebeef3f8f8f8f6f6f6f5f5f5f5f5f4f4f4f4f4f4f4
+f4f4f3aabbd8296bac00579e00579e00579e00579e00579e00579e00579e00579e0559a0
+447db6b6c6e0e8ecf3f6f7f9fbfbfbfafafafbfbfbfbfbfbfbfafafbfbfbfafaf9fafaf9
+fafaf9fafaf9fafaf9fbfbfafbfbfafbfbfafbfbfafafafaf9f9f9f9f9f9f9f9f9fafaf9
+f9f9f8f9faf9fafbfafbfbfbfbfbfbfcfcfcfdfdfdfefefefefefefefefeffffffffffff
+fffffffffffffffffffefefefefefefefefefefefefffffffdfdfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefefeffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffff94abd41962a600579e
+00579e00579e00579e00579e00579e00579e00579e00579e306eafb7c8e3fbfcfdfefefe
+fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+fefefefefefefefefefefefefefefefdfdfec1cfe70559a000579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579e1a64a79ab0d7fefefe
+fefefefffffffffffffffffffffffffefefefefefefefefefefefefefefefefefefefefe
+fefefefdfdfdfdfdfdfdfdfdfcfcfcfcfcfc3077b000579e00579e00579e00579e00579e
+00579e00579e00579e00579e326caec2cee3f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8
+f8f8f8f8f8f8f9f9f9f9f9f9f9f9f9fafafafafafafbfbfbfcfcfcfcfcfcfcfcfcfcfcfc
+fcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcaebfde286cac00579e00579e00579e00579e
+00579e00579e00579e00579e01589f6193c2e7eaf4fbfbfbfafafafafafaf9f9f9f8f8f8
+f8f8f8f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7e4e7f0407db602589f
+00579e00579e00579e00579e00579e00579e286aaba9bad9f6f6f6f5f5f5f5f5f5f5f5f5
+f5f5f5f5f5f5f5f5f5f5f5f5eff0f3a0b9d600579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e2267a99fb2d4f1f1f1f0f0f0f0f0f0
+f0f0f0f1f1f1f0f0f0f0f0f0efefefefefefefefefefefeff0f0f0f0f0f0f0f0f0f1f1f1
+f1f1f1f2f2f2eaecef5183b90559a000579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e5b83bdeaedf2f5f5f5f5f5f5f3f3f3f2f2f2f2f2f2f2f2f2
+f3f3f3a9bad7296bab00579e00579e00579e00579e00579e00579e00579e075aa05487bc
+d7deecf5f6f7f9f9f9f9f9f9f9f9f9fafafafbfafafbfbfbfbfbfbfafaf9fafaf9fafaf9
+fafaf9fafaf9fbfbfafbfbfafbfbfafbfbfafbfbfafbfbfafafaf9fafaf9fafaf9fafaf9
+fafafafcfcfcfcfcfcfcfcfcfcfcfcfdfdfdfefefefefefefefefefefefeffffffffffff
+fffffffefefefefefefefefefefefefefefefffffffffffffdfdfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefefeffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffff6597c40559a000579e
+00579e00579e00579e00579e00579e00579e00579e01589e73a0caf2f3f9fefefefefefe
+fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+fefefefefefefefefefefefefefefefefefefdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfd
+fdfdfdfdfdfdfefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+fefefefefefefefefefefefefefefefafbfd5d86bf00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579e01579e4684b9ebeff7
+fefefefefefefefefefffffffffffffffffffffffffefefefefefefefefefefefefefefe
+fefefefefefefdfdfdfcfcfcfcfcfcfcfcfc3077b000579e00579e00579e00579e00579e
+00579e00579e00579e00579e326caec1cee2f7f7f7f7f7f7f7f7f7f6f6f6f7f7f7f7f7f7
+f6f6f6f6f6f6f7f7f7f7f7f7f8f8f8f8f8f8f8f8f8f9f9f9f9f9f9fafafafafafafafafa
+fbfbfbfbfbfbfbfbfbfbfbfbfbfbfbfafafb719ec7075aa000579e00579e00579e00579e
+00579e00579e00579e00579e2265a9a3b6d8fafafafafafaf9f9f9f9f9f9f8f8f8f7f7f7
+f7f7f7f6f6f6f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f6f6f6f6f6f6f6f6f68ca3ce1360a4
+00579e00579e00579e00579e00579e00579e01589f6d9cc5eeeff2f5f5f5f4f4f4f4f4f4
+f4f4f4f4f4f4f3f3f3f3f3f3edeef19fb9d500579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e4c84b7d5dae6efefefeeeeee
+eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeefefef
+efefefedeeef8aa2cb1260a400579e00579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e5b82bce8ebf0f4f4f4f2f2f2f0f0f0f0f0f0f0f0f0f0f0f0
+f0f0f0a8b8d6296aab00579e00579e00579e00579e00579e00579e03599f447fb6dde1ed
+f6f6f6f7f7f7f8f8f8f9f9f9f9f9f9f9f9f9f9f9f8fafaf9f9f9f8fafaf9fafaf9fafaf9
+fafaf9f9f9f9f9f9f9f9f9f9fafaf9f9f9f9f9f9f9f8f8f8fafaf9fafaf9fafaf9fafaf9
+fbfbfafcfcfcfcfcfcfcfcfcfdfdfdfefefefefefefefefefefefefefefefefefefefefe
+fefefefefefefefefefefefefefefefefefefffffffffffffdfdfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefefeffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffafbfd5790bf00579e00579e
+00579e00579e00579e00579e00579e00579e00579e1760a59ab6d7fefefefefefefefefe
+fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+fefefefefefefefefefefefefdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfd
+fdfdfdfdfdfdfdfdfdfdfdfdfefefefefefefefefefefefefefefefefefefefefefefefe
+fefefefefefefefefefefefefefefed7dff0065aa000579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e246aaba9bcdc
+fefefefefefefefefefefefefffffffffffffffffffefefefefefefefefefefefefefefe
+fefefefefefefdfdfdfcfcfcfcfcfcfcfcfc3077b000579e00579e00579e00579e00579e
+00579e00579e00579e00579e326caec1cde2f7f7f7f6f6f6f7f7f7f7f7f7f7f7f7f6f6f6
+f7f7f7f7f7f7f6f6f6f7f7f7f6f6f6f7f7f7f7f7f7f8f8f8f8f8f8f8f8f8f9f9f9f9f9f9
+f9f9f9fafafafafafafafafafafafae5e9f2548bbd00579e00579e00579e00579e00579e
+00579e00579e00579e00579e2b6cacafbfddfafafaf9f9f9f9f9f9f8f8f8f8f8f8f7f7f7
+f6f6f6f7f7f7f7f7f7f6f6f6f6f6f6f6f6f6f6f6f6f5f5f5f5f5f5f5f5f5a2b4d61864a6
+00579e00579e00579e00579e00579e00579e00579e568abcd9deeaf3f3f3f3f3f3f3f3f3
+f3f3f3f2f2f2f2f2f2f3f3f3ecedf09db7d400579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e2367a99cb1d1ececedeeeeee
+eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee
+ededeeb8c5dc266dab00579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e5b82bce6e9eef1f1f1f0f0f0efefefefefefefefefeeeeee
+eeeeeea7b7d5296aab00579e00579e00579e00579e00579e00579e1a65a7a2b4d6f5f5f5
+f5f5f5f6f6f6f7f7f7f8f8f8f9f8f8f9f8f8f8f8f7f8f8f7f8f8f8f8f8f8f8f8f8f8f8f8
+f8f8f8f8f8f8f8f8f8f8f8f7f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f9f9f9fafaf9fafaf9
+fcfcfcfcfcfcfcfcfcfdfdfdfefefefefefefefefefefefefefefefefefefefefefefefe
+fefefefefefefefefefefefefefefefffffffffffffffffffdfdfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefefeffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffff1f3fa518bbd00579e00579e
+00579e00579e00579e00579e00579e00579e00579e1f64a8a4badafefefefefefefefefe
+fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+fefefefefefefdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfcfcfcfcfcfcfcfcfcfcfcfc
+fcfcfcfcfcfcfcfcfcfdfdfdfdfdfdfdfdfdfdfdfdfefefefefefefefefefefefefefefe
+fefefefefefefefefefefefefdfdfd7395c800579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e075aa06595c4
+f2f4f9fefefefefefefefefefefefefffffffffffffffffffffffffefefefefefefefefe
+fefefefefefefdfdfdfcfcfcfcfcfcfcfcfc3077b000579e00579e00579e00579e00579e
+00579e00579e00579e00579e326caec0cce1f5f5f5f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6
+f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f7f7f7f6f6f6f6f6f6f7f7f7f7f7f7f7f7f7
+f7f7f7f7f7f7f8f8f8f8f8f8f8f8f8d8dfec4a84b900579e00579e00579e00579e00579e
+00579e00579e00579e00579e2b6cacaebedcf8f8f8f8f8f8f7f7f7f7f7f7f7f7f7f6f6f6
+f6f6f6f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5a1b3d51863a6
+00579e00579e00579e00579e00579e00579e00579e4b81b7cdd4e4f2f2f2f2f2f2f2f2f2
+f1f1f1f1f1f1f1f1f1f1f1f1e9eaee94b0d000579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e01589f578abbd3d9e3ececec
+ecececececececececececececececedededededededededeeeeeeeeeeeeeeeeeeeeeeee
+d8dce65485b9075aa000579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e5a82bae2e5eaededededededecececececececececececec
+edededa6b6d4296aab00579e00579e00579e00579e00579e00579e2970acd9dee9f4f4f4
+f4f4f4f5f5f5f6f6f5f6f6f5f6f6f5f6f6f5f5f5f5f5f5f5f5f4f4f5f4f4f5f5f5f5f5f5
+f5f5f5f5f5f5f5f5f4f5f5f4f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f6f6f5f8f8f7f9f9f9
+fbfbfbfcfcfcfcfcfcfdfdfdfefefefefefefefefefefefdfefefdfefefefefefefefefe
+fefefefefefefefefefefefefffffffffffffffffffffffffdfdfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefdfefefefefefefefefefefefefe
+fefefefefefefefefefefefefefefefefefeffffffffffffffffff5e94c202589f00579e
+00579e00579e00579e00579e00579e00579e00579e085aa17ea6cdf4f6fafefefefefefe
+fefefefefefefefefefefefefefefefefefefefefefefefefefefefdfdfdfdfdfdfdfdfd
+fdfdfdfdfdfdfdfdfdfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfc
+fcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfdfdfdfdfdfdfdfdfdfefefe
+fefefefefefefefefefefefee1e6f21c66a800579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e3574b1
+bfcde5fefefefefefefefefefefefefefefefefefefffffffffffffefefefefefefefefe
+fefefefefefefdfdfdfcfcfcfcfcfcfcfcfc3077b000579e00579e00579e00579e00579e
+00579e00579e00579e00579e326caebfcce1f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5
+f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f6f6f6f6f6f6f6f6f6
+f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6d6ddeb4a83b900579e00579e00579e00579e00579e
+00579e00579e00579e00579e2b6cacadbddbf7f7f7f7f7f7f6f6f6f6f6f6f6f6f6f5f5f5
+f5f5f5f4f4f4f4f4f4f4f4f4f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3a0b2d51863a6
+00579e00579e00579e00579e00579e00579e00579e497fb7cad2e3f0f0f0f0f0f0efefef
+efefefefefefefefefeeeeeee4e6eb86a6cb00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579e2468a99db3d1e8e8ea
+ecececececececececedededededededededeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee5e7eb
+87a4ca1963a600579e00579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e5a81badfe2e7eaeaeae9e9e9e9e9e9e9e9e9e9e9e9eaeaea
+eaeaeaa4b4d2286aaa00579e00579e00579e00579e00579e00579e2d73ade9ebeef2f2f2
+f2f2f2f3f3f2f3f3f2f3f3f2f4f4f3f3f3f2f2f2f2f2f2f2f2f1f1f2f1f0f2f1f0f2f2f2
+f2f2f2f2f1f1f2f2f1f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f4f4f3f6f6f5f7f7f7
+f9f9f9fbfbfbfcfcfcfdfdfdfefefefefefefefefefdfdfcfdfdfcfefefefefefefefefe
+fefefefefefefffffffffffffffffffffffffffffffffffffdfdfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefdfefefefefefefefefefefefefe
+fefefefefefefefefefefefefefefefefefefefefefefefeffffff7ba1cb0e5da300579e
+00579e00579e00579e00579e00579e00579e00579e00579e3d79b5bdcde5f9fafcfefefe
+fefefefefefefefefefefefefefefefefefefefefefdfdfdfdfdfdfdfdfdfdfdfdfdfdfd
+fdfdfdfdfdfdfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfc
+fcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfdfdfdfdfdfdfdfdfd
+fdfdfdfdfdfdfdfdfdfdfdfd89a6d0075ba000579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e115ea4
+83a6cef5f7fafefefefefefefefefefefefefefefefefefefffffffefefefefefefefefe
+fefefefefefefdfdfdfcfcfcfcfcfcfcfcfc3077b000579e00579e00579e00579e00579e
+00579e00579e00579e00579e326caebecbe0f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3
+f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5
+f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5d5dcea4983b800579e00579e00579e00579e00579e
+00579e00579e00579e00579e2b6bacacbcdaf6f6f6f5f5f5f5f5f5f5f5f5f4f4f4f3f3f3
+f3f3f3f3f3f3f3f3f3f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f1f1f1a0b1d41863a6
+00579e00579e00579e00579e00579e00579e00579e497fb6c8d0e1efefefeeeeeeeeeeee
+eeeeeeeeeeeeedededededede2e4e986a5cb00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579e01589f5c8cbcd2d7e3
+ecececededededededededededededeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeecededb0c2d9
+3173ae00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e5980b8dcdee3e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7
+e8e8e8a3b3d02869aa00579e00579e00579e00579e00579e00579e256daacad1e2efefef
+f0f0eff0f0f0f1f1f0f1f1f0f1f1f0f0f0efefefeeefeeeeefeeeeefeeedefeeedf0efee
+f0efeeefeeedefeeedefeeedefeeedefeeedefeeeef0efeff0f0f0f1f1f0f3f3f3f4f4f4
+f6f6f6f9f9f9fbfbfbfcfcfcfdfdfdfefefefefefefefefefefefefefefefefefefefefe
+fefefefefefefffffffffffffffffffffffffffffffffffffdfdfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefdfefefefefefefefefefefefefe
+fefefefefefefefefefefefefefefefefefefefefefefefefefefeaabcdd2369ab00579e
+00579e00579e00579e00579e00579e00579e00579e00579e085aa15288bcbdcee5f5f7fa
+fefefefefefefefefefdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfcfcfcfcfcfc
+fcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfc
+fbfbfbfbfbfbfbfbfbfbfbfbfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfbfbfbfcfcfcfcfcfc
+fbfbfbfbfbfbfbfbfbe3e8f23775b202589f00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e
+4a82b9d2dbecfefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+fefefefefefefdfdfdfcfcfcfcfcfcfcfcfc3077b000579e00579e00579e00579e00579e
+00579e00579e00579e00579e326caebecadff2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2
+f2f2f2f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f4f4f4f4f4f4f4f4f4f4f4f4
+f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4d4dbe94983b800579e00579e00579e00579e00579e
+00579e00579e00579e00579e2a6bacabbcd9f4f4f4f4f4f4f4f4f4f3f3f3f3f3f3f2f2f2
+f2f2f2f3f3f3f2f2f2f2f2f2f1f1f1f1f1f1f1f1f1f0f0f0f0f0f0f0f0f09fb0d31763a6
+00579e00579e00579e00579e00579e00579e00579e497eb6c8cfe0eeeeeeedededededed
+edededececececececebebebe1e3e886a5ca00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e2166a8a0b6d2
+e9e9ebeeeeeeeeeeeeeeeeeeeeeeeeefefefefefefefefefefefefefefefd2d8e45d8bbc
+085aa000579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e5980b8dadde2e6e6e6e5e5e5e6e6e6e6e6e6e6e6e6e5e5e5
+e6e6e6a2b2cf2869aa00579e00579e00579e00579e00579e00579e1361a485a2c8e8e8ea
+ededeceeeeedededecededececececebebeaebeae9ebeae9ebeae9ebeae9ebeae9ecebea
+ecebeaebeae9ebeae9ebeae9ebeae9ebeaeaebeaeaecebebededecededeceeeeeef0f0f0
+f3f3f3f6f6f6f9f9f9fbfbfbfcfcfcfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfefefe
+fefefefefefefffffffffffffffffffffffffffffffffffffdfdfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefdfefefefefefefefefefefefefe
+fefefefefefefefefefefefefefefefefefefefefefefefefefefedee4f1447fb703589f
+00579e00579e00579e00579e00579e00579e00579e00579e00579e075aa03c7bb494afd4
+dae1f0fbfbfdfdfdfdfdfdfdfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfc
+fcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfbfbfbfbfbfbfbfbfbfbfbfbfafafafafafa
+fafafafafafafafafafafafafafafafbfbfbfbfbfbfbfbfbfbfbfbf9f9f9f9f9f9f9f9f9
+f9f9f9f9f9f9f9f9f99eb2d71160a400579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e
+1a64a79ab7d7f9fafcfdfdfdfefefefefefefefefefefefefefefefefefefefefefefefe
+fefefefefefefdfdfdfcfcfcfcfcfcfcfcfc3077b000579e00579e00579e00579e00579e
+00579e00579e00579e00579e326cadbdc9def1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f2f2f2
+f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2
+f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2d3dae84982b800579e00579e00579e00579e00579e
+00579e00579e00579e00579e2a6bacaabbd8f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f1f1f1
+f0f0f0f1f1f1f0f0f0efefefefefefefefefefefefefefefefefefefefef9fb0d31763a6
+00579e00579e00579e00579e00579e00579e00579e487eb5c6cedfecececebebebebebeb
+ebebebeaeaeae9e9e9e9e9e9dfe1e684a4c800579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e01589f5f8cbd
+d4dae5eeeeeeeeeeeeefefefefefeff0f0f0f0f0f0f0f0f0f0f0f0e4e6ec89a7cc1963a6
+00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e5880b7d8dbe0e3e3e3e3e3e3e3e3e3e4e4e4e4e4e4e3e3e3
+e3e3e3a0b1ce2869a900579e00579e00579e00579e00579e00579e03589f3472aeb1bfd7
+e8e9eaeaeae9e8e8e8e8e8e8e8e8e7e8e7e6e7e7e6e7e6e5e7e6e6e8e7e7e8e7e7e8e8e7
+e8e8e7e8e8e7e8e7e7e8e7e7e8e8e7e8e8e8e7e7e7e8e8e8e8e8e8e9e9e8eaeaeaebebeb
+eeeeeef2f2f2f5f5f5f7f7f7f9f9f9fafafafbfbfbfbfbfbfcfcfcfcfcfcfefefefefefe
+fefefefffffffffffffffffffffffffffffffffffffffffffdfdfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfd
+fdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfcfcfd94b0d51763a6
+00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e1c63a7
+4b84ba90abd2c6d1e8f6f7fafcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfc
+fcfcfcfbfbfbfbfbfbfbfbfbfbfbfbfbfbfbfafafafafafafafafafafafaf9f9f9f9f9f9
+f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f8f8f8f7f7f7f7f7f7
+f8f8f8f8f8f8e6e9f14b81b80559a000579e00579e00579e00579e00579e1863a65a89bd
+81a8cc739dc72d6fae05599f00579e00579e00579e00579e00579e00579e00579e00579e
+01589f6090c2dfe5f1fcfcfcfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfefefefefefefefefe
+fefefefefefefdfdfdfcfcfcfcfcfcfcfcfc3077b000579e00579e00579e00579e00579e
+00579e00579e00579e00579e326badbcc9ddf0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0
+f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2
+f2f2f2f1f1f1f1f1f1f1f1f1f1f1f1d2d8e74982b700579e00579e00579e00579e00579e
+00579e00579e00579e00579e2a6baba9bad7f1f1f1f1f1f1f0f0f0f0f0f0f0f0f0efefef
+eeeeeeefefefeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeedededededed9eafd21763a6
+00579e00579e00579e00579e00579e00579e00579e487eb5c5cddde9e9e9e9e9e9e9e9e9
+e8e8e8e8e8e8e7e7e7e7e7e7dde0e483a3c700579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e1c65a7
+a4bad4e9eaeceeeeeeefefefefefefefefeff0f0f0f0f0f0eeeeefb3c5db3373af00579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e587fb7d7dadee2e2e2e2e2e2e1e1e1e2e2e2e2e2e2e2e2e2
+e2e2e29fafcd2869a900579e00579e00579e00579e00579e00579e00579e095ba14479b3
+a7b8d2dddfe2e5e5e5e6e5e5e6e6e5e6e6e5e6e6e5e6e6e5e6e6e5e6e6e5e6e6e5e6e6e5
+e6e6e6e6e6e6e6e6e5e5e5e4e5e5e5e5e5e4e6e5e5e6e6e5e5e5e5e5e5e5e5e5e5e6e6e6
+e8e8e8ecececefefeff2f2f2f4f4f4f7f7f7f8f8f8fafafafcfcfcfdfdfdfefefeffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffdfdfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfd
+fdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfde7ebf4678fc3
+0a5ca100579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e1961a63676b25b90c09bb1d6cad3e9f1f3f8fcfcfcfcfcfcfcfcfcfbfbfbfbfbfb
+fbfbfbfbfbfbfafafafafafafafafaf9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9
+f9f9f9f8f8f8f8f8f8f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7
+f7f7f7f6f6f6acbcda1d67a800579e00579e00579e00579e00579e0b5ca2628fc0d6dde9
+eceef2e4e8ef93add21e67a800579e00579e00579e00579e00579e00579e00579e00579e
+00579e276bacb3c7e0fbfcfcfcfcfcfcfcfcfcfcfcfdfdfdfdfdfdfdfdfdfdfdfdfdfdfd
+fdfdfdfdfdfdfdfdfdfcfcfcfcfcfcfcfcfc3077b000579e00579e00579e00579e00579e
+00579e00579e00579e00579e326badbcc9ddf0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0
+f0f0f0f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2
+f2f2f2f1f1f1f1f1f1f1f1f1f0f0f0d1d8e64882b700579e00579e00579e00579e00579e
+00579e00579e00579e00579e2a6baba8b8d6efefefefefefeeeeeeeeeeeeeeeeeeededed
+edededededededededededededededededededededecececebebebebebeb9caed01763a5
+00579e00579e00579e00579e00579e00579e00579e487db4c4cbdce7e7e7e7e7e7e7e7e7
+e7e7e7e6e6e6e6e6e6e6e6e6dcdee282a1c600579e00579e00579e00579e00579e00579e
+00579e00579e085ba15380b7789bc2628cbc1f63a600579e00579e00579e00579e01579e
+608abdd5dae4edededeeeeeeeeeeeeeeeeeeefefefefefefd1d8e55e8abd075aa000579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e587fb7d7dadee2e2e2e0e0e0e1e1e1e1e1e1e1e1e1e0e0e0
+e0e0e09eaecc2869a900579e00579e00579e00579e00579e00579e00579e00579e085aa0
+2c6eab7498c0bfc7d7dfe0e1e4e4e3e5e5e4e4e4e4e5e5e4e4e4e3e4e4e3e4e4e3e3e3e2
+e3e3e2e3e3e2e3e3e2e2e2e1e2e2e2e3e2e2e3e3e2e3e3e3e1e2e1e1e1e1e1e1e1e2e2e2
+e2e2e2e6e6e6e9e9e9edededf1f1f1f4f4f4f8f8f8fafafafcfcfcfefefeffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffdfdfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfd
+fcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcdce4f0
+5c87bf0559a000579e00579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e04599f1c65a82e72af4883b8799bc9a8b9dbd1d8ebf1f2f7fafafa
+fafafafafafaf9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f8f8f8f8f8f8f8f8f8f8f8f8
+f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f6f6f6f6f6f6f6f6f6
+f5f5f5ebedf1588bbd075aa000579e00579e00579e00579e00579e266baba9bbd9f4f4f4
+f4f4f4f4f4f4dfe3ec407db502589f00579e00579e00579e00579e00579e00579e00579e
+00579e0559a0789ecae9ecf5fcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfc
+fcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfc3077b000579e00579e00579e00579e00579e
+00579e00579e00579e00579e326badbcc9ddf0f0f0f0f0f0f0f0f0f0f0f0f1f1f1f0f0f0
+f1f1f1f1f1f1f2f2f2f2f2f2f2f2f2f2f2f2f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f2f2f2
+f2f2f2f2f2f2f2f2f2f1f1f1f0f0f0d1d7e64881b700579e00579e00579e00579e00579e
+00579e00579e00579e00579e2a6baba8b8d5eeeeeeededededededededededededececec
+ecececececececececebebebebebebebebebebebebebebebeaeaeaeaeaea9caed01763a5
+00579e00579e00579e00579e00579e00579e00579e477db4c3cadbe7e7e7e6e6e6e6e6e6
+e6e6e6e5e5e5e4e4e4e4e4e4dadce082a1c600579e00579e00579e00579e00579e00579e
+00579e00579e82a2c5c7cddad6d9dfcad0db789bc200579e00579e00579e00579e00579e
+1360a491abcde2e3e8ebebebedededededededededd5dbe56e93c2115fa300579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e5880b8d8dbe0e3e3e3e1e1e1e1e1e1e1e1e1e0e0e0e0e0e0
+e0e0e09eaecc2869a900579e00579e00579e00579e00579e00579e00579e00579e00579e
+01579e1160a32e71ac648cbb9aabccbec7d8d9dae0e3e3e3e3e3e3e3e2e1e2e3e3e1e2e1
+e0e1e0e1e1e1e1e0e0e0e0e0e0e0e0e0e0e0e1e0e0e0e0e0dfdfdfdededededededddddd
+dededee1e1e1e5e5e5eaeaeaf0f0f0f4f4f4f9f9f9fbfbfbfdfdfdfefefeffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffefdfefdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfd
+fcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfc
+e1e8f26b8fc400579e00579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e03589f0e5da31a65a7246dab417cb57899c9
+b4c2dfebeef4f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f7f7f7f7f7f7f7f7f7f7f7f7
+f7f7f7f7f7f7f7f7f7f7f7f7f6f6f6f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5
+f5f5f5bac6df2b6fad00579e00579e00579e00579e00579e02589f4581b6dfe3ebf2f2f2
+f3f3f3f3f3f3f2f3f387a3cc1360a400579e00579e00579e00579e00579e00579e00579e
+00579e00579e3f75b4cbd6e9fcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfc
+fcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfc3077b000579e00579e00579e00579e00579e
+00579e00579e00579e00579e326badbcc9ddf0f0f0f0f0f0f0f0f0f1f1f1f1f1f1f1f1f1
+f2f2f2f2f2f2f2f2f2f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f5f5f5f4f4f4f4f4f4f4f4f4
+f3f3f3f2f2f2f2f2f2f2f2f2f1f1f1d1d7e54881b700579e00579e00579e00579e00579e
+00579e00579e00579e00579e2a6baba7b7d4ecececebebebebebebebebebebebebeaeaea
+eaeaeaebebebeaeaeae9e9e9e9e9e9e9e9e9e9e9e9e8e8e8e8e8e8e8e8e89badcf1763a5
+00579e00579e00579e00579e00579e00579e00579e477db3c1c9d9e5e5e5e5e5e5e4e4e4
+e3e3e3e3e3e3e2e2e2e2e2e2d9dbdf82a1c600579e00579e00579e00579e00579e00579e
+00579e00579ec4ced8e0e0e0e0e0e0e0e0e0b6c2d3336cac00579e00579e00579e00579e
+00579e1764a56f90c0b1bdd6d2d6e1c7cfdf99adcf4b7db50f5ea300579e00579e00579e
+00579e00579e00579e5481b8acbfd7bccedd6d93c200579e00579e00579e00579e00579e
+00579e00579e00579e00579e5980b8d9dce1e4e4e4e3e3e3e2e2e2e2e2e2e1e1e1e0e0e0
+e1e1e19fb0cd2869a900579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e0b5ca11863a5216aa8276faa3074ac497db4497db3497db4497db3
+4f7fb46f8fbdaab6cfd6d7dcdedededededededededddddddcdcdcdadadadadadad9d9d9
+dbdbdbdfdfdfe5e5e5ecececf2f2f2f7f7f7fbfbfbfdfdfdfefefeffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffefefefdfdfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefdfefefefefefefefdfdfdfdfdfd
+fdfdfdfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfc
+fcfcfceef1f798b1d62365a900579e00579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e03589f0a5ca1
+1262a52b6fad7f9ccbd4dbebf7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f6f6f6
+f6f6f6f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5
+f2f2f36d98c30b5ca200579e00579e00579e00579e00579e1762a68fa8cef0f0f1f1f1f1
+f2f2f2f2f2f2f3f3f3cad3e5256dab00579e00579e00579e00579e00579e00579e00579e
+00579e00579e065aa093b2d4f2f4f8fbfbfbfbfbfbfbfbfbfbfbfbfcfcfcfcfcfcfcfcfc
+fcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfbfbfb3076b000579e00579e00579e00579e00579e
+00579e00579e00579e00579e326cadbdcadff2f2f2f2f2f2f3f3f3f3f3f3f3f3f3f3f3f3
+f4f4f4f4f4f4f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f6f6f6f6f6f6f6f6f6f6f6f6f5f5f5
+f6f6f6f4f4f4f3f3f3f3f3f3f2f2f2d1d7e64881b700579e00579e00579e00579e00579e
+00579e00579e00579e00579e2a6aaba6b5d2eaeaeae9e9e9e9e9e9e9e9e9e8e8e8e9e9e9
+e9e9e9e8e8e8e8e8e8e7e7e7e8e8e8e8e8e8e7e7e7e7e7e7e7e7e7e7e7e79bacce1763a5
+00579e00579e00579e00579e00579e00579e00579e477cb3c0c7d8e3e3e3e3e3e3e1e1e1
+e0e0e0e0e0e0e1e1e1e1e1e1d7d9de809fc400579e00579e00579e00579e00579e00579e
+00579e00579ec8d1d8dfdfdfdedededededed1d3da7296be00579e00579e00579e00579e
+00579e00579e0a5ba11261a41765a51564a50f5fa305599f00579e00579e00579e00579e
+00579e00579e4677b3c9d2dfe9eaebebededc9d5e200579e00579e00579e00579e00579e
+00579e00579e00579e00579e5980b8dbdee3e7e7e7e6e5e4e5e5e4e4e4e4e3e3e3e3e3e3
+e3e3e3a1b1ce2869aa00579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e01579e04599f04599f04599f04599f
+05599f095ba11863a57699bfced1d8dbdbdbdbdbdbd9d9d9d8d8d8d5d5d5d6d6d6d7d7d7
+dbdbdbe2e2e2eaeaeaf1f1f1f7f7f7fbfbfbfdfdfdffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffefefefdfdfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefdfefefefefefefefefefefefefe
+fefefefdfdfdfdfdfdfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfbfbfb
+fbfbfbfbfbfbf8f8fae0e5f07e9ccb2769ab065aa002589f00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e01579e04599f0b5ea37593c6d7ddebf3f4f5f6f6f6f5f5f5f5f5f5f5f5f5f5f5f5
+f5f5f5f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f3f3f3f3f3f3f3f3f3
+c2cce13876b100579e00579e00579e00579e00579e00579e2e72adced5e4f0f0f0f0f0f0
+f1f1f1f2f2f2f3f3f3f3f4f45e8abe075aa000579e00579e00579e00579e00579e00579e
+00579e00579e00579e4f7fbad7deedfafafafafafafafafafafafafafafafafafafafafa
+fafafafafafafafafafafafafafafafafafa3076b000579e00579e00579e00579e00579e
+00579e00579e00579e00579e326caebfcce0f4f4f4f4f4f4f5f5f5f5f5f5f5f5f5f5f5f5
+f5f5f5f5f5f5f6f6f6f6f6f6f7f7f7f7f7f7f7f7f7f8f8f8f8f8f8f8f8f8f8f8f8f7f7f7
+f6f6f6f6f6f6f5f5f5f5f5f5f3f3f3d2d9e74882b700579e00579e00579e00579e00579e
+00579e00579e00579e00579e296aaaa4b4d1e8e8e8e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7
+e7e7e7e7e7e7e7e7e7e7e7e7e6e6e6e7e7e7e6e6e6e6e6e6e5e5e5e5e5e59aaacc1762a5
+00579e00579e00579e00579e00579e00579e00579e467cb3bec6d6e1e1e1e0e0e0e0e0e0
+e0e0e0e0e0e0e0e0dfe0e0e0d6d8dd809fc300579e00579e00579e00579e00579e00579e
+00579e00579ec6cfd6dcdcdcdcdcdcdcdcdcdbdbdbacb9ce2e69aa00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e105da3a4bad3e6e7e8ebebebeaeaebbac8db00579e00579e00579e00579e00579e
+00579e00579e00579e00579e5980b9dde0e5e8e8e8e7e7e7e8e8e8e7e7e7e6e6e6e7e7e7
+e6e6e6a2b2cf2869aa00579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e3e73afb1bbced9d9d9d7d7d7d4d4d4d2d2d2d2d2d2d5d5d5dbdbdb
+e2e2e2eaeaeaf1f1f1f7f7f7fbfbfbfdfdfdffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffefefefdfdfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefefefefefefefefefefefefefefe
+fefefefefefefefefefdfdfdfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfbfbfbfbfbfb
+fbfbfbfafafafafafafafafaf9f9f9e5eaf2a4b6da5684bc1e69a91161a40c5da204599f
+00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e01579e1f67a99bb0d4eaecf1f4f4f4f4f4f4f4f4f4f4f4f4
+f3f3f3f3f3f3f3f3f3f3f3f3f2f2f2f2f2f2f3f3f3f2f2f2f2f2f2f2f2f2f2f2f2eeeff0
+82a2c9135fa400579e00579e00579e00579e00579e0c5ca27193c2eeeeeeefefefefefef
+f0f0f0f2f2f2f3f3f3f5f5f5b0bedc1562a500579e00579e00579e00579e00579e00579e
+00579e00579e00579e085ba2abc3ddf6f6f8fafafafafafaf9f9f9f9f9f9f9f9f9f9f9f9
+f9f9f9f9f9f9fafafafafafafafafafafafa3076b000579e00579e00579e00579e00579e
+00579e00579e00579e00579e326caec0cce1f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5
+f6f6f6f7f7f7f8f8f8f9f9f9f9f9f9f9f9f9fafafafafafafbfbfbfbfbfbfafafafafafa
+f8f8f8f8f8f8f6f6f6f5f5f5f4f4f4d3d9e74882b700579e00579e00579e00579e00579e
+00579e00579e00579e00579e296aaaa4b4d0e6e6e6e6e6e6e6e6e6e6e6e6e7e7e7e6e6e6
+e7e7e7e6e6e6e6e6e6e6e6e6e5e5e5e5e5e5e4e4e4e4e4e4e3e3e3e3e3e399aacc1762a5
+00579e00579e00579e00579e00579e00579e00579e467cb2bec5d6e0e0e0e0e0e0e0e0e0
+dfdfdfdfdfdfdfdfdfdfdfdfd6d8dc809fc300579e00579e00579e00579e00579e00579e
+00579e00579ec5ced5d9dadadbdbdbdadadad9d9d9c9ccd5658db903589f00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e
+05599f6e93bfd3d7dfe6e6e6e7e7e7e5e6e6b3c2d700579e00579e00579e00579e00579e
+00579e00579e00579e00579e5981b9dee1e6eaeaeaeaeaeae9e9e9e9e9e9e8e8e8e8e8e8
+e8e8e8a2b3d02869aa00579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e00579e065aa05280b4b9c0ced4d4d4d2d2d2d0d0d0d0d0d0d4d4d4dbdbdbe4e4e4
+ecececf3f3f3f9f9f9fcfcfcfefefeffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffefefefdfdfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefefefffffffffffffffffffefefe
+fefefefefefefefefefefefefdfdfdfdfdfdfcfcfcfcfcfcfcfcfcfcfcfcfbfbfbfbfbfb
+fafafaf9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f7f8f8dee3efaebedd839dcc4d82b9
+2d73af226baa1864a70d5ca200579e00579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e1360a47b9ac7e0e4ebf2f2f2f2f2f2f3f3f3
+f3f3f3f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f1f1f1f1f1f1f0f0f0f0f0f0f0f0f0ccd3e3
+467fb600579e00579e00579e00579e00579e00579e1c66a7b5c0daeeeeeeeeeeeeefefef
+f0f0f0f1f1f1f3f3f3f5f5f5ebedf23475b001589e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e628cc1e3e8f0f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9
+f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f93076af00579e00579e00579e00579e00579e
+00579e00579e00579e00579e326caec1cde2f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6
+f7f7f7f8f8f8f9f9f9fafafafafafafbfbfbfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfc
+fafafaf8f8f8f7f7f7f5f5f5f4f4f4d3d9e74882b700579e00579e00579e00579e00579e
+00579e00579e00579e00579e296aaaa3b3d0e5e5e5e5e5e5e5e5e5e5e5e5e6e6e6e5e5e5
+e5e5e5e5e5e5e5e5e5e4e4e4e3e3e3e3e3e3e2e2e2e2e2e2e2e2e2e1e1e198aacb1762a5
+00579e00579e00579e00579e00579e00579e00579e467bb2bdc5d5e0e0e0e0e0e0e0e0e0
+dfdfdfdedfdfdfdfdfdfdfdfd5d7dc809fc300579e00579e00579e00579e00579e00579e
+00579e00579ec1cad3dadadad9d9d9d9d9d9d9d9d9d9d9d99db1c82366a700579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e
+3670adb6c3d5e2e2e2e3e3e3e3e3e3e2e3e4a2b4d000579e00579e00579e00579e00579e
+00579e00579e00579e00579e5980b9dee1e6eaeaeaeaeaeaeaeaeae9e9e9e9e9e9e8e8e8
+e8e8e8a2b3d02869aa00579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e03589f0e5da21964a51c66a61c65a61c65a61c65a61b65a61b65a51b65a51b65a5
+1c65a5216aa75382b4afb9cbd2d2d2d0d0d0cdcdcdccccccd1d1d1dadadae3e3e3eeeeee
+f5f5f5f9f9f9fdfdfdfefefeffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffefdfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefefeffffffffffffffffffffffff
+fffffffefefefefefefefefefdfdfdfdfdfdfcfcfcfcfcfcfcfcfcfcfcfcfbfbfbfbfbfb
+fafafaf9f9f9f9f9f9f9f9f9f9f9f9f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f9f9f9
+e9ecf4c8d0e7a2b5d87497c73b7db5246bab0e5da200579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e1661a57f9fc8e3e6ecf0f0f0f1f1f1
+f0f0f0f0f0f0f0f0f0f0f0f0efefefefefefefefefefefefefefefefefefebebed94adcf
+1d64a700579e00579e00579e00579e00579e03599f467db5e7e8ebeeeeeeeeeeeeeeeeee
+f0f0f0f1f1f1f3f3f3f5f5f5f5f5f592a7d0075ba000579e00579e00579e00579e00579e
+00579e00579e00579e00579e1c62a7c3d2e5f7f7f8f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9
+f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f93076af00579e00579e00579e00579e00579e
+00579e00579e00579e00579e326caec0cde2f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f7f7f7
+f8f8f8f9f9f9f9f9f9fafafafbfbfbfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfbfbfbfbfbfb
+fafafaf8f8f8f6f6f6f5f5f5f3f3f3d2d8e64881b700579e00579e00579e00579e00579e
+00579e00579e00579e00579e296aaaa2b2cfe3e3e3e4e4e4e4e4e4e4e4e4e5e5e5e4e4e4
+e4e4e4e3e3e3e3e3e3e3e3e3e2e2e2e2e2e2e1e1e1e1e1e1e1e1e1e0e0e098a9ca1762a5
+00579e00579e00579e00579e00579e00579e00579e467cb2bdc5d6e0e0e0e0e0e0e0e0e0
+e1e1e1e0e1e1e0e0e0e0e0e0d6d8dd809fc400579e00579e00579e00579e00579e00579e
+00579e00579eb1bdcfdadadadadadad9d9d9d9d9d9d9d9d9c2c8d35886b603589f00579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e115fa3
+82a0c3d5d6dbdfdfdfdfdfdfdfdfdfdededf96abcb00579e00579e00579e00579e00579e
+00579e00579e00579e00579e5980b8dcdfe4e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e7e8e8
+e7e8e8a2b3d02869aa00579e00579e00579e00579e00579e00579e00579e00579e00579e
+085aa02f6fab7193bf9faecca9b5d0a8b4cfa8b4cea7b3cda6b2cca5b1cba5b1cba5b1ca
+a7b2cab9bfcecfd0d3d2d2d2cdcdcdcacacacacacacececed8d8d8e3e3e3edededf6f6f6
+fbfbfbfdfdfdfefefefefefeffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffefefefdfdfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefefeffffffffffffffffffffffff
+fffffffffffffefefefefefefefefefefefefdfdfdfcfcfcfcfcfcfcfcfcfcfcfcfbfbfb
+f9f9f9f9f9f9f9f9f9f8f8f8f8f8f8f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f6f6f6f6f6f6
+f7f7f7f8f8f8fafafafafbfbe7ebf4b1c1df7198c63274b00f5da300579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e276caba2b7d4ecedeeefefef
+eeeeeeeeeeeeefefefefefefeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeedededd2d8e45689bb
+01589f00579e00579e00579e00579e00579e0c5ea29aadd0ececececececedededeeeeee
+efefeff1f1f1f4f4f4f5f5f5f6f6f6d9deec1d65a800579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e7d9ecbeef0f5f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9
+f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f93076af00579e00579e00579e00579e00579e
+00579e00579e00579e00579e326caec0cde2f6f6f6f6f6f6f6f6f6f7f7f7f7f7f7f7f7f7
+f8f8f8f9f9f9f9f9f9fbfbfbfcfcfcfcfcfcfcfcfcfcfcfcfcfcfbfbfbfafafaf9fafaf9
+f8f8f7f6f6f5f4f5f4f3f3f3f1f1f1d0d7e44881b600579e00579e00579e00579e00579e
+00579e00579e00579e00579e296aaaa1b1cde2e2e2e3e3e3e3e3e3e4e4e4e4e4e4e3e3e3
+e3e3e3e2e2e2e2e2e2e2e2e2e1e1e1e1e1e0e0e0e0e0e0e0e0e0e0e0e0e097a8ca1762a5
+00579e00579e00579e00579e00579e00579e00579e467cb3c0c7d8e3e3e3e3e3e3e4e3e3
+e4e4e4e4e4e4e4e4e4e4e4e4dadce182a1c600579e00579e00579e00579e00579e00579e
+00579e00579eb0bdd0dbdbdbdadadad9d9d9d9d9d9d9d9d9d7d7d88ea7c41d64a500579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e05599f5281b4
+bdc4d2dadadadbdbdadbdbdadcdcdbdadadb8ca2c600579e00579e00579e00579e00579e
+00579e00579e00579e00579e5880b8d9dce1e5e5e5e6e6e6e5e6e6e6e6e6e6e6e6e6e7e6
+e6e7e7a2b2d02869aa00579e00579e00579e00579e00579e00579e00579e00579e00579e
+2c6caaa0b1ccdddedfe0e0e0dfdfdfdedfdfdddddddbdbdbdadadad9dad9d9d9d8d8d8d8
+d6d6d6d4d4d4d1d1d1cdcdcdc8c8c8c6c6c6cacacad4d4d4e2e2e2edededf6f6f6fbfbfb
+fdfdfdffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffefdfefdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefdfefefefefefefefefefeffffff
+fffffffefefefefefefefefefefefefefefefefefefdfdfdfcfcfcfcfcfcfcfcfcfbfbfb
+fafafaf9f9f9f9f9f9f8f8f8f7f7f7f7f7f7f7f7f7f6f6f6f6f6f6f6f6f6f5f5f5f5f5f5
+f6f6f6f6f6f6f7f7f7f9f9f9fafafafbfbfbf0f3f7bfcde46d95c51c66a800579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e04599f598bbbd5dbe5eeeeee
+ededededededededededededededededededececececececececece9e9eaa2b7d32669aa
+00579e00579e00579e00579e00579e00579e2d6dabd5d9e3ebebebebebebecececeeeeee
+efefeff2f2f2f4f4f4f5f5f5f6f6f6f7f7f7628ac000579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e2f6daed8e0edfafafafafafafafafafafafafafafa
+fafafafafafafafafafafafafafafafafafa3076b000579e00579e00579e00579e00579e
+00579e00579e00579e00579e326caec0cde2f6f6f6f6f6f6f6f6f6f6f6f6f7f7f7f7f7f7
+f8f8f8f9f9f9f9f9f9fbfbfbfcfcfcfcfcfbfbfbfbfbfbfafbfbfafafaf9f9f9f8f8f8f7
+f6f6f5f4f4f4f3f3f2f1f1f1efeeeeced5e34781b600579e00579e00579e00579e00579e
+00579e00579e00579e00579e2969a9a1b1cde2e2e2e3e3e3e4e4e4e4e4e4e4e4e4e3e3e3
+e3e3e3e2e2e2e2e2e2e2e2e2e1e1e1e0e0e0e0e0e0e0e0e0e0e0e0e0e0e098a8ca1762a4
+00579e00579e00579e00579e00579e00579e00579e477db4c4cbdce9e9e9eaeaeaeaeaea
+e9e9e9e9e9e9e9e9e9e9e9e9dfe1e684a3c800579e00579e00579e00579e00579e00579e
+00579e00579eb2bfd1dddddddcdcdcdbdbdbdadadad9d9d9d8d8d8bec4d14c80b202589f
+00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e266aa896acc6
+d6d6d8d9d9d9d8d8d8d8d9d8d9d9d8d6d6d7819ac100579e00579e00579e00579e00579e
+00579e00579e00579e00579e577eb6d6d8dde1e1e1e2e2e2e2e2e2e3e3e2e4e4e3e4e4e4
+e5e5e5a1b2cf2869aa00579e00579e00579e00579e00579e00579e00579e00579e00579e
+467eb3c4cad8dfdfdfdedededcdddddcdcdcdadbdbd9dad9d8d9d8d9d9d9d8d8d8d7d7d7
+d5d5d5d2d2d2cecececacacac6c6c6c7c7c7cfcfcfddddddeaeaeaf5f5f5fbfbfbfdfdfd
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffefefefdfdfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefdfefefefefefefefefefefefefe
+fefefefefefefefefefefefefefefefefefefefefefdfdfdfcfcfcfcfcfcfcfcfcfcfcfc
+fafafaf9f9f9f9f9f9f8f8f8f8f8f8f7f7f7f6f6f6f5f5f5f5f5f5f5f5f5f4f4f4f4f4f4
+f4f4f4f4f4f4f5f5f5f6f6f6f6f6f6f8f8f8f9f9f9fafafae0e6f081a3cd1d67a800579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579e2d6dacabbcd6ececec
+ececececececebebebebebebebebebebebebeaeaeaeaeaeaeaeaead7dbe36a94c00559a0
+00579e00579e00579e00579e00579e02589f7895c2e8e8e8eaeaeaeaeaeaebebebededed
+efefeff2f2f2f4f4f4f5f5f5f6f6f6f7f7f7b8c5df04599f00579e00579e00579e00579e
+00579e00579e00579e00579e00579e01589f9ab2d6f8f8fafbfbfbfbfbfbfbfbfbfbfbfb
+fbfbfbfbfbfbfbfbfbfbfbfbfbfbfbfbfbfb3076b000579e00579e00579e00579e00579e
+00579e00579e00579e00579e326caec0cde2f6f6f6f6f6f6f6f6f6f6f6f6f7f7f7f7f7f7
+f8f8f8f9f9f9fafafafbfbfbfbfbfbfafafafafaf9fbfbfaf9f9f8f9f9f8f7f7f6f5f5f4
+f3f3f2f2f2f1f0f0efeeeeedecececccd3e04780b500579e00579e00579e00579e00579e
+00579e00579e00579e00579e296aaaa2b1cee3e4e3e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4
+e3e3e3e2e2e2e2e2e2e2e2e2e1e1e1e1e1e1e1e1e1e1e1e1e2e2e2e2e2e299aacb1762a5
+00579e00579e00579e00579e00579e00579e00579e497fb6c9d0e1f0f0f0f1f1f1f0f0f0
+f0f0f0f0f0f0efefefeeeeeee3e6ea86a6cb00579e00579e00579e00579e00579e00579e
+00579e00579eb5c2d4e1e1e1dedededddddddcdcdcdadadad9d9d9d6d6d8819fc01862a4
+00579e00579e00579e00579e00579e00579e00579e00579e00579e105da26c90bac8ccd4
+d8d8d8d7d7d7d7d7d7d7d7d7d7d7d7d3d4d57692bd00579e00579e00579e00579e00579e
+00579e00579e00579e00579e577db5d3d5dadedededededddfdfdfdfdfdfe0e0e0e1e1e1
+e2e2e2a0b0ce2869a900579e00579e00579e00579e00579e00579e00579e00579e00579e
+477fb3c4cad6dddddddcdcdbdbdbdbdadadad8d9d9d8d8d8d7d7d7d6d6d6d5d5d5d4d4d4
+d1d1d1cecececbcbcbc9c9c9c9c9c9cececed9d9d9e6e6e6f2f2f2fafafafdfdfdfefefe
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffefefefefdfefdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefdfefefefefefefefefefefefefe
+fefefefefefefefefefefefefefefefefefefefefefdfdfdfcfcfcfcfcfcfcfcfcfcfcfc
+fbfbfbf9f9f9f9f9f9f8f8f8f8f8f8f7f7f7f6f6f6f5f5f5f4f4f4f4f4f4f3f3f3f3f3f3
+f3f3f3f2f2f2f3f3f3f3f3f3f4f4f4f5f5f5f7f7f7f7f7f7f7f7f7dfe4ee7197c5115fa4
+00579e00579e00579e00579e00579e00579e00579e00579e00579e0d5ca284a6c9e8e8e9
+eaeaeae9e9e9e9e9e9e8e8e8e9e9e9e9e9e9e8e8e8e8e8e8e7e8e8b0c1d6306ead00579e
+00579e00579e00579e00579e00579e03589fa6b3d1e7e7e7e8e8e8e9e9e9ebebebededed
+efefeff2f2f2f4f4f4f5f5f5f6f6f6f7f7f7ebeef31460a500579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e3e77b3f0f3f7fcfcfcfcfcfcfcfcfcfcfcfc
+fcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfc3077b000579e00579e00579e00579e00579e
+00579e00579e00579e00579e326caec0cde2f6f6f6f6f6f6f6f6f6f6f6f6f7f7f7f7f7f7
+f9f8f8f9f9f8fafaf9fafaf9fafaf9fafaf9fafaf9f9f9f8f7f7f6f6f6f5f4f4f3f3f3f2
+f1f1f0efefeeedececebebebe9e9e9cad1de467fb400579e00579e00579e00579e00579e
+00579e00579e00579e00579e296aaaa3b2cfe5e5e4e5e5e5e5e6e5e5e5e5e5e5e5e5e5e5
+e5e5e5e5e5e5e4e4e4e4e4e4e4e4e4e4e4e4e5e5e5e5e5e5e6e6e6e7e7e79badcf1763a5
+00579e00579e00579e00579e00579e00579e00579e4a80b8cdd5e6f5f5f5f6f6f6f5f5f5
+f5f5f5f5f5f5f4f4f4f2f2f2e7e9ee88a7cd00579e00579e00579e00579e00579e00579e
+00579e00579eb7c4d7e4e4e5e2e2e2dfdfdfdedededbdbdbdadadad9d9d9b9c1d03e79af
+01579e00579e00579e00579e00579e00579e00579e00579e01589e3b76adb0baccd7d6d6
+d7d7d7d6d6d6d6d6d6d6d6d6d6d6d6d2d3d56e8cbb00579e00579e00579e00579e00579e
+00579e00579e00579e00579e577db5d0d3d8dadadadadad9dbdbdbdcdcdcdddddddedede
+dfdfdf9eafcc2869a900579e00579e00579e00579e00579e00579e00579e00579e00579e
+467eb2c3c9d5dbdcdbdadadad8d8d8d6d6d6d2d2d2d0d0d0cecececdcdcdcdcdcdcecece
+cececececececfcfcfd0d0d0d5d5d5dcdcdce6e6e6f0f0f0f8f8f8fdfdfdfefefeffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffdfdfefdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefdfefefefefefefefefefefefefe
+fefefefefefefefefefefefefefefefefefefefefefdfdfdfdfdfdfcfcfcfcfcfcfcfcfc
+fbfbfbfafafaf9f9f9f9f9f9f8f8f8f7f7f7f5f5f5f5f5f5f4f4f4f3f3f3f2f2f2f2f2f2
+f1f1f1f0f0f0f1f1f1f1f1f1f1f1f1f2f2f2f4f4f4f4f4f4f4f4f4f4f4f4becae03574b0
+00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e6795bfdbdee4
+e8e8e8e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7d9dce27a9dc4085aa000579e
+00579e00579e00579e00579e00579e02589e7592c0dedfe2e6e6e6e7e7e7eaeaeaececec
+eeeeeef1f1f1f4f4f4f5f5f5f6f6f6f7f7f7c6d0e50b5ca200579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e085ba1b7c6e2fdfdfdfdfdfdfdfdfdfdfdfd
+fdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfcfcfc3077b000579e00579e00579e00579e00579e
+00579e00579e00579e00579e326caec1cde2f7f7f7f6f6f5f7f6f5f5f5f5f6f6f6f7f7f6
+f9f8f7f9f9f8fafaf9fafaf9fafaf9fafaf9f9f9f8f8f7f6f5f6f5f4f4f3f3f3f2f1f1f1
+efeeeeedecebeaeae9e8e8e8e7e7e7c9d0dc467fb300579e00579e00579e00579e00579e
+00579e00579e00579e00579e296aaaa4b4d0e8e7e7e8e8e7e8e8e8e8e8e8e8e8e8e8e8e8
+e8e8e8e8e8e8e8e8e8e8e8e8e9e9e9eaeaeaebebebecececedededefefef9fb1d31863a6
+00579e00579e00579e00579e00579e00579e00579e4b81b9d0d8eaf9f9f9f9f9f9f8f8f8
+f8f8f8f7f7f7f6f6f6f5f5f5e9ebf089a8cf00579e00579e00579e00579e00579e00579e
+00579e00579eb6c4d8e7e7e7e5e5e5e1e1e1dfdfdfdddddddbdbdbdadadad4d5d77898be
+1460a300579e00579e00579e00579e00579e00579e00579e1a64a5829ec1d1d3d6d7d8d7
+d7d7d7d7d7d6d6d7d6d5d6d5d5d5d5d1d2d56484b800579e00579e00579e00579e00579e
+00579e00579e00579e00579e567db4cdd0d5d8d7d7d8d7d7d8d8d8d9d9d9dadadadbdbdb
+dddede9dadca2768a900579e00579e00579e00579e00579e00579e00579e00579e00579e
+467eb2c0c6d2d6d6d6d2d2d2ccccccc9c9c9c6c6c6c6c6c6c8c8c8cccccccfcfcfd4d4d4
+d8d8d8dbdbdbdededee2e2e2e6e6e6ecececf2f2f2f8f8f8fcfcfcfefefeffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffefdfefdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefdfefefefefefefefefefefefefe
+fefefefefefefefefefefefefefefefefefefefefefefefefdfdfdfdfdfdfcfcfcfcfcfc
+fcfcfcfafafafafafaf9f9f9f8f8f8f7f7f7f5f5f5f5f5f5f4f4f4f3f3f3f1f1f1f0f0f0
+f0f0f0efefefefefefefefefefefeff0f0f0f0f0f0f1f1f1f1f1f1f1f1f1e6e8ec548abb
+03589f00579e00579e00579e00579e00579e00579e00579e00579e00579e5c8cbbd1d6e0
+e6e6e6e6e6e6e6e6e6e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5bec8d84075b000579e00579e
+00579e00579e00579e00579e00579e00579e1a63a55b8ab996a9cba8b6d1b1bcd5b3bed7
+b4c0dab6c1dcb7c3ddb8c4dea8b9d98ba4ce3676b100579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e5d86bffefefefefefefefefefefefe
+fefefefefefefdfdfdfcfcfcfcfcfcfcfcfc3076b000579e00579e00579e00579e00579e
+00579e00579e00579e00579e326caec0cde1f6f6f5f7f7f6f7f7f6f7f7f6f8f8f7f9f9f8
+fafaf9fbfbfafafaf9fbfaf9fbfaf9faf9f8f8f8f7f6f6f6f5f5f5f4f4f4f1f1f1f0f0f0
+eeeeededececebebeae8e8e8e8e8e8cad0dd467fb400579e00579e00579e00579e00579e
+00579e00579e00579e00579e2a6baba7b7d4ecececededededededededededededededed
+ededededededeeeeeeefefeff1f1f1f2f2f2f3f3f3f3f3f3f4f4f4f6f6f6a2b4d71864a6
+00579e00579e00579e00579e00579e00579e00579e4b82b9d2daecfbfbfbfbfbfbfafafa
+f9f9f9f9f9f9f8f8f8f6f6f6eaecf189a9cf00579e00579e00579e00579e00579e00579e
+00579e00579ea7b9d5e7e8e8e6e6e6e2e2e2e0e0e0dedededbdbdbd9d9d9d9d9d9b4bdce
+3172ab00579e00579e00579e00579e00579e00579e085aa05282b4c6c9d3d9d8d8d9d9d9
+d8d8d8d8d8d8d8d7d7d8d8d7d7d7d7d1d2d45b80b500579e00579e00579e00579e00579e
+00579e00579e00579e00579e557cb3c9cdd1d5d5d4d7d6d6d8d8d8d9d9d9dadbdbdcdcdc
+dedede9eaecb2769a900579e00579e00579e00579e00579e00579e00579e00579e00579e
+447cafb8becac9c9c9c3c3c3bfbfbfc0c0c0c6c6c6cdcdcdd6d6d6dddddde3e3e3e8e8e8
+ecececefefeff1f1f1f3f3f3f6f6f6f9f9f9fbfbfbfdfdfdfefefeffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fefefefdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfdfdfefefefefefefefefefefefe
+fefefefefefefefefefefefefefefefefefefefefefefefefdfdfdfdfdfdfcfcfcfcfcfc
+fcfcfcfbfbfbfafafaf9f9f9f9f9f9f7f7f7f6f6f6f5f5f5f4f4f4f3f3f3f1f1f1f0f0f0
+efefefeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeededed7097c2
+0d5ca200579e00579e00579e00579e00579e00579e00579e00579e00579e5a8abacfd4de
+e5e5e5e4e4e4e4e4e4e3e3e3e3e3e3e2e2e2e2e2e2dbdde08da9c90b5ba100579e00579e
+00579e00579e00579e00579e00579e00579e00579e085ba01a64a61f67a72269a8226aa9
+236aa9236aaa236aaa236baa1e67a81560a501579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e1360a4d7deeffefefefefefefefefe
+fdfdfdfcfcfcfbfbfbfafafaf8f8f8f7f7f72f76af00579e00579e00579e00579e00579e
+00579e00579e00579e00579e326caec0cde1f6f6f5f7f7f6f8f8f7fafaf9fbfbfbfcfbfb
+fcfbfbfdfcfbfcfbfbfbfbfafafaf9f9f8f8f8f7f7f6f6f6f4f4f4f3f3f3f2f1f1f1f0f0
+efefefeeedededecececebebebeaead0d5e14982b600579e00579e00579e00579e00579e
+00579e00579e00579e00579e2a6baca9bad7f1f1f1f1f1f1f2f2f2f2f2f2f3f3f3f3f3f3
+f3f3f3f4f4f4f5f5f5f6f6f6f7f7f7f7f7f7f8f8f8f9f9f9f9f9f9f9f9f9a4b5d91864a6
+00579e00579e00579e00579e00579e00579e00579e5085bbd6ddecfbfbfbfbfbfbfbfbfb
+fafafaf9f9f9f8f8f8f7f7f7eaecf189a9cf00579e00579e00579e00579e00579e00579e
+00579e00579ea0b4d2e5e5e6e3e3e3e1e1e1dfdfdfdddddddbdbdbd9d9d9d9d9d9d4d5d8
+7090bc105ea200579e00579e00579e00579e03589f3170abaab7cbd9d9d9dbdadadadada
+dadadadadadadad9d9d9dad9d9dad9d3d4d75279b400579e00579e00579e00579e00579e
+00579e00579e00579e00579e567cb3cccfd4d7d8d8dbdbdadededddfdfdee1e1e0e1e1e1
+e2e3e3a0b0ce2869a900579e00579e00579e00579e00579e00579e00579e00579e00579e
+4178acadb3bfbbbbbbbababac1c1c1cbcbcbd8d8d8e3e3e3ecececf2f2f2f6f6f6f9f9f9
+fafafafbfbfbfbfbfbfcfcfcfdfdfdfdfdfdfefefefefefeffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fefefefdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfd
+fdfdfdfefefefefefefefefefefefefefefefefefefefefefdfdfdfdfdfdfcfcfcfcfcfc
+fcfcfcfbfbfbfbfbfbf9f9f9f9f9f9f8f8f8f6f6f6f5f5f5f4f4f4f3f3f3f1f1f1f0f0f0
+efefefeeeeeeededededededececececececececececececebebebebebebeaeaea7899c3
+115ea300579e00579e00579e00579e00579e00579e00579e00579e00579e5b8bbaced3dc
+e2e2e2e2e2e2e1e1e1e1e1e1e1e1e1e0e0e0e0e0e0c7cdd94e7cb500579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e03589f839dcefefefefefefefcfcfc
+fbfbfbf9f9f9f7f7f7f5f5f5f2f2f2f0f0f02e74ae00579e00579e00579e00579e00579e
+00579e00579e00579e00579e326caec0cde1f6f6f6f8f8f7fafaf9fbfbfafbfbfafcfcfb
+fcfcfcfbfbfbfbfbfafbfbfafafaf9f9f9f8f7f7f6f7f7f6f6f6f5f4f4f3f4f4f3f3f3f2
+f2f2f1f1f1f0f1f1f0f0f0efefefefe3e5eb568cbb00579e00579e00579e00579e00579e
+00579e00579e00579e00579e2a6cacacbddaf6f6f6f6f6f6f7f7f7f7f7f7f8f8f7f9f9f8
+f9f9f9fafafafafafafbfbfbfbfbfbfbfbfbfafafafafafaf9f9f9f8f8f8a3b4d81864a6
+00579e00579e00579e00579e00579e00579e00579e5d8fbfe2e6f0f9f9f9fafafafafafa
+f9f9f9f9f9f9f8f8f8f7f7f7eaecf189a9cf00579e00579e00579e00579e00579e00579e
+00579e00579e9eb1cfe2e2e3e0e0e0dfdfdfdcdcdcdbdbdbd9d9d9d9d9d9d9d9d9d9d9d9
+bcc2d14078af05599f0b5ca14270af6587b988a0c3b7c2d0d6d7d9dadadadadadadbdbdb
+dbdbdbdcdcdcdcdcdcdcdcdcdcdcdcd5d7da4973b100579e00579e00579e00579e00579e
+00579e00579e00579e00579e577db5d4d6dbe0e1e0e2e1e0e2e2e2e2e3e2e3e3e2e2e2e2
+e2e2e29fafcc2768a900579e00579e00579e00579e00579e00579e00579e00579e00579e
+3e75a8a5abb6b9b9b9c4c4c4d3d3d3e1e1e1edededf4f4f4f9f9f9fcfcfcfdfdfdfefefe
+fefefeffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfd
+fdfdfdfdfdfdfdfdfdfefefefefefefefefefefefefefefefefefefdfdfdfdfdfdd2daed
+869fcd7c97c9bac5e2fafafaf9f9f9f8f8f8f7f7f7f6f6f6f4f4f4f3f3f3f1f1f1f0f0f0
+eeeeeeededededededeaeaeaeaeaeaeaeaeae9e9e9e9e9e9e8e8e8e8e8e8e3e4e6568bb8
+03599f00579e00579e00579e00579e00579e00579e00579e00579e00579e6b97bedadbdf
+e0e0e0e0e0e0dfdfdfe0e0e0dfdfdfdfdfdfdcdcde9fb4cc075ba100579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e01589f115ea4
+2365a82365a82366a91c62a70559a000579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e1f6aaaeaedf6fbfbfbf8f8f8
+f6f6f6f3f3f3f0f0f0edededeaeaeae8e8e82c73ac00579e00579e00579e00579e00579e
+00579e00579e00579e00579e326caec0cde1f7f8f7fafaf9fbfbfafbfbfafbfbfafcfcfb
+fcfcfbfdfcfbfcfbfbfcfbfafbfbfafbfbfafbfbfbfafafafafafaf8f8f8f7f7f7f7f7f7
+f6f7f7f7f6f6f6f5f4f5f5f4f5f5f4f5f5f584a4cb135fa400579e00579e00579e00579e
+00579e00579e00579e00579e2467aaa5b9d9fafbfafbfbfafbfcfbfafaf9fbfbfbfcfbfa
+fcfcfcfcfcfcfcfcfcfbfbfbf9f9f9f7f7f7f6f6f6f4f4f4f3f3f3f1f1f18ca3cc1360a4
+00579e00579e00579e00579e00579e00579e095ba17ea6cbf6f6f7f9f9f9f9f9f9f9f9f9
+f9f9f9f9f9f9f8f8f8f7f7f7eaecf189a9cf00579e00579e00579e00579e00579e00579e
+00579e00579e9baecbdcdcdddcdcdcdbdad9d9d9d9d9d8d8d8d8d8d8d9d9d9d9d9d9d9d9
+d8d8d9ccd1d5b6c1d0c8ced4cfd2d7d2d4d7d6d7dad9d9dadbdbdbdcdcdcdbdbdbdcdcdc
+dddddddddddddedededddddddfdfdfd7d9dc3f70af00579e00579e00579e00579e00579e
+00579e00579e00579e00579e587fb7d7dbdfe2e2e2e2e2e2e2e2e2e0e0e0e0e0e0dfdfdf
+dedede9dadca2768a900579e00579e00579e00579e00579e00579e00579e00579e00579e
+3e75a7aaafbac9c9c9d9d9d9e8e8e8f2f2f2f9f9f9fcfcfcffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffffffefefefefefdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefdfefdfdfdfdfdfdfcfcfcfcfcfc
+fcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfdfdfdfdfdfdfdfdfdf8f9fbb3c3e0226bab
+00579e00579e0559a0537fbabccbe3eff1f5f4f5f6f6f6f6f4f4f4f3f3f3f1f1f1efefef
+eeeeeeedededebebebeaeaeae9e9e9e9e9e9e8e8e8e7e7e7e6e6e6e3e4e5a9b8d12c6eab
+00579e00579e00579e00579e00579e00579e00579e00579e00579e2566a89baecbe0e0e0
+e0e0e0dfdfdfdfdfdfdedededdddddddddddccd0d85780b500579e00579e00579e00579e
+00579e00579e00579e00579e02589e0a5ca11d66a66a87ba97a6c6bbc1d1d5d6dae2e2e2
+e8e8e8edededf2f2f2f5f5f5f5f5f6d6dceca9b8db6589c11162a50559a000579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e0c5da295abd4f6f6f6f3f3f3
+efefefececece8e8e8e6e6e6e2e2e2e0e0e02b71ab00579e00579e00579e00579e00579e
+00579e00579e00579e00579e2c69abb8c7ddf4f4f4f7f7f7f9f9f8fbfbfafbfbfafcfcfc
+fcfcfcfefdfdfdfdfdfdfdfcfdfdfcfdfdfcfdfcfbfcfbfafbfbfafbfbfafafaf9fbfbfa
+fbfbfafbfbfafafaf9fafaf9fbfbfafbfbfabfcce43374b001579e00579e00579e00579e
+00579e00579e00579e00579e03589f6898c4eceef4fbfbfafbfbfafbfbfbfbfcfcfafafa
+f8f8f8f7f7f7f6f6f6f4f4f4f1f2f2eff0f0eeeeeeecebebe8e8e8d9dbe2417bb303589f
+00579e00579e00579e00579e00579e00579e3572b0b9c5dff6f6f6f8f8f8f9f9f9f9f9f9
+f8f8f8f8f8f8f7f7f7f6f6f6ebedf289a9cf00579e00579e00579e00579e00579e00579e
+00579e00579e98acc8d7d8d8d9d8d7d8d9d9d8d8d8d8d7d6d8d8d7d9d8d8d9d8d7d9d8d7
+dad9d9d9d9d9d9d9d9d9d9d9dbdbdbdadadadbdbdbdcdcdcdddddddddddddedededddddd
+dddddddededededededfdfdfdfdfdfd6d9dd2164a700579e00579e00579e00579e00579e
+00579e00579e00579e00579e587fb7d6d9dde0e0e0e0e0e0dfdfdfdcdcdcd9d9d9d8d8d8
+d7d7d799a9c62768a800579e00579e00579e00579e00579e00579e00579e00579e00579e
+4179acb8becaddddddeaeaeaf5f5f5fbfbfbfefefeffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffffefefefdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefdfefefefefefefefefefefdfdfd
+fcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcf3f5f9a6bbdb246bab00579e
+00579e00579e00579e00579e115ea3638ac0b4c7dfe0e6eeeceef1f2f2f2f1f1f1efefef
+edededebebebeaeaeae9e9e9e8e8e8e7e7e7e5e5e5e3e4e4dcdde1b4c1d5457db404599f
+00579e00579e00579e00579e00579e00579e00579e00579e05599f5384b6c7ccd9e0e0e0
+dfdfdfdfdfdfdedededddddddddddddbdbdcaebdcf0c5ca100579e00579e00579e00579e
+00579e00579e00579e0b5ca12e6eaa90a4c5ced0d5d7d7d7d6d6d6d8d8d8dbdbdbe0e0e0
+e5e5e5ebebebf1f1f1f5f5f5f9f9f9fbfbfbfcfcfcfbfcfdcdd7ec5983bd0a5ca200579e
+00579e00579e00579e00579e00579e00579e00579e00579e02589f3a77b1e7e9edededed
+e9e9e9e6e6e6e2e2e2dfdfdfdddddddbdbdb2a70aa00579e00579e00579e00579e00579e
+00579e00579e00579e00579e02589f719ac4d4dbe6eff0f2f7f7f6f7f7f7f9f9f9fafafa
+fbfbfafbfbfafcfcfbfcfcfbfcfcfbfbfbfbfbfbfbfbfbfbfbfbfbfcfcfbfcfcfbfbfbfa
+fafafafbfbfbfafafafbfbfbfcfcfcfcfbfbf5f6f9749dc90e5ea300579e00579e00579e
+00579e00579e00579e00579e00579e286aaca3b9d8f0f2f5f6f6f6f6f6f6f4f4f4f2f2f1
+f1f1f1eeefeeecedecebebebe8e8e8e5e5e5e3e3e3e0e0e0d5d7dc809ac21761a400579e
+00579e00579e00579e00579e00579e0d5ea2739dc6edeef2f6f6f6f7f7f7f8f8f8f8f8f8
+f8f8f8f8f8f8f7f7f7f6f6f6eaecf189a9cf00579e00579e00579e00579e00579e00579e
+00579e00579e97aac7d8d7d7d8d8d8d9d9d8d8d8d8d9d8d8d8d8d8d8d8d8d9d9d8d9d9d9
+d9d9d9dadadadadadadbdbdbdbdbdbdcdcdcdbdbdbdcdcdcdddddddedededededededede
+dedededfdfdfe0e0e0dfdfdfe0e0e0d8dbde1d62a600579e00579e00579e00579e00579e
+00579e00579e00579e00579e587fb7d5d8dddedededbdbdbd8d8d8d5d5d5d2d2d2d0d0d0
+cfcfcf94a4c02667a700579e00579e00579e00579e00579e00579e00579e00579e00579e
+3472acabb9d0e5e7e9f5f5f5fbfbfbfefefeffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffefefefdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefdfefefefefefefefdfdfdfdfdfd
+fdfdfdfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcaec2de296ead00579e00579e
+00579e00579e00579e00579e00579e00579e105ea34a7db791add0c0cfe0d4dbe7dde1e9
+e5e6eaeaeaebe9e9e9e7e7e7e2e2e5dadce2ced3ddbac6d688a3c6316fad01589f00579e
+00579e00579e00579e00579e00579e00579e00579e03589f326eaca4b3cee0e0e0e0e0e0
+dfdfdfdfdfdfdedededdddddddddddd4d6d96589b900579e00579e00579e00579e00579e
+00579e00579e1360a36689b9c4c9d3d8d9d9d7d7d7d5d5d5d4d4d4d4d4d4d8d8d8dddddd
+e3e3e3ebebebf1f1f1f5f5f5f9f9f9fcfcfcfcfcfcfefefefefefedfe6f2608bc0085aa1
+00579e00579e00579e00579e00579e00579e00579e00579e00579e1864a6a7b6d4e8e8e8
+e5e5e5e1e1e1dedededbdbdbdadadad8d9d92970a900579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e075aa15583b9a0b8d3c1d0e0c6d4e3c8d6e4c9d8e6
+cad8e6cad9e8cbd9e8cbd9e8cbd9e8ccdae8ccdae8ccdae8ccdae8cedae8d7dfece5e9f1
+f7f7f9fafafafafaf9fafaf9fafaf9fafaf9fafaf9d4dbeb4881b8065aa000579e00579e
+00579e00579e00579e00579e00579e00579e316fae9eb4d3dce0e8eaebebebebebe8e9e9
+e7e7e7e4e4e4e2e2e2dfdfdfdddddddadadad5d6d8c4c9d37f9ac01d64a600579e00579e
+00579e00579e00579e00579e075ba04e84b9d0d8e8f6f6f6f6f6f6f7f7f7f8f8f8f7f7f7
+f7f7f7f7f7f7f7f7f7f6f6f6eaecf189a9cf00579e00579e00579e00579e00579e00579e
+00579e00579e8da1c3d7d7d7d7d8d7d9d8d8d9d8d7d8d8d8d8d8d8d9d8d8d9d9d9d9d9d9
+d9d9d9dadadadbdbdbdcdcdcdcdcdcdbdbdbdddddddddddddedededfdfdfdfdfdfdfdfdf
+dfdfdfe0e0e0e0e0e0e0e0e0e0e0e0d6dbde00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e587eb6d3d6dbdadadad5d5d5d0d0d0ccccccc8c8c8c6c6c6
+c6c6c690a0bc2667a600579e00579e00579e00579e00579e00579e00579e00579e00579e
+0459a0417ab4a0b8d6cad8e8d6e0eed8e1efd9e1f0d9e1f0d9e1f0d9e1f0d9e1f0d9e1f0
+d9e1f0d9e1f0d9e1f0d9e1f0d9e1f0d9e1f0dce4f1f0f3f9fefeffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefefefffffffefefdfefefdfcfcfc
+fcfcfbfbfbfafbfbfafcfcfcfcfcfcfbfbfbfafafafafafa81a8ce0e5ea300579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579e2064a8507eb87197c4
+8dabcca2bcd3a3bcd2a1bbd192aecb7c9dc45d86ba2e6bab03599f00579e00579e00579e
+00579e00579e00579e00579e00579e00579e04589f286aa98aa4c5d8d9dddfdfdfdfdfdf
+dfdfdfdfdfdfdedededddddddcddddbdc6d31e62a600579e00579e00579e00579e00579e
+00579e125fa37192bdcaced5d9d9d9d9d9d9d7d7d7d4d4d4d2d2d2d2d2d2d4d4d4d9d9d9
+e0e0e0e8e8e8efefeff5f5f5fafafafcfcfcfdfdfdfefefefefefefefeffcbd9eb3c77b4
+00579e00579e00579e00579e00579e00579e00579e00579e00579e095aa15d86badcdde1
+e0e0e0dddddddbdbdbd9d9d9d9d9d9d8d8d82970a900579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e155fa41b62a61b62a61b62a6
+1b62a61b62a61b62a61b62a71b62a71b62a71b62a71b62a71b62a72465a94174b46f95c6
+b9cbe1eff0f3f7f7f6f6f6f5f6f6f5f6f5f4f5f5f4f5f5f4bbc6de3d78b204599f00579e
+00579e00579e00579e00579e00579e00579e00579e1f63a76b92bfaebdd4c7cedad3d6dc
+dbdbdcd9dadad8d8d8d3d4d5c9cbd3b9c1ce99adc65a83b5165fa400579e00579e00579e
+00579e00579e00579e075aa0457db5bcc9e0f6f6f6f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7
+f7f7f7f7f7f7f7f7f7f6f6f6eaecf189a9cf00579e00579e00579e00579e00579e00579e
+00579e00579e849bc2d6d7d7d8d8d8d8d8d7d8d9d9d8d8d8d9d8d8d9d9d9d9dadadadada
+dbdbdbdbdbdbdbdbdbdddddddddddddddddddddddddedededfdfdfdfdfdfdfdfdfe0e0e0
+e0e0e0e1e1e1e2e2e2e2e2e2e2e2e2d3d8de00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e577db5ced1d6d2d2d2cccccbc5c5c5c1c1c1c0c0c0c2c2c2
+c6c6c692a1be2667a700579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e00579e0559a01f64a8376eb03c70b23c70b23c70b23c70b23c70b23c70b23c70b2
+3c70b23c70b23c70b23c70b23c70b23c70b24576b687a7d1ecf0f8ffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffefefefdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefefefffffffffffffffffffefefd
+fefefdfdfdfcfcfcfbfcfcfbfbfcfcfcfcfbfbfbfbfbfbfbccd6e96693c3266aab0659a0
+00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e065aa03772ad8ca5c5d4d6d9dddddddddddddddddd
+dddddddddddddddddddddddddbdcdc7a95bf00579e00579e00579e00579e00579e00579e
+05599f5b86b7c2c8d3d9d9d9d8d8d8d8d8d8d7d7d7d4d4d4d2d2d2d1d1d1d1d1d1d5d5d5
+dbdbdbe3e3e3ecececf4f4f4fafafafcfcfcfdfdfdfefefefefefefffffff3f5fa91b0d5
+115ea400579e00579e00579e00579e00579e00579e00579e00579e00579e256ba9b1bcd2
+dddddddbdbdbd9d9d9d8d8d8d8d8d8d8d8d82970a900579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e02589f
+2e6eadb5c2daeeeeedededececececececececebebebebeaebeaeab2bed6447cb3075aa0
+00579e00579e00579e00579e00579e00579e00579e00579e00579e2766a85280b57096bc
+84a5c08da9c28ba7c17e9fbd698fb94979b11b61a500579e00579e00579e00579e00579e
+00579e00579e0b5da24f84b9bdc9e0f5f5f5f6f6f6f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7
+f7f7f7f7f7f7f7f7f7f6f6f6eaecf189a9cf00579e00579e00579e00579e00579e00579e
+00579e00579e849bc1d6d7d7d9d9d9d9d8d8d8d9d8d9d9d8d9d9d9d9d9d9dadadadbdbdb
+dbdbdbdcdcdcdcdcdcdcdcdcdddddddedededfdfdfdfdfdfe0e0e0e0e0e0e1e1e1e1e1e1
+e2e2e2e2e2e2e3e3e3e4e4e4e4e4e4c5cddb00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e567db4c5c8cdc4c4c4bcbcbcbabababcbcbcc2c2c2cbcbcb
+d4d4d49aabc82769a900579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e075aa1aabddefefeffffffffffffff
+fffffffffffffffffffffffffffffffffffffefefefdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefefeffffffffffffffffffffffff
+fffffffefefefefefefefefefcfcfcfcfcfcfcfcfcfcfcfcfbfbfbdfe4f0a8bcda6593c3
+3471b00459a000579e00579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e1f64a65786b6a7b4ccd6d7d9dadadadadadadadadadadada
+dbdbdbdbdbdbdbdbdbdbdbdbcacfd72b68a900579e00579e00579e00579e00579e00579e
+2c6ca9a3b5cad7d7d8d9d9d9d8d8d8d8d8d8d7d7d7d6d6d6d3d3d3d1d1d1d0d0d0d2d2d2
+d7d7d7e0e0e0e9e9e9f2f2f2f9f9f9fcfcfcfdfdfdfefefefffffffffffffefefecfd9eb
+487db700579e00579e00579e00579e00579e00579e00579e00579e00579e0f5ea26e93bc
+d6d7d9d9d9d9d8d8d8d6d6d6d6d6d6d7d7d73774ac02589f00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e
+0d5ca26f91bfe5e5e5e5e5e4e5e4e4e4e4e4e4e4e4e3e4e3e3e3e2e2e2e2bbc3d5608db9
+2165a700579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e0b5ba1095aa000579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e2969ab729cc6ced5e6f5f5f5f6f6f6f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f6f6f6
+f6f6f6f7f7f7f7f7f7f6f6f6eaecf189a9cf00579e00579e00579e00579e00579e00579e
+00579e00579e849bc1d7d7d7d8d8d8d9d9d9d9d8d8d9d9d8dadadadadbdbdadadadbdbdb
+dbdbdbdcdcdcdddddddddddddedededfdfdfdfdfdfe0e0e0e1e1e1e1e1e1e1e1e1e2e2e2
+e4e4e4e4e4e4e4e4e4e5e5e5e5e5e5bdc7d900579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e5378aeb0b2b7b3b3b3b4b4b4bebebecacacad6d6d6e1e1e1
+eaeaeaa6b7d5296aab00579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e4a7db9fafbfdffffffffffff
+fffffffffffffffffffffffffffffffefefefdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefefeffffffffffffffffffffffff
+fffffffffffffffffffffffffefefefefefefefefefdfdfdfdfdfdfcfcfcfcfcfce7eaf4
+bac8e27aa4cb457cb7145fa500579e00579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e00579e2565a75080b292a8c5c5cad4dadadadadadad9d9d9d8d8d8d8d8d8d9d9d9
+d9d9d9d8d8d8d9d9d9d9d9d991a3c500579e00579e00579e00579e00579e00579e095ba0
+6e93bbcbced5d9d9d9d9d9d9d8d8d8d8d8d8d7d7d7d6d6d6d4d4d4d2d2d2d0d0d0d1d1d1
+d4d4d4dcdcdce6e6e6eeeeeef6f6f6fbfbfbfdfdfdfefefefefefefefefefefefef1f3f8
+8aabd1125fa400579e00579e00579e00579e00579e00579e00579e00579e01579e3675ad
+bac1d0d7d7d7d7d7d7d6d6d6d6d6d6d6d6d66e8fba0a5ca100579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e
+1260a386a0c3dfdfdfdfdfdedededddddddddcdcdcdbdcdcdbdbdbdadadad8d8d8cbcdd4
+8fa4c2487bb01760a300579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e2466a9
+598bbdaabcd9e8eaf0f5f5f5f6f6f6f7f7f7f7f7f7f7f7f7f6f6f6f6f6f6f6f6f6f7f7f7
+f7f7f7f8f8f8f8f8f8f7f7f7eaecf189a9cf00579e00579e00579e00579e00579e00579e
+00579e00579e849bc2d6d7d7d9d8d8d9d9d9d9d9d8d9d8d8dadadadbdbdbdbdbdbdbdbdb
+dcdcdcdddddddededededededfdfdfe0e0e0e0e0e0e0e0e0e1e1e1e2e2e2e3e3e3e3e3e3
+e4e4e4e5e5e5e5e5e5e6e6e6e7e7e7b0bdd600579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e5075a8a9acb0bbbbbbc9c9c9d8d8d8e4e4e4eeeeeef5f5f5
+f8f8f8b4c3df2f6fae00579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e0b5ca2d0d9edffffffffffff
+fffffffffffffffffffffffffefefefdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefefeffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffefefefefefefdfdfdfdfdfdfdfdfd
+fbfbfbf1f3f7cbd5e8a0bbd96c97c63b74b30f5da300579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e01589f1e62a6
+4577b06b93bb9aacc6bcc2ced6d6d6d8d8d8d9d9d9d9d9d9d9d9d9d9d9d9d8d8d8d9d9d9
+d8d8d8d8d8d8d8d8d8d8d8d84d79b200579e00579e00579e00579e01579e1861a45984b6
+b2bfced8d8d9d9d9d9d9d9d9d8d8d8d8d8d8d7d7d7d7d7d7d6d6d6d3d3d3d2d2d2d1d1d1
+d3d3d3d8d8d8e0e0e0e9e9e9f2f2f2f8f8f8fcfcfcfdfdfdfefefefefefefdfdfdfcfcfc
+d4ddeb7196c52066a903589f00579e00579e00579e00579e00579e00579e00579e286ba9
+a3b0c9d7d7d7d6d6d6d6d6d6d6d6d6d6d6d6bac1ce5e88b62565a700579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e03599f366eac
+7498bec5cbd4dadadad9d9d9d8d8d8d7d8d7d7d7d7d7d7d7d7d7d6d6d6d5d5d5d4d5d5d5
+d2d3d4b8bfce8ca5c35986b62969a904599f00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e095ba1326fae6894c2a8bcd8
+d7ddeaf4f4f5f5f5f5f6f6f6f6f6f6f6f6f6f6f6f6f7f7f7f7f7f7f7f7f7f8f8f8f8f8f8
+f9f9f9f9f9f9f9f9f9f7f7f7eceef197b2d20659a000579e00579e00579e00579e00579e
+00579e00579e8ea3c4d6d8d8d9d8d8d9d9d9dadadadadad9dadadadcdcdcdcdcdcdcdcdc
+dddddddedededfdfdfdfdfdfe0e0e0e0e0e0e0e0e0e1e1e1e1e1e1e1e1e1dedededcdcdc
+dededee1e1e1e4e4e4e7e7e7e9e9e9bac5d90a5ba100579e00579e00579e00579e00579e
+00579e00579e00579e04589f6c89b3c5c6cadadadae7e7e7f1f1f1f7f7f7fafafafdfdfd
+fefefee0e6f2769bca1d65a803589f00579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e00579e
+00579e00579e00579e00579e00579e00579e00579e00579e00579ea7b9ddffffffffffff
+fffffffffffffffffffefefefdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefefeffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffefefefefefefefefefefefe
+fcfcfcfcfcfcfcfcfcf9f9fbe5e9f3c9d6e8a7c1dc7ca1cb5482bb326dae0d5ca200579e
+00579e00579e00579e00579e00579e01589e0f5da22e6aaa4979b26289b87f9fc09eb1c8
+b6bfcfcdcfd6d6d7d7d5d5d5d4d4d4d5d5d5d7d7d7d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9
+d8d8d8d8d8d8d8d8d8d7d7d79fb2c780a0c07f9fbf7f9fbf7f9fbf84a3c19aafc6bdc4d0
+d4d4d6d7d7d7d7d7d7d7d7d7d7d7d7d8d8d8d8d8d8d7d7d7d7d7d7d6d6d6d4d4d4d3d3d3
+d3d3d3d5d5d5dbdbdbe3e3e3ecececf4f4f4f9f9f9fcfcfcfdfdfdfdfdfdfcfcfcfafafa
+f4f5f6dadfeab1c5da94b2cf89a9c986a6c785a5c583a4c382a2c381a1c182a2c197aec6
+c5cad2d7d7d7d6d6d6d5d5d5d6d6d6d6d6d6d5d5d5c0c5d0a3b3c888a6c17e9ebe7e9dbe
+7c9cbc7c9bbc7b9bbb7c9cbc7e9ebe80a0c184a4c487a8c78aaaca8caccc8eaecf8fafd0
+8fb0d18fb0d18fafd08eaecf8dadce8caccd8babcc8aa9ca89a9c988a8c995b2ccb7c2d5
+d3d6dddfdfdfdddedddddddcdcdcdbdcdcdcdcdbdbdcdcdbdcdcdbdcdcdcdcdcdcdcdcdc
+dcdcdcdddddddadadcc8cdd8acbcd187a6c7628bbb4375b21f64a70559a000579e00579e
+00579e00579e00579e00579e085aa12868ab4c7cb86f96c499b6d4bfcee1dee3ecf2f3f4
+f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f7f7f7f7f7f7f8f8f8f8f8f8f9f9f9f9f9f9fafafa
+fafafaf8f8f8f7f7f7f5f5f5efeff0d1d9e392afcc87a7c786a5c584a4c482a2c281a1c1
+81a1c184a3c1c1c7d1d8d9d8d9d8d8d9d9d9dadbdadadadadadadadcdcdcdddddddedede
+dedededfdfdfe0e0e0e0e0e0e1e1e1e1e1e1e1e1e1e1e1e1dfdfdfdadadad5d5d5d4d4d4
+dadadae2e2e2e8e8e8eaeaeaebebebdfe1e799b4d086a6c77e9ebe7191af6787a56383a1
+6686a46d8dab7696b688a5c2c3cad7e7e7e8f2f2f2f8f8f8fbfbfbfefefefefefefefefe
+fffffffdfdfee1e7f3bacfe4a0bedb96b6d795b5d795b5d795b5d795b5d795b5d795b5d7
+95b5d795b5d795b5d795b5d795b5d795b5d795b5d795b5d795b5d795b5d795b5d795b5d7
+95b5d795b5d795b5d795b5d795b5d795b5d795b5d795b5d79cbbd9e0e7f3ffffffffffff
+fffffffffffffefefefdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefdfeffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fefefefdfdfdfcfcfcfcfcfcfcfcfcfcfcfcf9fafbebeef6dbe1eecbd7e7bacddfa3bcd5
+8da9cc83a2c780a0c5809fc391abc79ab2c8a7bbccb3bfcfbdc4d1c6cad3d1d2d6d7d7d7
+d7d7d7d8d8d8d7d7d7d7d7d7d5d5d5d5d5d5d5d5d5d6d6d6d8d8d8d8d8d8d8d8d8d8d8d8
+d9d9d9d9d9d9d9d9d9d8d8d8d7d7d7d2d3d6d1d2d6d1d2d5d1d2d5d2d2d5d5d5d5d6d6d6
+d6d6d6d5d5d5d5d5d5d5d5d5d5d5d5d6d6d6d6d6d6d6d6d6d6d6d6d7d7d7d6d6d6d5d5d5
+d4d4d4d5d5d5d8d8d8dddddde5e5e5edededf3f3f3f8f8f8fbfbfbfbfbfbfafafaf8f8f8
+f5f5f5f1f1f1ededede5e6e8dfe0e3dbdcdfd9daddd5d7dad3d4d8d2d3d7d2d3d6d4d4d6
+d6d6d6d6d6d6d6d6d6d6d6d6d5d5d5d6d6d6d5d5d5d5d5d5d6d6d6d3d3d5cecfd2cdced2
+ccced1cbccd0cacbcecacbcecccdd0d0d1d4d5d6dadadcdfe0e1e5e4e6e9e9ebeeedeff2
+eff0f4f0f1f5f0f1f5f0f1f4eef0f3edeef2ecedf0ebecf0e9ebeee8eaedececedededed
+ebebebeaeaeaeaeaeae9eae9e9e9e9e8e8e8e7e6e6e7e7e7e6e6e6e6e6e6e6e6e6e6e6e6
+e7e7e7e8e8e8e8e8e8e9e9e9e8e8e8e2e3e7d6dae4cbd3e1bdccddaec4d99fbad58baacf
+89a9cf8aa9ce92b0d2a6bfdab7ccdfc7d4e5d5dceae3e7f0f1f2f5f7f7f7f7f7f7f6f6f6
+f7f7f7f7f7f7f7f7f7f7f7f7f8f8f8f9f9f9f9f9f9fafafafafafafbfbfbfafafafafafa
+f9f9f9f7f7f7f4f4f4f1f1f1ececece8e8e8e1e2e4dbdde0d8daddd6d7dad4d5d8d3d4d6
+d3d4d7d4d5d7d8d8d9d9d8d7d8d9d9dadad9dadadadbdbdbdcdcdbdddddddededededede
+dfdfdfe0e0e0e1e1e1e1e1e1e2e2e2e2e2e2e3e3e3e2e2e2e0e0e0dcdcdcdbdbdbdddddd
+e2e2e2e5e5e5e4e4e4e1e1e1dedededbdbdbd1d1d3c1c3c6b5b6baabacafa8aaacaeafb2
+b9babdc6c7cad2d3d6dfe0e2ebebecf2f2f2f6f6f6f9f9f9fbfbfbfdfdfdfdfdfdfefefe
+fffffffffffffffffffffffffafbfdf7f8fcf7f8fcf7f8fcf7f8fcf7f8fcf7f8fcf7f8fc
+f7f8fcf7f8fcf7f8fcf7f8fcf7f8fcf7f8fcf7f8fcf7f8fcf7f8fcf7f8fcf7f8fcf7f8fc
+f7f8fcf7f8fcf7f8fcf7f8fcf7f8fcf7f8fcf7f8fcf7f8fcfafafdffffffffffffffffff
+fffffffefefefdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefefeffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fefefefefefefefefefefefefdfdfdfdfdfdfdfdfdfefefefdfdfdfbfbfbf8f8f8f0f0f2
+e6e7ebdfe1e6dbdde2d6d9dddadbdddadbdcdadadad9d9d9d9d9d9d8d8d8d8d8d8d7d7d7
+d7d7d7d8d8d8d7d7d7d8d8d8d8d8d8d6d6d6d5d5d5d5d5d5d5d5d5d6d6d6d7d7d7d7d7d7
+d8d8d8d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d8d8d8d7d7d7d7d7d7
+d7d7d7d6d6d6d5d5d5d5d5d5d5d5d5d5d5d5d4d4d4d4d4d4d5d5d5d5d5d5d5d5d5d5d5d5
+d5d5d5d4d4d4d5d5d5d8d8d8dededee4e4e4ebebebf1f1f1f6f6f6f8f8f8f6f6f6f5f5f5
+f2f2f2eeeeeeeaeaeae6e6e6e3e3e3e0e0e0dddddddbdbdbd9d9d9d7d7d7d7d7d7d6d6d6
+d6d6d6d5d5d5d5d5d5d6d6d6d5d5d5d5d5d5d5d5d5d6d6d6d5d5d5d5d5d5d5d5d5d3d3d3
+d2d2d2d2d2d2d1d1d1d1d1d1d2d2d1d4d4d4d7d7d7dbdbdbe0e0e0e5e5e5eaeaeaf0f0f0
+f4f4f4f6f6f6f8f8f8f9f9f9fafafafafafafafafafafafafafafaf9f9f9f8f8f8f7f7f7
+f6f6f6f4f4f4f4f4f4f4f4f4f3f3f3f2f2f2f1f1f1f1f1f1f1f1f1f0f0f0f0f0f0f0f0f0
+f0f0f0f1f1f1f2f2f2f2f2f2f2f2f2f2f2f2f3f3f3f3f3f3f4f4f4f3f4f4f1f2f4edeff3
+eceff3edeff3eff0f4f3f3f6f7f7f7f8f8f8f8f8f7fafafafafafafafafafafafaf9f9f9
+f9f9f9fafafafafafafafafafbfbfbfcfcfcfcfcfcfcfcfcfcfcfcfbfbfbfafafaf9f9f9
+f6f6f6f3f3f3efefefebebebe7e7e7e4e4e4e1e1e1dedededcdcdcdadadad9d9d9d8d9d8
+d9d9d8d9d9d8d8d9d8d8d8d8d8d8d7d9d8d7d9d9d8dcdcdbdededddfdfdfdfdededfdfdf
+e0e0e0e1e1e1e1e1e1e1e1e1e3e3e3e4e4e4e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e4e4e4
+ddddddd1d1d1c5c5c5bebebebdbdbdbdbdbdbebebebfbfbfc2c2c2c7c7c7cececed6d6d6
+dddddde3e3e3e6e6e6e8e8e8eaeaeaececececececeeeeeef2f2f2f6f6f6f9f9f9fcfcfc
+fdfdfdfefefefefefeffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fefefefdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefefeffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffefefefefefefefefefefefefefefefefefefdfdfdfbfbfbf8f8f8
+f4f4f4efefefeaeaeae4e4e4e1e1e1dedededcdcdcdadadad9d9d9d9d9d9d8d8d8d8d8d8
+d9d9d9d9d9d9d8d8d8d9d9d9d9d9d9d9d9d9d8d8d8d7d7d7d6d6d6d6d6d6d6d6d6d7d7d7
+d7d7d7d8d8d8d9d9d9d9d9d9d9d9d9dadadad9d9d9d9d9d9d9d9d9dadadad9d9d9d9d9d9
+d9d9d9d9d9d9d8d8d8d8d8d8d7d7d7d6d6d6d6d6d6d5d5d5d5d5d5d5d5d5d5d5d5d4d4d4
+d4d4d4d3d3d3d4d4d4d4d4d4d7d7d7dadadae0e0e0e7e7e7edededf0f0f0f2f2f2f2f2f2
+efefefececece8e8e8e5e5e5e1e1e1dfdfdfdcdcdcdadadad8d8d8d8d8d8d6d6d6d6d6d6
+d5d5d5d5d5d5d5d5d5d5d5d5d6d6d6d5d5d5d6d6d6d5d5d5d6d6d6d4d4d4d4d4d4d5d5d5
+d4d4d4d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d4d5d5d7d7d7d9d9d9dddddde1e1e1e6e6e6
+ebebebefefeff3f3f3f6f6f6f9f9f9fbfbfbfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfc
+fbfbfbfafafafafafafafafafafafafafafaf9f9f9f9f9f9f8f8f8f8f8f8f7f7f7f7f7f7
+f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f8f8f8f8f8f8f8f8f8f8f8f8f9f9f9f9f9f8
+f9f8f7f7f7f7f6f6f6f5f5f4f5f4f3f6f5f5f8f8f8fbfbfbfcfcfcfcfcfcfcfcfcfcfcfc
+fcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfafafaf8f8f8f6f6f6f3f3f3
+efefefececece9e9e9e6e6e6e2e2e2e0e0e0dedededbdbdbdadadadadad9d9d9d8d9d9d8
+dad9d9d8d9d9dad9d9d9d9d8d5d4d4d2d3d2d4d3d2d8d8d7dddddcdfdfdfe1e1e1e2e2e2
+e2e2e2e2e2e1e3e3e2e4e4e4e6e5e5e6e7e6e6e7e7e6e7e7e8e7e7e7e7e7e2e2e2d4d3d3
+c0bfbfafafafaaaaaaaeaeadbababac4c4c4ccccccd3d3d3d9d9d9dfdfdfe4e4e4e7e7e7
+e7e8e7e7e7e6e6e6e5e4e4e4e1e2e2e1e1e1e0e0e0e3e3e3e8e8e8eeeeeef3f3f3f7f7f7
+fbfbfbfdfdfdfefefefefefeffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fefdfefdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfdfeffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffefefefefefefefefefefefefefefefdfdfdfcfcfc
+fafafaf6f6f6f1f1f1ececece7e7e7e3e3e3e0e0e0dddddddcdcdcdbdbdbd9d9d9d9d9d9
+d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d8d8d8d9d9d9d9d9d9d9d9d9d8d8d8d7d7d7d6d6d6
+d5d5d5d6d6d6d8d8d8d9d9d9d9d9d9d8d8d8d9d9d9d9d9d9d9d9d9d9d9d9dadadadadada
+dbdbdbdadadadadadad9d9d9d9d9d9dadadad9d9d9d9d9d9d8d8d8d8d8d8d7d7d7d6d6d6
+d6d6d6d5d5d5d5d5d5d4d4d4d4d4d4d4d4d4d6d6d6dbdbdbe0e0e0e4e4e4e8e8e8e9e9e9
+e9e9e9e7e7e7e5e5e5e2e2e2e0e0e0dedededbdbdbd9d9d9d8d8d8d7d7d7d6d6d6d7d7d7
+d6d6d6d6d6d6d5d5d5d6d6d6d6d6d6d6d6d6d5d5d5d6d5d5d5d5d5d5d5d5d4d5d5d5d5d5
+d5d5d5d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d5d5d5d6d6d6d6d6d6d8d8d8dadada
+dfdfdfe4e4e4e9e9e9efefeef3f3f2f5f6f5f7f7f6f9f9f9fbfbfbfcfcfcfcfcfcfcfcfc
+fcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfc
+fcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfbfbfbfcfcfcfcfcfcfafaf9
+f9f8f7f6f6f5f2f1f0edededebebebedededf0f0f0f5f5f5f9f9f9fcfcfcfdfdfdfdfdfd
+fdfdfdfdfdfdfcfcfcfcfcfcfcfcfcfbfbfbf9f9f9f7f7f7f4f4f4f1f1f1efefefececec
+e8e8e8e4e4e4e2e2e2dfdfdfdedededcdcdcdadadad9d9d9d9d9d9d9d9d9d9d9d9dadada
+dadadadbdbdbdbdadad9d9d8d5d4d4cccdccc7c7c7cacacad1d1d0d9d8d7dededde1e1e0
+e4e3e3e3e3e2e3e3e3e4e4e4e3e3e3e3e4e4e3e2e1e1e0dfdddddcd4d4d4c8c8c8bbbaba
+b1b1b0b0b0afb5b4b3bebdbccecdccd9d9d9e1e1e0e7e7e7ebebebedededeeeeeeedeeed
+eaeaeae7e7e7e4e4e3e0e1e0dddddcdcdcdcdcdbdbdfdfdee2e2e2e7e7e7ecececf2f2f2
+f6f6f6fafafafdfdfdfefefefefefeffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfdfeffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffefefefefefefefefefefefe
+fdfdfdfcfcfcf9f9f9f4f4f4efefefebebebe6e6e6e2e2e2e0e0e0dedededcdcdcdbdbdb
+dadadadadadad9d9d9d9d9d9d9d9d9d9d9d9dadadadadadad9d9d9dadadadadadad9d9d9
+d9d9d9d8d8d8d7d7d7d9d9d9d8d8d8d7d7d7d8d8d8d8d8d8d9d9d9d9d9d9d9d9d9dadada
+dadadadbdbdbdadadadbdbdbdadadadcdcdcdbdbdbdbdbdbdbdbdbdadadadadadad9d9d9
+d9d9d9d9d9d9d8d8d8d7d7d7d6d6d6d5d5d5d4d4d4d5d5d5d7d7d7dadadadddddde0e0e0
+e1e1e1e1e1e1e0e0e0dfdfdfdddddddcdcdcd9d9d9d9d9d9d9d9d9d7d7d7d6d6d6d6d6d6
+d6d6d6d5d5d5d5d5d5d5d5d5d5d5d5d6d6d6d6d6d6d6d6d6d5d5d5d6d6d6d6d6d6d6d6d6
+d6d7d7d6d6d6d7d6d6d7d7d6d7d7d7d7d6d6d6d5d5d6d6d5d5d5d5d3d3d3d2d2d1d1d1d0
+d3d3d3d8d8d8e0e0e0e7e8e7eeeeedf2f2f1f3f3f3f5f4f4f6f6f6f7f6f6f7f7f7f7f7f7
+f7f7f7f8f8f8f8f8f8f8f8f8f9f9f9fafafafbfbfbfbfbfbfbfbfbfbfbfbfcfcfcfdfdfd
+fdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfcfcfcfcfcfcfcfcfcfbfbfbfbfaf9f8f8f8
+f3f4f3f1f1f1ebebeae4e4e3dfe0dfe0e0e0e6e6e6edededf4f4f4fafafafcfcfcfcfcfc
+fcfcfcfbfbfbfbfbfbf9f9f9f7f7f7f5f5f5f3f3f3efefefececece9e9e9e7e7e7e4e4e4
+e1e1e1dedededcdcdcdadadad9d9d9d9d9d9d9d9d9d9d9d9dadadadadadad9d9d9d9dad9
+dbdadadadad9dbdcdbdbdbdbd5d6d5cccccbc1c1c0bbbbbac0c0c0c9c9c9d0d0d0d3d4d4
+d6d5d5d5d5d5d4d4d3d4d4d3d3d3d2d1d1d1cfcfcecacacac6c6c6c0c0bfbcbbbbbababa
+bcbcbcc1c1c0cacac8d3d2d1dbdbdbe1e1e0e7e8e7ecececf0efeef3f3f2f4f5f4f3f3f2
+f0f0efededeceaeae9e5e5e4e3e3e3e2e1e0e0e0e0e0e0dfe2e2e2e5e5e5eaeaeaefefef
+f4f4f4f9f9f9fcfcfcfdfdfdfefefeffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffefefefdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfdfe
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fefefefdfdfcfcfcfbf9f9f9f8f8f7f2f2f1eeeeedebebebe7e7e7e3e3e3e1e1e1e0e0e0
+dededededededcdcdcdbdbdbdadadadadadadadadadadadadadadadadadadbdbdbdcdcdc
+dbdbdbdadadadadadad9d9d9dadadad9d9d9d8d8d8d8d8d8d8d8d8d9d9d9d9d9d9d9d9d9
+d9d9d9dadadadadadadadadadadadadbdbdbdcdcdcdcdcdcdcdcdcdcdcdcdbdbdbdcdcdc
+dcdcdcdbdbdbdbdbdbdadadad9d9d9d9d9d9d8d8d8d7d7d7d6d6d6d7d7d7d8d8d8d9d9d9
+dadadadbdbdbdbdbdbdbdbdbdbdbdbdadadad9d9d9d9d9d9d7d7d7d8d8d8d8d8d8d7d7d7
+d7d7d7d6d6d6d6d6d6d5d5d5d6d6d6d6d6d6d6d6d6d5d5d5d6d6d6d6d6d6d7d7d7d6d6d6
+d6d6d6d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d6d6d6d5d5d5d1d1d1cccbcb
+cacbcacdcdccd5d6d5dfdfdfe8e8e8edededf0efeef0f0eff0f0f0f0f0f0eeeeeeededed
+ececececececececececececeeeeeeefefeff1f1f1f2f2f2f4f4f4f4f4f4f6f6f6f9f9f9
+f9f9f9fafafafbfbfbfbfbfbfbfbfbfbfbfbfafafaf9f9f9f7f7f7f5f5f5f4f3f3f1f1f1
+edecece8e8e8e2e2e2dadbdad6d6d6d6d6d6dbdbdbe3e3e3ecececf3f3f3f6f6f6f6f6f6
+f7f7f7f5f5f5f3f3f3f1f1f1eeeeeeecececeaeaeae6e6e6e4e4e4e1e1e1dedededddddd
+dbdbdbdadadad9d9d9d9d9d9d9d9d9d9d9d9d9d9d9dadadadadadadbdbdbdbdbdbdbdbdb
+dcdcdbdcdbdbdcdbdbdcdbdad8d8d8d0d0d0c4c5c4bababab8b8b7c0c0bfcacac9d1d1d0
+d3d3d2d3d3d2d3d3d2d2d2d2d1d1d0cecececacacac7c7c7c6c6c6c6c6c6c7c7c7c9c9c9
+cececed3d3d2d7d7d7dbdbdbdfdfdfe2e2e2e5e5e5eaeaeaefefeff3f3f3f6f6f6f8f8f8
+f6f7f6f3f3f3f0f0efececebe8e8e8e7e6e6e6e6e5e7e7e7e9e9e9ebebebf0f0f0f4f4f4
+f8f8f8fcfcfcfdfdfdfefefeffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fefdfeffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffefefefdfdfcfcfcfcfbfbfbfafaf9f6f6f5f3f3f2efefefebebebe8e8e8e5e5e5
+e3e3e3e2e2e2e0e0e0dedededddddddcdcdcdcdcdcdbdbdbdcdcdcdcdcdcdcdcdcdddddd
+dddddddddddddddddddcdcdcdcdcdcdbdbdbdbdbdbdbdbdbdadadadadadadadadad9d9d9
+d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9dadadadbdbdbdbdbdbdbdbdbdcdcdcdcdcdcdcdcdc
+dbdbdbdcdcdcdcdcdcdbdbdbdbdbdbdbdbdbdadadad9d9d9d8d8d8d9d9d9d9d9d9d9d9d9
+d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d8d8d8d7d7d7d8d8d8d8d8d8d7d7d7d8d8d8d7d7d7
+d7d7d7d7d7d7d6d6d6d6d6d6d6d6d6d6d6d6d7d7d7d6d6d6d6d6d6d6d6d6d7d7d7d6d6d6
+d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d8d8d8d8d7d7d8d8d8d7d7d7d6d6d5d3d3d2cecece
+c8c8c7c8c7c6cdcdccd7d8d7e1e1e1e7e7e7ebebeaebebebebebebeaeaeae7e7e7e6e6e6
+e3e4e3e3e2e1e2e2e2e3e3e2e2e2e2e3e3e2e3e3e3e5e5e5e6e6e6e6e6e6e8e8e8eaeaea
+ecececf0f0eff2f2f2f4f4f4f4f4f4f4f4f4f3f3f3f1f1f1efefefedededebeae9e6e7e6
+e3e3e3dededed9d9d9d4d4d4d0d1d1d1d1d1d5d5d5dddddde5e5e5ebebebedededeeeeee
+eeeeeeecececebebebe9e9e9e5e5e5e3e3e3e0e0e0dedededcdcdcdadadad9d9d9d9d9d9
+d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9dadadadbdbdbdbdbdbdbdbdbdbdbdbdcdcdcdcdcdb
+dbdadadadadadbdbdbd9d9d8d7d6d6d3d3d3cdcecdc6c5c5c1c2c1c5c5c5cecdccd8d5d5
+dfdedde2e2e0dfdfdedadad9d2d2d1cdcdcdcccccccdcdcdcececed0d0d0d2d2d2d4d4d4
+d7d7d7d9d9d9d9dad9dbdbdbdcdcdcdfdfdfe2e2e2e9e9e9f0f0f0f5f5f5f9f9f9fbfbfb
+fafafaf9f9f9f7f7f7f5f5f5f4f4f4f3f3f3f3f3f3f4f4f4f6f6f6f7f7f7f8f8f8fbfbfb
+fdfdfdfdfdfdfefefefefefefefefeffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfefefeffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffefefefefefefcfcfcfbfbfbfafafaf7f7f6f3f3f2efefefececeb
+e9e9e9e8e8e8e5e5e5e3e3e3e1e1e1e0e0e0dfdfdfdedededddddddddddddddddddddddd
+dddddddededededededfdfdfdedededfdfdfdfdfdfdedededddddddcdcdcdcdcdcdcdcdc
+dbdbdbdadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadbdbdb
+dbdbdbdbdbdbdcdcdcdbdbdbdbdbdbdbdbdbd9d9d9d7d7d7d6d6d6d6d6d6d7d7d7d9d9d9
+d9d9d9dadadad9d9d9d9d9d9d9d9d9d8d8d8d8d8d8d8d8d8d7d7d7d8d8d8d7d7d7d6d6d6
+d7d7d7d6d6d6d7d7d7d7d7d7d7d7d7d6d6d6d7d7d7d7d7d7d7d7d7d7d7d7d6d6d6d7d7d7
+d7d7d7d7d7d7d8d8d8d9d9d9d8d8d8d8d8d8d7d8d8d8d8d8d8d8d8d8d8d7d7d6d5d2d2d1
+ccccccc9c9c8cbcbcad2d2d1dadbdae1e1e1e4e4e4e5e5e5e4e4e4e4e4e3e2e2e1e1e1e0
+e0dfdfdfdededfdfdedfdfdedfdfdedededddedfdedfdfdedfdfdedfdededfdfdfdedede
+e0e0e0e3e2e2e7e6e6eaeaeaebecebebebebeaeaeae7e8e8e5e5e4e2e2e1dfdfdedcdcdb
+d9d9d9d8d8d7d5d5d5d3d3d3d3d3d3d5d5d5d8d8d8dededee2e2e2e4e4e4e5e5e5e5e5e5
+e4e4e4e3e3e3e0e0e0dedededddddddbdbdbdadadadadadad9d9d9d9d9d9d9d9d9d9d9d9
+d9d9d9d9d9d9d9d9d9dbdbdbdbdbdbdbdbdbdbdbdbdadadad9d9d9d7d7d7d6d6d6d4d4d4
+d4d4d4d5d5d5d5d5d5d4d4d4d5d5d5d7d6d6d8d8d8dadbdadbdbdbdcdcdcdedddddedddd
+dedddcdadad9d3d3d3cdcdcdcdcdcdcececed2d2d2d4d4d4d5d5d5d6d5d5d6d5d5d7d7d6
+d8d8d7d9dadadbdbdadadadadadadadddddde3e3e3ebebebf2f2f2f8f8f8fcfcfcfdfdfd
+fdfdfdfdfdfdfdfdfdfcfcfcfcfcfcfbfbfbfbfbfbfbfbfbfcfcfcfcfcfcfcfcfcfcfcfc
+fbfbfbfbfbfbfbfbfbfafafafbfbfbfcfcfcfcfcfcfdfdfdfefefeffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfefdfeffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffefefefdfdfcfbfbfbf7f7f6f2f2f2
+efefeeecebebe9e9e9e7e7e7e4e4e4e4e4e4e2e2e2e1e1e1e1e1e1e1e1e1e0e0e0e0e0e0
+dfdfdfdfdfdfdfdfdfe0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0dfdfdf
+dfdfdfdedededddddddddddddddddddcdcdcdbdbdbdadadadbdbdbdadadadadadadbdbdb
+dadadadadadadadadadadadadadadadadadad7d7d7d4d4d4d1d1d1d1d1d1d3d3d3d5d5d5
+d6d6d6d7d7d7d8d8d8d8d8d8d8d8d8d8d8d8d9d9d9d8d8d8d8d8d8d7d7d7d7d7d7d7d7d7
+d7d7d7d6d6d6d7d7d7d7d7d7d7d7d7d7d7d7d8d8d8d8d8d8d8d8d8d7d7d7d8d8d8d8d8d8
+d8d8d8d8d8d8d9d9d9d9d9d9d9d9d9d9d9d9d8d8d8d8d8d8d8d9d9d9d9d9d9d8d7d6d6d6
+d4d4d3d1d1d0d1d1d0d5d5d4d9dadadededee0e0e0e1e0e0dfdfdfdfdfdedddddcdcdcdb
+dcdcdbdbdbdbdbdbdbdbdbdbdbdbdadbdbdbdbdbdbdcdcdbdbdbdbdbdbdbdbdbdbdbdcdc
+dbdbdbdddddce0e0e0e2e2e2e2e3e2e2e1e1dfdfdfdddedddbdbdbd9d9d9d8d8d8d7d7d6
+d6d5d5d6d6d5d5d6d6d6d6d6d7d7d7d9d9d9dbdbdbdcdcdcdddddddddddddddddddddddd
+dcdcdcdadadadadadad9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9dadada
+dadadadadadadbdbdbdbdbdbd8d8d8d7d7d7d5d5d5d2d2d2d0d0d0cfcfcfcfcfcfd1d1d1
+d5d5d5d8d8d8dcdcdcdededee0e0e0e4e3e3e4e4e4e5e5e5e1e1e1dadadad4d4d4cecece
+cbcbcbcbcbcbcdcdcdcfcfcfd3d3d3d5d5d5d7d7d7d7d7d7d7d7d7d6d6d6d6d7d6d7d8d7
+d9d8d8d9d9d9dadad9d8d8d8d9d9d9dcdcdce5e5e5eeeeeef5f5f5f9f9f9fcfcfcfdfdfd
+fcfcfcfcfcfcfcfcfcfbfbfbfbfbfbfafafafafafafafafaf9f9f9f8f8f8f7f7f7f6f6f6
+f4f4f4f4f4f4f3f3f3f4f4f4f5f5f5f8f8f8fafafafcfcfcfefefeffffffffffffffffff
+fffffffffffffffffffefefefefefefffffffffffeffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfefdfeffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffffefefefdfdfdfbfbfa
+f7f7f6f3f3f2efefeeebebeae7e7e7e5e5e5e3e3e3e3e3e3e4e4e4e5e5e5e4e4e4e4e4e4
+e3e3e3e2e2e2e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e2e2e2e2e2e2e2e2e2
+e2e2e2e2e2e2e1e1e1e1e1e1e0e0e0e0e0e0dfdfdfdedededededededededcdcdcdbdbdb
+dbdbdbdbdbdbdadadadadadad9d9d9dadadad7d7d7d0d0d0cbcbcbcccccccececed1d1d1
+d3d3d3d4d4d4d5d5d5d6d6d6d5d5d5d6d6d6d6d6d6d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7
+d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d8d8d8d8d8d8d8d8d8d9d9d9d9d9d9d8d8d8
+d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d8d9d9d8dad9d9d8d8d8
+d9d9d8d8d8d7d9d9d8dbdbdadddddddfdfdedfdfdfdfdedddddddddcdddcdcdcdbdadada
+dad9d9d9d9d9d8d9d8d9d9d8d8d9d8d9d9d8d9d8d8d9d9d9d8d8d8d8d8d7d8d8d8d9d9d9
+d8d9d8dadad9dadadadadbdadbdbdbdadadad8d8d8d8d8d8d7d7d7d6d6d6d7d7d7d6d6d6
+d6d6d6d6d6d6d6d7d7d7d7d7d8d8d8d8d8d8d9d9d9d8d8d8d8d8d8d9d9d9d9d9d9d9d9d9
+d9d9d9d8d8d8d8d8d8d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9dadadadadadadbdbdb
+dbdbdbd9d9d9d6d6d6d0d0d0cdcdcdcdcdcdcdcdcdcececed1d1d1d3d4d4d6d6d6d9d9d9
+dddddde0e0e0e2e2e2e1e1e1dededed9d9d9d2d2d2cbcbcbc4c4c4bfbfbfbfbfbfc2c2c2
+c9c9c9cfcfcfd5d5d5d8d8d8d9d9d9d9d9d9d7d7d7d6d6d6d5d5d5d5d5d5d6d6d6d8d8d7
+d9d9d9d9d9d9d8d8d8d6d6d6d8d8d8dddddde6e6e6edededf2f2f2f4f4f4f6f6f6f6f6f6
+f6f6f6f6f6f6f5f5f5f5f5f5f4f4f4f4f4f4f4f4f4f3f3f3f1f1f1f0f0f0eeeeeeececec
+ebebebebebebecececeeeeeef2f2f2f6f6f6fafafafcfcfcfefefeffffffffffffffffff
+fffffffffffffffffffefefdfdfdfcfefefdfdfdfcfefefdffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffffefefefdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfffefeffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fdfdfdfcfcfcf9f9f9f5f5f5f0f0f0ededede8e8e8e4e4e4e3e3e3e2e2e2e2e2e2e3e3e3
+e5e5e5e5e5e5e4e4e4e4e4e4e3e3e3e3e3e3e4e4e4e3e3e3e3e3e3e4e4e4e4e4e4e4e4e4
+e4e4e4e4e4e4e4e4e4e4e4e4e3e3e3e4e4e4e3e3e3e2e2e2e1e1e1e1e1e1e0e0e0dfdfdf
+dfdfdfdededededededddddddcdcdcdcdcdcdcdcdcd2d2d2c7c7c7c5c5c5c8c8c8cdcdcd
+d1d1d1d3d3d3d3d3d3d3d3d3d4d4d4d4d4d4d4d4d4d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5
+d5d5d5d5d5d5d6d6d6d6d6d6d6d6d6d7d7d7d7d7d7d8d8d8d9d9d9d8d8d8d8d8d8d8d8d8
+d9d9d9d9d9d9d9d9d9d9d9d9dadadadadadadadadadadadadadadadadadadadadad9d9d9
+dadadadadadadbdadadadad9dadad9d8d9d8d7d8d7d7d8d7d8d8d7d9d9d9dadadadadada
+d9d9d9dadadadadad9d9dad9d9d9d9d9d9d8d9d8d8d9d9d9d7d8d7d7d7d7d8d8d8d8d8d8
+d7d8d8d8d8d8d8d8d8d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d6d6d6d6d6d6d7d7d7
+d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d8d8d8d8d8d8d8d8d8d8d8d8d9d9d9d8d8d8d9d9d9
+d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9dadadadadadadadadadbdbdbdbdbdbdbdbdbd7d7d7
+d2d2d2cdcdcdc8c8c8c6c6c6cacacacececed1d1d1d4d4d4d5d5d5d5d5d5d5d5d5d5d5d5
+d4d4d4d3d3d3d2d2d2cececec9c9c9c3c3c3c0c0c0bfbfbfc1c1c1c4c4c4cacacad0d0d0
+d6d6d6dadadadddddddddddddcdcdcdadadad8d8d8d8d8d8d8d8d8d9d9d9dadadadbdbdb
+dcdcdcdbdbdbdadadad9d9d9dcdcdce1e1e1e7e7e7ebebebedededeeeeeeefefefefefef
+eeeeeeeeeeeeeeeeeeeeeeeeedededececececececeaeaeae9e9e9e7e7e7e6e6e6e7e7e7
+e8e8e8eaeaeaedededf1f1f1f5f5f5f9f9f9fcfcfcfdfdfdfefefeffffffffffffffffff
+fffffffffffffffffffefefefcfcfcfcfcfbfdfdfcfdfdfcfefefeffffffffffffffffff
+fffffffffffffffffffffffffffffffefefefefdfefefdfefdfdfdfdfdfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfefdfeffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffdfdfdfbfbfbf9f9f9f5f5f4f0f0f0ececece7e7e7e3e3e3e1e1e1
+e1e1e1e0e1e1e2e2e2e4e4e4e5e5e5e6e6e6e5e5e5e5e5e5e5e5e5e6e6e6e5e5e5e5e5e5
+e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e5e5e5e6e6e6e5e5e5e4e4e4e3e3e3e3e3e3
+e3e3e3e2e2e2e2e2e2e1e1e1e1e1e1e0e0e0e0e0e0dbdbdbccccccc1c1c1c0c0c0c7c7c7
+cececed2d2d2d3d3d3d4d4d4d4d4d4d5d5d5d5d5d5d4d4d4d5d5d5d4d4d4d5d5d5d4d4d4
+d4d4d4d4d4d4d5d5d5d5d5d5d5d5d5d7d7d7d7d7d7d7d7d7d8d8d8d7d7d7d7d7d7d7d7d7
+d8d8d8d8d8d8d9d9d9d9d9d9d9d9d9d9d9d9dadadadadadadadadadcdcdcdbdbdadadad9
+dadadad9d8d7d5d5d4d2d2d1d0d0d0d0d0d0d1d1d1d4d4d4d7d7d7dcdcdbdcdddcdddddd
+dcdcdcdbdcdbdbdbdbdbdad9dbdadadadadad9d9d9d9d9d9d9d9d9d8d9d8d9d9d9d9d9d9
+d8d8d8d9d9d9d8d8d8d7d7d7d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d7d7d7d7d7d7d8d8d8
+d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9
+d9d9d9d9d9d9dadadadadadadadadadbdbdbdbdbdbdcdcdcdcdcdcd9d9d9d3d3d3cbcbcb
+c6c6c6c4c4c4c7c7c7cbcbcbd0d0d0d3d3d3d4d4d4d3d3d3d3d3d3d2d2d2d2d2d2d1d1d1
+d0d0d0cfcfcfcfcfcfcecececdcdcdcfcfcfd0d0d0d4d4d4d8d8d8dbdbdbdfdfdfe2e2e2
+e3e3e3e4e4e4e3e3e3e1e1e1dfdfdfdddddddbdbdbdbdbdbdadadadadadadadadadadada
+d9d9d9d9d9d9d9d9d9dadadadcdcdce0e0e0e3e3e3e6e6e6e8e8e8e8e8e8e9e9e9e9e9e9
+e9e9e9e9e9e9e9e9e9eaeaeaeaeaeaeaeaeaeaeaeaeaeaeaebebebebebebecececeeeeee
+f1f1f1f3f3f3f6f6f6f9f9f9fbfbfbfdfdfdfefefeffffffffffffffffffffffffffffff
+fffffffffffffffffffefefefdfdfdfdfdfdfefefefdfdfdffffffffffffffffffffffff
+fffffffffffffffffffffffffefefefdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfdfdffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffefefefefefefdfdfdfdfdfcfafbfaf8f7f7f4f4f3efefefeaeaea
+e6e6e6e3e3e2e2e2e2e4e4e3e5e4e4e5e6e5e5e5e5e5e6e6e6e6e6e7e7e6e7e7e7e7e7e6
+e8e7e7e8e8e8e9e9e9e9e9e9eaeaeae9e9e9e9e9e9e7e7e7e7e7e7e7e7e7e6e6e6e6e6e6
+e6e6e6e6e6e6e5e5e5e4e4e4e4e4e4e4e4e4e3e3e3e3e3e3dbdbdbcbcbcbbfbfbfc0c0c0
+c8c8c8cfcfcfd2d2d2d4d4d4d5d5d5d5d5d5d6d6d6d5d5d5d6d6d6d5d5d5d5d5d5d5d5d5
+d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d5d5d5d6d6d6
+d6d6d6d7d7d7d7d7d7d8d8d8d8d8d8d8d8d8d9d9d9d9d9d9d9d9d9dadadad9dadad8d9d8
+d5d5d4d0d1d0cccccccacbcbcbcbcbcdcdcdd3d3d2d9d9d8dedddde0e0dfdfe0dfdfe0df
+dedededddcdcdcdddcdddcdcdcdcdcdbdbdbdadbdbdadbdbdadadad9dadadadadad9d9d9
+d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d8d8d8d8d8d8
+d8d8d8d7d7d7d8d8d8d8d8d8d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9dadadadadadad9d9d9
+dadadadadadadbdbdbdcdcdcdddddddddddddcdcdcd9d9d9d4d4d4cdcdcdc8c8c8c6c6c6
+c7c7c7c9c9c9cececed1d1d1d3d3d3d4d4d4d5d5d5d5d5d5d5d5d5d5d5d5d6d6d6d7d7d7
+d8d8d8d9d9d9dbdbdbdcdcdcdfdfdfe1e1e1e3e3e3e4e4e4e4e4e4e3e3e3e2e2e2e0e0e0
+dedededbdbdbd8d8d8d6d6d6d5d5d5d3d3d3d2d2d2d2d2d2d2d2d2d3d3d3d4d4d4d5d5d5
+d6d6d6d8d8d8dbdbdbdedededfdfdfe4e4e4e7e7e7e9e9e9ebebebecececedededefefef
+f0f0f0f0f0f0f1f1f1f2f2f2f2f2f2f3f3f3f4f4f4f5f5f5f6f6f6f7f7f7f9f9f9fafafa
+fbfbfbfcfcfcfdfdfdfefefefefefeffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffefefefefefefefefefefefefefefeffffffffffffffffffffffff
+fffffffffffffefefefefdfefdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefdfeffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffefefefefefdfcfcfbfbfbfaf9f9f8f6f6f6f3f2f2
+eeeeeeeaeaeae6e6e5e3e3e3e1e0e0dfe0dfdfdfdfdededee0e0dfdfdfdfdfdfdfe0e0df
+e0e0dfe0e0e0e1e1e1e2e2e2e6e6e6e9e9e9ededededededebebebeaeaeae8e8e8e8e8e8
+e8e8e8e8e8e8e7e7e7e7e7e7e7e7e7e7e7e7e6e6e6e6e6e6e6e6e6e0e0e0d3d3d3c4c4c4
+c2c2c2c8c8c8cececed2d2d2d5d5d5d6d6d6d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7
+d7d7d7d6d6d6d6d6d6d7d7d7d7d7d7d6d6d6d6d6d6d5d5d5d5d5d5d5d5d5d4d4d4d5d5d5
+d5d5d5d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d7d7d7d7d7d7d8d8d8d7d7d7d6d5d4d3d3d3
+cdcdcdc9c9c9c7c8c7c8c9c8cbcbcad0d0d0d8d8d7dededee2e2e2e3e3e3e2e1e1e0e0e0
+dfdfdfdedededededddedddddddddcdcdddcdcdddcdcdcdcdadbdbdadbdbdbdbdbdbdbdb
+dadadadadadadadadadadadadadadadadadadadadad9d9d9d9d9d9d8d8d8d8d8d8d5d5d5
+d4d4d4d5d5d5d6d6d6d8d8d8dadadadbdbdbdadadadadadadbdbdbdbdbdbdbdbdbdbdbdb
+dcdcdcdddddddddddddddddddbdbdbd8d7d7d2d1d1ccccccc9c9c9c8c8c8c9c9c9cacaca
+cccccccececed1d1d1d3d3d3d5d5d5d7d7d7d8d8d8d9d9d9dbdbdbdddddddfe0dfe3e3e3
+e4e4e4e5e5e5e5e4e4e5e5e5e1e0e0dedededadadad6d6d6d3d3d3d0d0d0cdcdcdcccccc
+cdcdcdcdcdcdcecececfcfcfd2d2d2d4d4d4d7d7d7dadadadddddde0e0e0e3e3e3e6e6e6
+e8e8e8eaeaeaeeeeeef0f0f0f1f1f1f3f3f3f5f5f5f7f7f7f7f7f7f8f8f8f9f9f9fafafa
+fafafafafafafbfbfbfbfbfbfbfbfbfcfcfcfcfcfcfdfdfdfefefefefefefefefefefefe
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fefefefefdfefdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefdfeffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffefefefefdfdfdfcfcfcfafafaf6f6f6
+f1f1f0ebebeae4e4e3dedfded9d9d8d4d4d4d2d2d2d0d0cfcfcfcececececdcdcdcdcdcd
+cdcdcdcdcdcdcdcdcdcececed0d0d0d4d4d4dadadae5e5e5edededf1f1f1eeeeeeececec
+ebebebeaeaeaeaeaeaeaeaeae9e9e9e9e9e9e9e9e9e7e7e7e7e7e7e8e8e8e6e6e6dddddd
+d0d0d0c8c8c8cacacacececed1d1d1d3d3d3d4d4d4d4d4d4d6d6d6d6d6d6d7d7d7d8d8d8
+d7d7d7d7d7d7d7d7d7d7d7d7d6d6d6d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d6d6d6d6d6d6
+d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d5d5d5d5d5d5d5d5d5d5d5d5d4d4d4d1d2d2cececd
+cbcbcbcacac9cbcbcbcdcdcdd1d1d0d6d5d5dbdbdbe0e0dfe3e3e2e3e3e3e1e1e1e1e1e1
+e0e0e0e0e0e0e0e0e0dfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdddddddededededededddddd
+dddddddcdcdcdbdbdbdadadadbdbdbdbdbdbdcdcdcdcdcdcdbdbdbdadadadadadad8d8d8
+d8d8d8d8d8d8dadadadbdbdbdddddddedededddddddddddddddddddedededededededede
+dedededddddddadadad6d6d6d0d0d0ccccccc9c9c9c8c8c8c9c9c9cacacacccccccdcdcd
+cfcfcfd1d1d1d5d5d5d8d8d8dbdbdbdededee1e1e1e5e5e5e7e7e7e9e9e9e8e8e8e5e5e5
+e0e0e0dadadad3d3d3cdcdcdc8c8c8c7c7c7c6c6c6c7c7c7cacacacececed2d2d2d5d5d5
+dadadadededee2e2e2e6e6e6e9e9e9ecececefefeff1f1f1f3f3f3f5f5f5f7f7f7f9f9f9
+fafafafafafafbfbfbfcfcfcfdfdfdfdfdfdfefefefefefefefefefefefefefefeffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffefefefefefe
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfdfdffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffefefefefefefdfdfdfcfcfc
+f9f9f9f5f5f5f1f1f1ececece6e6e6e2e2e2dedededbdbdad8d8d8d6d6d5d4d4d3d3d3d2
+d2d2d1d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d2d2d2d3d3d3d7d7d7e0e0e0ecececf2f2f2
+f2f2f2f0f0f0edededecececebebebeaeaeaebebebeaeaeae9e9e9e8e8e8e8e8e8e9e9e9
+e7e7e7dededed4d4d4d1d1d1d2d2d2d2d2d2d4d4d4d4d4d4d5d5d5d4d4d4d5d5d5d5d5d5
+d5d5d5d6d6d6d6d6d6d6d6d6d6d6d6d7d7d7d6d6d6d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7
+d7d7d7d7d7d7d7d7d7d6d6d6d6d6d6d6d6d6d5d5d5d5d5d5d4d4d4d4d3d3d2d1d0d0cfce
+cecfcfcecfcfd0d0d0d3d3d3d6d6d6d8d7d7dbdbdbdfdfdfe1e0e0e0dfdfe0e0e0dfdfdf
+dfdfdfe0dfdfe0e0e0e1e1e1e1e1e1e0e0e0e0e0e0e0e0e0e0e0e0dfdfdfdfdfdfdfdfdf
+dcdcdcd8d8d8d4d4d4d4d4d4d7d7d7dadadadddddddedededededededededddddddcdcdc
+dcdcdcdddddddddddddddddddedededfdfdfdededededededfdfdfdedededadadad9d9d9
+d3d4d4cfd0d0cccdcdc9c9c9c6c6c6c6c6c6c7c7c7c9c9c9cbcbcbcececed1d1d1d4d4d4
+d8d8d8dcdcdce0e0e0e4e4e4e8e8e8e9eaeae7e8e8e5e5e5dfdfded7d7d7d0d0d0c8c8c8
+c2c2c2c0c0c0c2c2c2c5c5c5cbcbcbd2d2d2d9d9d9dfdfdfe4e4e4e9e9e9eeeeeef1f1f1
+f4f4f4f7f7f7f8f8f8fafafafbfbfbfcfcfcfcfcfcfdfdfdfefefefefefefefefefefefe
+fefefeffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffffdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefdfefdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfdfdfffeffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffefefe
+fefefefefefefdfdfdfcfcfcfafafaf8f8f8f7f7f7f5f5f5f4f4f4f3f3f3f3f3f3f2f2f2
+f1f1f1f1f1f1f1f1f1f0f0f0f0f0f0efefefeeeeeeebebebe6e6e6e0e0e0dcdcdce1e1e1
+e9e9e9efefeff3f3f3f3f3f3f0f0f0efefefedededecececebebebebebebebebebeaeaea
+ebebebebebebe9e9e9e3e3e3dfdfdfdcdcdcdadadadadadadadadad8d8d8d7d7d7d6d6d6
+d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d4d4d4d5d5d5d4d4d4d5d5d5d5d5d5d6d6d6d6d6d6
+d7d7d7d6d6d6d6d6d6d7d7d7d7d7d7d6d6d6d5d5d5d6d6d6d6d6d6d5d5d5d4d4d4d5d4d4
+d4d4d4d5d4d4d5d5d5d5d6d5d6d6d6d7d8d8d9d9d9dbdbdbdcdcdbdddddcdbdbdbdbdbdb
+dcdcdcdddddde0e0e0e2e2e2e4e4e4e4e4e4e3e3e3e1e1e1e1e1e1e0e0e0e0e0e0dcdcdc
+d8d8d8d2d2d2cfcfcfcfcfcfd2d2d2d6d6d6d9d9d9dcdcdcdedededfdfdfdedededddddd
+dddddddddddddddddddddddddddddddcdcdcdcdcdcd9d9d9d3d3d3ccccccc5c5c5c2c2c2
+c1c1c1c2c2c2c3c3c3c5c5c5c7c7c7cacacacfcfcfd3d3d3d6d6d6dadadadededee1e1e1
+e3e3e3e5e5e5e2e2e2dededed9d9d9d3d3d3ccccccc7c7c7c6c6c6c5c5c5c7c7c7cbcbcb
+d2d2d2d8d8d8dfdfdfe6e6e6ecececf1f1f1f4f4f4f7f7f7fafafafcfcfcfcfcfcfdfdfd
+fffffffffffffefefeffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffefefefefefdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfdfefefefefffffffdfdfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfdfdfefefeffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffefefefefefefefefefefefefefefe
+fefefefefefefdfdfdfdfdfdfdfdfdfdfdfdfcfcfcfbfbfbfbfbfbf9f9f9f4f4f4eeeeee
+e7e7e7e3e3e3e6e6e6ebebebf0f0f0f3f3f3f3f3f3f1f1f1efefefefefefeeeeeeeeeeee
+edededececececececedededebebebe9e9e9e7e7e7e5e5e5e3e3e3e2e2e2e1e1e1e0e0e0
+dedededcdcdcdbdbdbdbdbdbdadadad9d9d9d8d8d8d7d7d7d5d5d5d5d5d5d5d5d5d5d5d5
+d5d5d5d5d5d5d4d4d4d4d4d4d5d5d5d5d5d5d6d6d6d5d5d5d6d6d6d6d6d6d6d6d6d6d6d6
+d8d8d8d9d9d9d8d8d8d6d6d6d5d4d4d6d6d6d8d8d8d8d8d8d9d9d8d8d8d8d8d8d8d8d8d8
+d8d8d8dadadadddddde2e2e2e6e7e6e7e7e7e7e7e7e5e5e5e3e3e3e3e3e3e3e3e3e0e0e0
+dcdcdcd8d8d8d4d4d4d3d3d3d2d2d2d3d3d3d5d5d5d8d8d8dbdbdbdedededfdfdfdedede
+dededededededddddddddddddddddddcdcdcd9d9d9d4d4d4cececec8c8c8c6c6c6c3c3c3
+c4c4c4c6c6c6cacacacececed2d2d2d6d6d6dadadadcdcdcdedededfdfdfdedededddddd
+d9d9d9d5d5d5d3d3d3d0d0d0d0d0d0d1d1d1d4d4d4d8d8d8dcdcdce1e1e1e7e7e7ebebeb
+efefeff2f2f2f7f7f7fafafafcfcfcfdfdfdfefefeffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffffefefefefefefefefe
+fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+fefefefefefefefefefefefefefefefefefefefefeffffffffffffffffffffffffffffff
+fffffffffffffffffffefefefefefefdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfefdfefefefefffffffffffffffffffdfdfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefdfefefefefefefe
+fefefeffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffefefe
+fbfbfbf5f5f5eeeeeee8e8e8e4e4e4e7e7e7ebebebefefeff1f1f1f1f1f1f0f0f0f0f0f0
+efefefefefefeeeeeeeeeeeeefefefefefefeeeeeeededededededecececeaeaeae9e9e9
+e9e9e9e8e8e8e7e7e7e5e5e5e5e5e5e3e3e3e2e2e2e1e1e1dfdfdfdddddddbdbdbdadada
+d9d9d9d9d9d9d8d8d8d6d6d6d5d5d5d4d4d4d5d5d5d5d5d5d4d4d4d4d4d4d5d5d5d6d6d6
+d8d8d7d8d8d7d8d8d7d5d5d5d2d2d2d2d2d2d5d5d5d8d8d8dadad9d9d9d8d7d7d6d6d6d6
+d6d6d5d7d8d8dbdcdbe1e1e1e7e7e7eaeae9e9e9e9e8e8e8e7e7e7e7e7e7e6e5e5e6e5e5
+e4e4e4e2e2e1e1e1e1dedededadadad6d6d6d3d3d3d3d3d3d6d6d6d9d9d9dcdcdcdedede
+dfdfdfe0e0e0dededededededededededededcdcdcdbdbdbd9d9d9d7d7d7d5d5d5d3d3d3
+d1d1d1d1d1d1d3d3d3d6d6d6d7d7d7d7d7d7d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8dadada
+dcdcdcdededee2e2e2e5e5e5e9e9e9edededf1f1f1f3f3f3f6f6f6f8f8f8fbfbfbfcfcfc
+fdfdfdfefefeffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffffefdfefdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefefefefefeffffffffffffffffff
+fffffffefefefefefefdfdfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfdfdfefefefffffffffffffffffffffffffffffffdfdfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfefefefefeffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffefefefafafaf4f4f4eeeeeee7e7e7e3e3e3e2e2e2e4e4e4e5e5e5e6e6e6
+e8e8e8eaeaeaebebebedededeeeeeeeeeeeeeeeeeeefefeff0f0f0efefeff0f0f0efefef
+efefefefefefeeeeeeeeeeeeedededebebebebebebebebebeaeaeae9e9e9e7e7e7e5e5e5
+e4e4e4e3e3e3e3e3e3e0e0e0dedededcdcdcdbdbdbdadadad9d9d9d8d8d8d7d6d6d7d7d7
+d7d7d6d8d8d7d7d7d6d5d5d4d1d1d0cecececfcfcfd4d4d3dadad9dedfdedfdfdedfe0df
+e0e0e0e1e1e0e4e4e3e6e7e6e9e9e9ebecebebebebebebebeaeaeaeaeaeae8e7e7e9e8e8
+e9e8e7e8e8e7e7e7e7e6e6e6e3e3e3dededed8d8d8d3d3d3d2d2d2d3d3d3d6d6d6d8d8d8
+dbdbdbdddddddddddddddddddedededededededededededededededddddddcdcdcd9d9d9
+d4d4d4d0d0d0cbcbcbcbcbcbcccccccfcfcfd4d4d4d9d9d9dededee3e3e3e8e8e8ececec
+f0f0f0f3f3f3f6f6f6f8f8f8fafafafcfcfcfdfdfdfefefefefefeffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffffefdfefdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfdfefefefefefefe
+fdfdfefdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fefdfefefefefffffffffffffffffffffffffffffffffffffdfdfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfdfefefefeffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffefefefdfdfdf9f9f9f3f3f3ececece5e5e5e0e0e0dcdcdc
+dadadad9d9d9d9d9d9dadadadcdcdcdededee0e0e0e2e2e2e4e4e4e7e7e7e9e9e9ececec
+eeeeeeefefeff0f0f0f0f0f0f0f0f0f1f1f1f1f1f1f0f0f0f0f0f0efefefefefefefefef
+eeeeeeedededecececebebebeaeaeae9e9e9e8e8e8e6e6e6e4e4e4e2e2e2e1e0e0dedede
+dddddcdcdcdcdbdbdad9d9d8d6d6d5d2d2d1cececdcccccccfd0cfd7d7d7dededde5e5e4
+eaebebeeeeedefefefeff0efeeefeeeeeeedeeedededededececececececebebebebebeb
+ebebeaebeae9eaeaeaeaeaeae9e9e9e8e8e7e3e2e2dcdcdcd7d7d7d4d4d4d3d3d3d4d4d4
+d5d5d5d6d6d6d8d8d8d9d9d9dadadadcdcdcdcdcdcdcdcdcdadadad4d4d4cdcdcdc4c4c4
+bebebebcbcbcbfbfbfc7c7c7d1d1d1dbdbdbe4e4e4ebebebf1f1f1f5f5f5f7f7f7fafafa
+fcfcfcfdfdfdfefefeffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffffefdfefdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefdfe
+fefefefffffffffffffffffffffffffffffffffffffffffffdfdfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfefeffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffefefefcfcfcf9f9f9f5f5f5f0f0f0
+eaeaeae5e5e5e0e0e0dcdcdcd8d8d8d6d6d6d6d6d6d4d4d4d3d3d3d4d4d4d5d5d5d7d7d7
+dadadadededee1e1e1e4e4e4e7e7e7e9e9e9ecececeeeeeef0f0f0f1f1f1f2f2f2f3f3f3
+f3f3f3f3f3f3f2f2f2f1f1f1f1f1f1f1f1f1f1f1f1f0f0f0efefefeeeeeeedededececec
+eae9e9e8e8e8e6e6e6e5e5e4e2e2e1dfdfdedbdad9d5d5d4cfcfcfcccccccdcdcdd1d1d1
+d7d7d6dededde4e4e3e9eae9eeeeeef0f0eff0f1f0f1f1f0f0f1f1f1f1f0f1f0f0f0efef
+efefefefeeeeedededeeeeeeedeeeeecececebeaeae9e8e8e4e4e4dfdfdfdcdcdcdadada
+dbdbdbdcdcdcdedededfe0dfe0e0e0dedededadadad3d3d3c9c9c9bebebeb8b8b8b6b6b6
+bcbcbcc8c8c8d4d4d4e0e0e0e9e9e9f1f1f1f6f6f6fafafafcfcfcfdfdfdfefefefefefe
+fefefeffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffffefdfefdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfdfdfdfdfdfefdfefefefeffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffdfdfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfdfdfefdfeffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffefefe
+fcfcfcf9f9f9f7f7f7f4f4f4f0f0f0ededede9e9e9e6e6e6e2e2e2dfdfdfdbdbdbd9d9d9
+d6d6d6d5d5d5d5d5d5d5d5d5d5d5d5d6d6d6d8d8d8dadadadddddde1e1e1e5e5e5e8e8e8
+ebebebedededf0f0f0f2f2f2f4f4f4f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f4f4f4f3f3f3
+f2f2f2f2f2f2f1f1f1f1f0f0efefeeedececebeaeae9e9e9e5e5e5dfdfded9d9d9d1d2d2
+cbcbcbc7c7c7c6c6c6cacac9d2d2d1dadadae1e1e0e4e5e4e7e7e7e9e9e9eae9e9edeceb
+efefeef0f0eff0f0f0f1f1f1f1f1f1f1f1f0f0f0f0efefefefefeeececebeae9e9e6e5e5
+e2e3e3e1e1e1dfdfdfdbdcdcd5d6d6cdcdcdc5c5c5bdbdbdb9b9b9bbbbbbc2c2c2cdcdcd
+dadadae6e6e6efefeff5f5f5f9f9f9fdfdfdfefefefefefeffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffffefdfefdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfdfdfefdfefefefeffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffdfdfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefdfeffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffefefefdfdfdfcfcfcfbfbfbfafafaf8f8f8f6f6f6f4f4f4f2f2f2
+efefefececece9e9e9e6e6e6e2e2e2dfdfdfdcdcdcd9d9d9d7d7d7d6d6d6d5d5d5d6d6d6
+d6d6d6d8d8d8dadadadededee3e3e3e7e7e7eaeaeaeeeeeef1f1f1f3f3f3f5f5f5f6f6f6
+f5f5f5f6f6f6f5f5f5f5f5f5f4f4f4f4f3f3f3f3f3f3f3f3f3f3f3f2f1f1efefefececec
+e7e7e7ddddddd2d2d2c5c5c5bbbbbbbababac2c2c1c9c9c9cccccccbcccccacac9cececd
+d4d4d4d9d9d9dcdcdcdedededfdfdfdfdedededededcdddddbdbdbd8d8d8d4d4d4cecece
+c8c9c9c4c4c4c2c2c2c1c1c1c0c0c0c0c0c0c1c1c1c6c6c6cececed7d7d7e1e1e1ebebeb
+f3f3f3f8f8f8fcfcfcfefefefefefeffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffffefdfefdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfdfdfefdfefefefefffffffffffffffffffffffffffffffefefe
+fefefefefefefefefefefefefefefefefefefefefefefefefdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfdfdfefdfefefefeffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffffefefefefefefefefe
+fdfdfdfcfcfcfbfbfbfafafaf8f8f8f6f6f6f4f4f4f2f2f2eeeeeeebebebe7e7e7e4e4e4
+e1e1e1dddddddadadad8d8d8d6d6d6d5d5d5d6d6d6d7d7d7dbdbdbdededee3e3e3e9e9e9
+eeeeeef3f3f3f6f6f6f6f6f6f6f6f6f5f5f5f5f5f5f5f5f5f6f6f6f6f6f6f7f7f7f6f6f6
+f6f6f6f4f4f4f1f1f1e9e9e9d8d8d8c2c2c2b6b6b6b9b9b9bdbdbdbdbdbdc0c0c0c6c6c6
+cdcdcdd0d0d0d0d0d0d0d0d0cecececccccccacacac8c8c8c7c7c7c5c5c5c4c4c4c2c2c2
+c4c4c4c6c6c6cacacad0d0d0d6d6d6dbdbdbe1e1e1e8e8e8eeeeeef4f4f4f7f7f7fbfbfb
+fdfdfdfefefeffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffffefdfefdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfefdfefffffffffffffffffffefdfefefdfefefdfefefdfefdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfdfdfefdfe
+fefdfefefefefefefeffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffefefefefefefefefefdfdfdfcfcfcfafafaf8f8f8
+f7f7f7f5f5f5f2f2f2efefefececece8e8e8e4e4e4e1e1e1dddddddcdcdcdddddde0e0e0
+e5e5e5ebebebf1f1f1f6f6f6f8f8f8f7f7f7f6f6f6f6f6f6f6f6f6f8f8f8f9f9f9f8f8f8
+f7f7f7f7f7f7f7f7f7f8f8f8f6f6f6e8e8e8ccccccb2b2b2adadadb9b9b9ccccccdadada
+e1e1e1e2e2e2e3e3e3e4e4e4e5e5e5e3e3e3e2e2e2e0e0e0e0e0e0e0e0e0e1e1e1e2e2e2
+e5e5e5e8e8e8ecececf0f0f0f3f3f3f6f6f6f9f9f9fbfbfbfcfcfcfefefefefefeffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffffefdfefdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfefdfefefdfefefdfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfefefefefefefefefefefefeffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffefefe
+fefefefefefefefefefdfdfdfcfcfcfbfbfbfafafaf8f8f8f6f6f6f2f2f2eeeeeeeaeaea
+e7e7e7e8e8e8ecececf1f1f1f6f6f6f8f8f8f8f8f8f5f5f5eeeeeee9e9e9ecececf6f6f6
+f9f9f9f9f9f9f8f8f8f8f8f8f9f9f9f6f6f6e4e4e4bbbbbba0a0a0afafafd1d1d1e3e3e3
+e5e5e5e3e3e3e6e6e6edededf5f5f5f9f9f9fafafaf9f9f9f9f9f9f9f9f9f9f9f9fafafa
+fbfbfbfcfcfcfcfcfcfdfdfdfefefefefefeffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffffefdfefdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfdfdfefefefefefefefefefefefefefefe
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffffefefefdfdfdfafafa
+f6f6f6f2f2f2efefefefefeff1f1f1f4f4f4f8f8f8f8f8f8f2f2f2e4e4e4d7d7d7dbdbdb
+edededfafafafcfcfcfbfbfbfafafaf7f7f7e9e9e9c7c7c7a3a3a3abababcececee4e4e4
+e3e3e3d8d8d8d3d3d3ddddddebebebf6f6f6fcfcfcfefefeffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffffefdfefdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfdfefdfdfefdfdfefdfdfefdfdfefefefeffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fefefefcfcfcf8f8f8f2f2f2efefefefefeff3f3f3f8f8f8fbfbfbf8f8f8ebebebd5d5d5
+c5c5c5cbcbcbe1e1e1f3f3f3fbfbfbfcfcfcf7f7f7e3e3e3c1c1c1b2b2b2c5c5c5dcdcdc
+e4e4e4dcdcdcccccccc7c7c7d1d1d1e0e0e0efefeff8f8f8fdfdfdfefefeffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffffefdfefdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefdfdfffefeffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffefefefafafaf4f4f4f0f0f0efefeff1f1f1f6f6f6fbfbfbfcfcfcf4f4f4
+ddddddbdbdbdabababb3b3b3cccccce5e5e5f5f5f5f9f9f9eeeeeed6d6d6c7c7c7cdcdcd
+d9d9d9e0e0e0dcdcdcd0d0d0c6c6c6c9c9c9d5d5d5e5e5e5f1f1f1f9f9f9fcfcfcfefefe
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffffefdfefdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefefefefefefefefefefefe
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffdfdfdfbfbfbf7f7f7f1f1f1eeeeeeeeeeeef2f2f2f7f7f7f9f9f9
+f8f8f8ecececd4d4d4bbbbbbb1b1b1b8b8b8cacacadededeeeeeeef1f1f1e4e4e4d1d1d1
+ccccccd4d4d4dddddddededed6d6d6ccccccc7c7c7cdcdcddadadae8e8e8f3f3f3fafafa
+fdfdfdffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fefefefefefefefefefefefefdfdfefdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfcfbfcfcfbfcfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfdfd
+fefdfefefdfefefdfefefdfefefdfefefdfeffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffdfdfdf9f9f9f2f2f2ececece8e8e8e7e7e7eaeaea
+edededf2f2f2f5f5f5f2f2f2e9e9e9ddddddd3d3d3cfcfcfd3d3d3dcdcdce5e5e5e4e4e4
+d5d5d5cbcbcbcfcfcfd8d8d8dedededbdbdbd2d2d2c9c9c9c7c7c7d0d0d0dededeececec
+f7f7f7fbfbfbfefefefefefeffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffefefefdfdfefdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfcfbfce6e5e6cac9cac2c1c2c0bfc0c2c2c2ecebecfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefdfefefdfefefdfefefdfefefdfefefdfe
+fefdfefefdfefefefefefefefefefefefefeffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffefefefcfcfcf7f7f7efefefe7e7e7e1e1e1
+dcdcdcdcdcdce0e0e0e6e6e6edededf2f2f2f4f4f4f1f1f1ebebebe4e4e4dfdfdfe4e4e4
+e4e4e4dcdcdcd2d2d2d1d1d1d7d7d7dcdcdcdbdbdbd3d3d3c8c8c8c1c1c1c7c7c7d4d4d4
+e4e4e4eeeeeef5f5f5f9f8f8fcfcfcfdfdfdfefefefefefefefefeffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffefdfefdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfde8e7e893908e5a53444b422f42392738342b8a8a89f8f7f8fdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefefeffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffffcfcfcf8f8f8f2f2f2
+ebebebe4e4e4e0e0e0dddddddddddde0e0e0e4e4e4e9e9e9efefeff2f2f2f2f2f2f0f0f0
+f0f0f0f0f0f0ebebebe4e4e4e1e1e1e0e0e0e0e0e0dededed8d8d8cfcfcfcacacacacaca
+d0d0d0d8d8d8dfdfdfe6e5e5ececebf0f0eff3f3f2f5f5f5f7f6f6f8f8f8f9f9f9fafafa
+fbfbfbfcfcfcfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfefefefefefefefefe
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffefefefdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdc4c3c3847a64a4863ea9873394762c7561312a2823e6e6e7fdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfcfbfcf2f1f2
+dedddecccbcccbcacbc6c5c6c7c6c7cfcfcfe6e5e6f9f9fafdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefefeffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffefefefefefe
+fcfcfcfafafaf7f7f7f3f3f3eeeeeeeaeaeae5e5e5e2e2e2e0e0e0e0e0e0e2e2e2e7e7e7
+eaeaeaedededf0f0f0f2f3f2f3f3f3f2f2f2f0f0f0eeeeeeecececebebebe7e7e7e2e2e2
+dcdcdcd9d9d9d7d7d6d9d9d8dcdcdcdededee1e1e0e3e3e3e4e3e3e5e5e5e7e7e6e9e9e9
+ebebeaedededf0f0f0f1f1f1f2f2f2f3f3f3f3f3f3f3f3f3f3f3f3f4f4f3f5f5f5f6f6f6
+f7f7f7f9f9f9f9f9f9fafaf9fbfbfafbfbfbfcfcfcfdfdfdfefefefefefefefefeffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffffefdfefdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdc5c4c3a18f66c4992abc8f17a07a138b6d1c332e24dcdcdcfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdf4f3f4d1d1d1b4b3b3999895
+8f8c83857e6f94897195886c8f846c847e72898884a7a6a6dedddefbfafbfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefefeffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffefefefdfdfdfcfcfcf8f8f8f4f4f4eeeeeee8e8e8e3e3e3dfdfdf
+dcdcdcdcdcdcdddddddedfdedfdfdfe2e2e2e6e6e5e7e7e7e9e9e8ebebebeeeeeef1f1f1
+f1f1f1efefefebebebe9e9e9e8e8e8e7e7e7e6e6e6e5e5e5e3e3e2e1e1e0dfdfdedfdfde
+dedededfdfdfe1e1e1e2e2e2e4e3e3e5e5e4e6e6e5e5e5e4e4e4e4e3e3e3e3e3e2e3e3e3
+e5e5e5e8e8e7e9e9e8eaeaeaebebeaedececeeeeeeefefeff1f1f0f3f3f2f5f5f4f7f7f6
+f8f8f8fafaf9fafafafbfbfbfcfcfcfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfefefe
+fefefefffffffffffffefefeffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffffefefefdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdc6c5c4a19066c1972bb98d1c9f7a188b6d1d373227ddddddfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdf1f0f1c4c3c3a2a09f8f897b978662a38741
+b99433c49d36cfa849cea955cca74ebf9b3ca3863e82745776746fbfbebff6f6f6fdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefefeffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffefefefdfdfdfbfbfbf7f7f7f3f3f3
+eeeeeee9e9e9e3e3e3dededed8d8d7d3d3d3d2d2d1cfd0d0cfcfcecfcececfceced5d4d4
+e0dedeeaeae9edededefefeff0f0f0f2f2f2f2f2f2f3f3f3f2f2f2f1f1f1efefefededed
+ecececebebebebebebececececececededededededecececeaeaeae8e8e8e4e4e4e1e1e1
+e1e1e1e2e2e2e4e4e4e4e4e4e3e3e3e3e3e3e1e1e1dfdfdfdededee0dfdfe2e2e1e4e4e3
+e6e6e5e7e7e6e9e9e8ebebeaeeeeedeeeeeeefefeff0f0f0f0f0eff1f1f0f2f2f1f3f3f2
+f4f4f4f6f6f6f8f8f8f8f8f8fafafafbfbfbfdfdfdfdfdfdfefefefefefeffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffffefdfefdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdc7c6c4a19067c19829b98e1aa07b168b6d1c363126dededefdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfcfbfcf2f1f2c8c7c79d9c998c8472a08a52c59e3ae1b031f2bb28
+deb144a88d42927d488f7d53958151a98e4acaa64cd3a94191793e5d5950bdbdbdf8f7f8
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefefeffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffefefefefefe
+fdfdfdfbfbfbf8f8f8f5f5f5f1f1f1ececece7e8e7e3e3e2dfdfdedbdbdad7d6d6d4d3d2
+d5d4d3dadad9d7d6d6d2d1d1d2d2d1d5d5d4d7d6d6dddddde2e2e2e5e5e5e8e8e8ececec
+eeeeeeefefefefefefefefefefefeff0f0f0f0f0f0f1f1f1f2f2f2f3f3f3f3f3f3f3f3f3
+f3f3f3f2f2f2f3f3f3f2f2f2f2f2f2f0f0f0eeeeeeeaeaeae8e8e8e6e6e6e4e4e4e3e3e3
+e1e1e1e0e0e0e0e0e0e1e1e0e2e2e2e2e2e2e3e3e3e4e4e4e3e3e3e2e2e2e1e1e1e1e1e1
+e3e3e3e4e4e4e6e6e5e7e7e7eaeaeaececebedededf0f0eff3f3f3f6f6f6f9f9f9fbfbfb
+fdfdfdfefefefefefefefefefffffffffffffffffffffffffffffffefdfefdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdf1f0f1d4d4d4bcbcbcb4b4b4b4b4b4b5b4b5b5b4b5b5b4b5b5b4b5b5b4b5b5b4b5
+b5b4b5b5b5b5b3b3b38c8b8a91805ac09936b89029a17e238c6f273632288b8a8abab9ba
+b7b7b7b9b8b9b9b9b9babababbbbbbbcbbbcbcbbbcbcbbbcbcbbbcbcbbbcc5c5c5e1e1e1
+f9f8f9fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdf5f4f5d7d7d7aaaaaa82807e746d5f937f4cb89433d5a628e8b221f1b924bc9b48
+65593f83817aafaeacbfbebdbcbbb9a6a39e8a816ba98f4fd6aa3b957c3f59564fd3d2d3
+fcfbfcfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefefeffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffefefefefefefdfdfdfcfcfcfafafaf8f8f8f7f7f7f5f5f5f1f1f0
+efefeeebebebe5e5e5dededdd9d9d9d6d6d5d2d2d1cfcfcfcdcdcdcac9c9cccbcbcfcfce
+d1d1d1cdcdcdcbcac9c9c8c8c7c7c6c8c7c7c8c8c8cacacad1d1d1dbdbdbe0e0dfe2e2e2
+e3e3e3e3e3e3e4e3e3e4e4e4e9e9e8edeeedf1f1f1f3f3f3f4f4f4f4f4f4f4f4f4f4f4f4
+f3f3f3f2f2f2f1f1f1f0f0f0f0f0f0f0f0f0f1f1f1f0f0f0eeeeeeebebebe7e7e7e4e4e4
+e2e2e2e1e1e1e0e0e0e0e0e0e0e0e0e0e0dfdfdfdfdedededfdfdfe2e2e2e7e7e7ececec
+f1f1f1f5f5f5f8f8f8fbfbfbfdfdfdfefefefffffffffffffffffffefdfefdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfcfbfcfcfbfcfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdefefef
+b3b3b3807d7980796a91866b94876a94876a94876a94876a94876a94876a94876a94876a
+94876a94876b93866a908365ac9664cbab60c9a85cc0a058b799588c7c5786795e8b8065
+8479617d735c756c576d6452635c4c585345524d41504b3f4f493f4e493f4c4840474543
+777675c7c6c7fbfafbfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdf6f5f6e1e1e1bebdbe
+9594937978745a574f69604a7562368d6f22ac861ec59820d6a521e5b021b697495a5344
+a1a09fe4e4e4f5f5f5fafafaf8f8f8efefefd0d0d0969289a99057dbae3d7b693d8e8d8b
+f0eff0fdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefefeffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffefefefefefe
+fefefefbfbfafafaf9f8f8f8f5f5f4f2f2f1f0f0efeeeeedeaeaeae7e7e7e3e3e3dfdfde
+dbdbdbd5d5d4d0d0d0cecdcdcdcdcdcdcccccdcdcccccbcbcecdcdcfcfcecccbcac6c5c5
+c2c1c1bdbdbdbab9b9bfbebec5c5c5c9c9c9cfcfcfd2d1d1d4d3d3dadadae0e0e0e2e2e2
+e4e4e4e7e7e7ebebeaefefefefefefefefefefefeff1f1f1f3f3f3f3f3f3f2f2f2eeeeee
+ebebebe7e7e7e5e5e5e5e5e5e6e6e6e6e6e6e5e5e5e2e2e2ddddddd9d9d9d9d9d9dadada
+dddddde1e1e1e6e6e6ebebebf0f0f0f5f5f5f9f9f9fcfcfcfdfdfdfdfdfdfcfcfdfdfcfd
+fdfcfdededed9a99997b7a795b5a597d7c7c898888888787888787888787888787888787
+8887878887878887878584848382828584848887878d8c8c8d8c8c8d8c8c8c8b8b8f8e8e
+a5a5a5bbbbbbc1c0c1c8c8c8cac9cac9c9c9c9c9c9c9c9c9c9c9c9c7c7c79e9d9e62615e
+9c9075c8a654e2b236e8b52ce9b52ce9b52be9b52be9b52be9b52ae9b52ae9b529e9b428
+e9b427e9b427e9b326eab425edb82befbb32efba33eeb931ebb72fe6b126ddaa24d0a122
+c1951fad851d9573197d6116664f1253400f44350d3d2f0b3a2d0b3a2d0b3a2d0c3c3011
+3c342433312f5c5c5cb4b4b4cfcfcfcececeb5b4b58f8e8e666666484846524f48565043
+544a35584b2a594615644e11785c138e6d17a6801bbb9120d1a01cc69f42554b369a9a99
+f1f1f1fffffffffffffffffffffffffffffffcfcfcd8d7d78b877ebf9b42c4a253544f42
+dad9dafcfbfc
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefefeffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffefefefefefefefefefdfcfcfbfcfcfbfafaf9fafafa
+f7f7f6f6f6f6f4f4f4f2f2f2f2f2f2f2f2f2f2f2f2f2f2f1f1f1f1efefeeedececeae9e9
+e5e5e5e1e1e1dedededddddddcdcdcd8d8d8d5d4d4d1d0d0cdcdcdcdcdcdcbcbcac5c5c4
+c3c1c2c3c1c1c8c8c8cacacac7c7c7c6c6c6c6c6c6c8c8c7cac9c9cccacad1d0d0d4d4d4
+d3d3d3d1d1d1d4d4d4dadadae1e1e1e6e6e6e9e9e9e9e9e9e6e6e6e3e3e3e0e0e0dedede
+dddddddbdbdbdadadadad9d9dddcdce3e3e3eaeaeaf1f1f1f7f7f7fbfbfbfcfcfcfdfcfd
+faf9faa3a2a1877c62b59a5ebc9d5cb99c5fb99d60b99e60b99e60b99e60b99e60b99e61
+b99e61b99e61ba9e61b79c61a99360a38e5ea08c609e8b619788619485618d7f5f87795e
+81765d7e745e78705b726b59726b58726b58726b58726b58726b58726a586e6654837659
+d0b26ce6bf66e1bb66e0bb67e0bb68e1bd69e1bd6be2be6ce3bf6fe4c171e4c274e4c376
+e6c579e7c67ce8c880e9ca83eacc87eace8aeacf8be9ce8be8cd8ae7cb88e3c785dfc280
+d8bb7aceb373c3a96bb79d63aa925aa0895397814e917b498c7646897343867141846d3d
+816b3b7465445c55465953455650434f493e4641373d382f36322a504936675836655531
+62532e62522f624f27604a126f55128566179c781bb58c1ccc9d2189744365635fe4e4e4
+fffffffffffffffffffffffffffffffffffffffffffdfdfdb1b1b1998a67deb240655837
+b2b2b1f9f8f9
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefefeffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffefefefdfffffffffffffffffffffffffffffffefefe
+fdfdfdfcfcfcfbfbfbfbfbfbfcfcfcf9f9f9f9f9f8f6f6f6f5f5f5f1f1f0ededede9e9e9
+e5e5e4e2e2e1dfdfdfdbdbdbd7d7d7d5d5d5d4d4d4d4d4d4d2d3d2d0d0d0d0d0d0d0d0cf
+cdcdcdcbcbcacbcacacecececfcfced2d1d0d3d1d1d7d6d6dededddfdfdfdfdfdfe0e0e0
+e0e0e0e0e0e0dcdcdcd9d9d9d5d5d5d5d5d5dcdcdce4e4e4eeeeeef6f6f6fbfbfbfdfcfd
+f6f5f6aea797d2a635f5ba1af6be28f6bf2ef7bc22f6bb1cf6bb1af6bb1af6bb1af6bc1b
+f6bb1bf6bb1bf6bb1bf6bc1af6bc1bf6bc1bf7bc1cf7bc1cf7bc1cf8bc1cf8bc1ef8bc1e
+f8bd1ef8bd1ff8be22f8bf26f8bf26f8bf27f8bf27f8bf27f8bf27f8bf29f8c02bf8c02d
+f6c033f5c039f5c03cf6c140f6c346f7c44bf7c753f7c95ef7cb6af7cd73f8d17cf8d584
+f9d88df9db96fadfa0fbe2a9fbe4b1fbe7b7fce9bcfceabffceabffdeabdfce9bafce6b3
+fce4abfce1a2fbdd99fbda8ffad787fad37ef9d076f8cd6df4c760eebf53e6b749d9ad3e
+cba034bb9328a9841f967419856616745913664e115b460f523e0c49370a46360c47360e
+47360e47370f53431f6553296950117c5f15937219ad8418b79132584c33969695f4f4f4
+ffffffffffffffffffffffffffffffffffffffffffffffffd8d8d88d887dd2a735877446
+888784f5f4f5
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefefeffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffefefefefefefefefefdfdfd
+fcfcfbfcfcfbf9f9f9f9f9f9f7f7f7f6f6f6f5f5f4f5f5f4f5f5f4f4f4f3f2f2f1f0f0ef
+eeeeedededecedededebebeaeaeae9e6e6e5e1e0dfdddcdcd8d8d7d3d3d2d5d4d3d6d6d5
+d7d7d7d6d6d6d3d3d3d0d0d0cfcfcfd2d2d2d9d9d9e3e3e3ecececf4f4f4fafafafdfcfd
+f3f2f3aba290c59d35e1af28e0af2adfad2be3b029e3b028e3af28e4b028e5b128e7b328
+e6b228e6b127e8b328e9b429ebb629ecb729eeb829f0b92af2bb29f3bc29f4bc29f6be29
+f6bf29f7bf29f8bf28f8bf27f8bf27f8bf27f8bf28f8bf28f8c029f8bf2bf8c02cf8c02d
+f8c02ff8c032f8c135f8c239f8c33ef8c544f9c74cf9ca57f9cc65f9ce72fad27afad582
+fad88dfbdd97fce1a0fce3aafce6b2fce8bafdebbffdebc1fdebc1fdebc0fce9bbfce6b4
+fce4abfce1a2fbdc98fad98ef8d484f6ce7af2c970edc363e7bb54dfb247d4a93cc69c31
+b79028a7822296741c846617735813654e115a450e503d0c48370b46350a44330a43320a
+43320a42310a4b3b1464532a644e13765a138d6c18a67f16a5853748402fb0b0b0f9f9f9
+ffffffffffffffffffffffffffffffffffffffffffffffffe8e8e88d8a85caa4428b784b
+7f7d7af4f3f4
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfdfefdfdfefdfdfefdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefefeffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffefefefffffffefefdfefefdfefefdfffffefefefefdfdfcfdfdfc
+fdfdfcfdfdfdfdfdfdfcfcfbfcfcfbfafafaf9f9f9f7f7f7f4f4f4efefefe9e9e8e5e4e3
+e2e1e1dedfdfdcdcdbdbdbdbdcdcdcdededee5e5e5ebebebf2f2f2f7f7f7fbfbfbfdfcfd
+eeeeee9f9889a8862fbc9120bd9324c19625c59924c59924c49824c79a22ca9c22cb9c23
+c99b22c99b22cb9d23cea024d2a324d6a625daa926deab26e2ae27e5b128e8b328ebb529
+eeb829f2bb2af4bc2bf5be2bf7bf2bf8c02bf8c02bf8c02bf8c02bf8c02cf8c02df8c02e
+f7c031f7c034f7c136f7c23af7c33ff8c548f9c851f9cb5df9ce6bfad075fad47efad787
+fbda92fbdf9dfce2a8fce5b1fde9bafdecc3fdedc8fdeecbfdeecbfdeec9fdecc4fdeabc
+fce6b3fbe3a9fadd9df8d892f6d387f2cd7ceec771e7c065deb556d3ab47c89f3bb79130
+a6832796752085671b745a16664f125b4610523f0e4b390d47360b44330b44330b44330b
+44330b44330b4d3e18615027614b107157138668179f7a15a483324b422fa4a3a3f7f7f7
+ffffffffffffffffffffffffffffffffffffffffffffffffe0e0e08c8881cea53d8a7648
+848380f5f4f5
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefefefffffffffffffefefefefefe
+fefefefefefefefdfefdfdfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefefeffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffefefefdfdfdfdfdfdfbfbfb
+f8f8f8f5f6f6f3f4f4f2f2f2f2f2f2f2f2f2f5f5f5f8f8f8fafafafcfcfcfdfcfdfdfcfd
+f5f4f5aaa8a383724c8a6e258e70219072238f71259173249475249473219a78229f7b22
+9d791e9b781a9f7a19a37e19a9821aaf871bb68c1ebc9120c29622c89a23cd9f24d3a324
+dba925e2af27e8b428edb729f1ba2af3bc2af5be2bf6be2bf7bf2bf8c02cf8c02df8c02f
+f8c031f8c134f8c136f8c33af8c440f9c649f9c953f9cb5ff9ce6dfad077fad481fad88b
+fbdc95fbe0a1fce4acfce7b7fdebc1fdeec8fdefcefdf0d2fdf1d2fdefcffdeecafdebc3
+fbe7b8fae3acf9dea1f7d995f3d188edca7ce8c370dfb964d4ad54c8a146b99438a7842c
+96752486681d765c186850145c471152400f4b3a0d47370c46350b44330b44330b44330b
+44330b44340c5344205b4a205d470e6e5413816416977316a883255f52337b7a78ededed
+ffffffffffffffffffffffffffffffffffffffffffffffffc2c2c28b8270d7aa367c6c41
+9f9e9cf7f6f7
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefefeffffffffffffffffffffffff
+fffffffffffffffffffefefefefefefefdfdfefdfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fefdfefefefefefefefefefefefefefefefefefefefefdfdfefdfdfefdfdfefdfdfefdfd
+fefdfdfefdfdfefdfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfdfd
+fefdfdfefdfdfefdfdfefdfdfefdfefefefeffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffefefefefefefdfdfdfdfdfdfdfdfdfefefefefefefefefefefefefefdfefdfcfd
+fdfcfde0dfe09f9e9c7c786d746b596f654e6f654d71674f72685072685074684e6e5f3f
+61512b6150236552206b551c745b1c7c611a86681a8e6e179471179a7618a27d1bac851e
+b78d1fc39722cfa024d9a825e1af27e8b328edb729f0ba29f3bc2bf5bf2df7bf2df7c02e
+f8c031f8c134f8c236f8c33af8c441f9c649f9c953f9cc60f9ce6efad078fad481fad98c
+fbdd97fbe1a3fce4affce9b9fdecc4fdeeccfdf1d2fdf2d6fdf2d6fdf1d3fdefcdfcecc5
+fbe8baf9e3aef7dda3f4d795eece87e8c57ae0bc6dd5b161c9a450b99541a98833977728
+856820765c1a6951155d481254410f4d3b0d48380c46360b45340b44330b44330b44330b
+44330b4738125849265542145b460e6a51127b5f158e6d17a37d1886703a4c4941c1c0c0
+fcfcfcffffffffffffffffffffffffffffffffffffededed989795a58d54d8af48685d43
+cdcdcdfbfafb
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefefeffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffefefffefefefefefefdfefdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fefdfefffffffffffffffffffffffffffffffffffffffefefffefefffefefffefefffefe
+fffefefffefefffefefefefefefdfefefdfefefdfefefdfefefdfefefdfefefdfefefdfe
+fefdfefefdfefefdfefefdfefefdfefefdfefefdfefefdfefefdfefefdfefefdfefefdfe
+fefdfefefdfefefdfefefdfefefdfefefdfefefdfefefdfefefdfefefdfefefefefffefe
+fffefefffefefffefefffefeffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffefefefdfcfd
+fdfcfdfdfcfdf6f5f6dbdadbc2c1c2b6b5b5b5b5b4b7b7b6b7b7b6b9b9b8b5b4b3a09e9d
+8b8a8888878383817c7d7a737872666f6654685b3e58471d65511c6f571a765b147e6114
+88691796741aa6801db58b1fc29622ce9f24d8a725e0ad27e7b329edb82bf1bb2df4bd2d
+f6bf31f7c133f8c236f8c33bf8c442f9c649f9c954f9cc60f9ce6ffad178fad581fad98c
+fbdd98fbe1a4fce5b0fce9bbfdedc4fdefccfdf1d4fef3d7fef3d7fdf2d4fceecefbecc5
+fae7baf7e1aef4dba1efd393e9ca84e0c076d6b368c9a75cbb994ca9883a997a2f866a24
+765d1c6952165f4a135643114e3c0e49380d47360c46360b45340b44330b44330b44330b
+43330b51422056461f4f3c0c5a450f664e11755a148466169572159f7e295c4f325d5c59
+c8c8c8fcfcfcfffffffffffffffffffefefeeaeaeaa3a3a2857a62d3a93da98e4a7b776f
+e8e8e8fdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefefeffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffffefefefefdfefdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fefdfeffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffefefefdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfcfbfc
+faf9faf6f5f6eeeeeee4e3e4d4d4d4c3c2c3b0aead8785816e6a5f584f3b4a3c1b594718
+634d126c5210785d1387681795731aa47f1cb38a1fc19521cea024dbaa27e3b02aeab62c
+f0bb2ff3be33f6c035f7c23bf7c441f9c649f9c953f9cb60f9ce6efad178fad481fad98c
+fbdd97fbe1a4fce5affce9bafdecc3fdeecbfdf1d2fdf2d5fdf2d5fcf0d2fbedcbfae9c3
+f8e5b8f5deabf0d79eeace8fe2c480d7b871caa962bb9b55ab8b45997b35886d29775e20
+6953195f4a145743124f3d104a390d47370c47360c46360b45340b44330b44330b443309
+4d3d1b5546234c3b0f4e3c0c59450f624c116e55137a5e1587681696731591752c594e33
+5b5a58a4a4a4cececee1e1e1ddddddbfbfbf92918f7d735dbb9740caa44373684ebcbbba
+f8f7f8fdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefefeffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffefdfe
+fefdfefefdfefefdfefdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fefdfeffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffefefefdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfaf9faecebeccfcfcfb1b0af83817d5d584c
+463c254b3c17594511614a0d6a5211765b14846616937119a6811db88f21c89b24d6a628
+e1af2de9b631efbb34f3bf39f5c240f7c548f9c852f9cb5ef9ce6dfad077fad480fad88a
+fbdc95fbe0a1fce4abfce7b7fceac0fcecc7fcefcdfcf0d0fcefcffbedcdfaebc7f8e7bd
+f5e2b3f0daa5ebd198e2c688d8bb79cbad6abd9e5bac8f4d9a7e3c896e2f7a61246a541b
+604b17584413503e104b3a0f47370d47360c47360c46360b45340b44330b43320a493915
+5647274c3c1348360a4f3d0d57430e5e4910664e116f5513785d14836515906e16917427
+6c5a32655d4d726f697d7b78827f7a7f7867957f4bc59f3ec29d4083744fa09e9beeedee
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefefeffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffefdfefefdfefefdfefefdfefefdfefdfdfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fefdfeffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffefefefdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdf9f8f9e7e6e7c8c7c7
+9897955e5b52423926483915503d0c55410c5e4810695112795d158b6b19a07b1db48c21
+c69a26d5a62ce1b031eab836f0bd3ef4c246f7c650f8c95cf9cd6bf9cf75fad37efad787
+fbda92fbde9cfce2a7fce5b1fbe8b9fceac0fcecc5fbecc8faebc7faebc5f8e6bef5e2b6
+f1dcaaebd39de3c98ed8bd7fcbb06fbda160ad91529b80448a71357a62296d5720614c18
+5946155240114c3b1049380e47360c47360c46360b45350b44330b43320a493916504122
+4a3a1446350a48370a4e3b0b54400b59440b5e470b634b0c6a510d72580e7d5f0f8a690e
+94721c9474219275278e7949a3863ebb9531c49f43ad924f7f7459a2a09deae9e9fcfbfc
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefefeffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffefefefdfefefdfefefdfe
+fefdfefdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fefdfeffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffefefe
+fdfdfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfbfafb
+efeeefd3d2d2969594514d4340371f49390e4a380a4e3c0d58430f654e12755a15896a19
+9f7b1eb48c25c69b2ad6a830e1b239eaba42f0c04bf4c657f7ca66f8cd71f9d179fad583
+fad98dfbdc96fbdfa0fbe2a8fbe4b0fae7b8fbe8bcfae8bef9e7bdf7e5baf3e0b3f0dbab
+e9d39fe2c992d7bd83cbb074bda164ad92569d83498b733b7c642e6e5823634e1c5a4716
+5441134e3d114a390f47370d47360c47360c46360b45340b42330b4b3c1a534424483811
+4534074a390a4b3a0d4d3c124e3f1850401e50411f4a3d1e493d1e4f43235648275f502a
+68582e725f3279663676684782704589764782765a8f8b82c2c1c0edecedfcfbfcfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefefeffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffefffffefffffefffefdfefdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fefdfeffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fdfdfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfcfbfcf0eff0cccbcb73716d37322647381547360847350b4d3b0e56430f634d12
+755b16896b1c9f7c22b48d28c69b31d5a93ae1b343e9bc4feec25df2c96bf6cc74f7d17d
+f8d586f9d88ff9db98f9dea0f9e0a7f9e2adf8e2b0f6e0b1f3deb0f1dcadecd6a4e6cf9b
+dec690d4bc83c8ae74baa166ab92579b824a8b733e7c65326f592764501f5c4919564315
+513f114d3c1149380e47370d47360c47360c47360a48360b4b3c1a544523504017493b1c
+3f361d322b1b302a1e3c372d5b574e66635d7977728d8c889795929b99969f9d9aa19f9c
+a1a09ca2a09ca19f9a9f9d99a6a4a0c2c1bed8d7d7e9e8e9f8f7f8fdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefefeffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fffffffffffffffffffffffffffffffffffffffffffffffffffffffefefefefefefefefe
+fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe
+fffefeffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fdfdfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfafafaedecec9c9b9b45423b41372048370a47350949380c4e3c0e
+594510664f14775d198b6d1ea07d25b48e2ec59d39d2a944dcb351e4bd5fe9c26bedc773
+f0cb7bf1d084f2d38cf3d593f2d799f2d99ff1d9a1eed6a1ebd4a0e7cf9be1c993d7c089
+ceb67ec2aa71b69d64a78f5799804b89723f7c6635705b2b6651215e4a1b584617534113
+4e3d114c3b1049380e47370d47360c4736094536104137224a422e3c352529251d5a5852
+80807da8a7a6c7c7c7dadadae8e7e7edecedf0efeff2f2f2f4f3f4f4f3f4f5f4f5f5f4f5
+f5f4f5f5f4f5f4f3f4f4f3f4f5f4f5f9f8f9fcfbfcfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefefeffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fdfdfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfefdfefefefefaf9fad4d4d45554532f2a204b3b1747350847370b
+49390d513f0f5b4713675016765c1b886b219a7a2aab8a34ba9640c6a14dd0ac5bd6b363
+dcb96ce0be74e2c37ce4c582e4c687e3c78be1c88ddec68ddac18ad4bd85cbb37dc2aa74
+b89f69ab945e9e8753917a48846e3e7964356e592b6551235e4b1d594619554315513f12
+4d3c114a390f48370d47360b47370b413417221e151414135554539e9e9dd8d8d8f4f3f4
+f9f8f9faf9fafcfbfcfcfbfcfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefefeffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
+fdfdfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfefdfeffffffffffffffffffffffffffffff919191484541453c2449380e
+47360b48370c4d3b0f5341115b4714665018735a1d8066258f722d9c7e37a78942b0924e
+b89956bfa05dc4a765c7ac6ac9af6fcaaf73c8ae74c4ab73bfa770b9a16cb09863a8905d
+9c8654927c4b8872437e683b7460346c592c665225604c1f5a481a5643165341134f3e11
+4c3b0f4a390d47360c443613342d20333231767676cfcfcff7f7f7fdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfefdfefffefffffefffffefffffeff
+fffefffffefffffefffffefffffefffffefffffefffffefffffefffffefffffefffffeff
+fffefffffefffffefffffefffffefffffefffffefffffefffffefffffefffffefffffeff
+fffefffffefffffefffffefffffefffffefffffefffffefffffefffffefffffefffffeff
+fffefffffefffffefffffefffffefffffefffffefffffefffffefffffefffffefffffeff
+fffefffffefffffefffffefffffefffffefffffefffffefffffefffffefffffefffffeff
+fffefffffefffffefffffefffffefffffefffffefffffefffffefffffefffffefffffeff
+fffefffffefffffefffffefffffefffffefffffefffffefffffefffffefffffefffffeff
+fffefffffefffffefffffefffffefffffefffffefffffefffffefffffefffffefffffeff
+fffefffffefffffefffffefffffefffffefffffefffffefffffefffffefffffefffffeff
+fffefffffefffffefffffefffffefffffefffffefffffefffffefffffefffffefffffeff
+fffefffffefffffefffffefffffefffffefffffefffffefffffefffffefffffefffffeff
+fffefffffefffffefffffefffffefffffefffffefffffefffffefffffefffffefffffeff
+fffefffffefffffefffffefffffefffffefffffefffffefffffefffffefffffefffffeff
+fffefffffefffffefffffefffffefffffefffffefffffefffffefffffefffffefffffeff
+fffefffffefffffefffffefffffefffffefffffefffffefffffefffffefffffefffffeff
+fffefffffefffffefffffefffffefffffefffffefffffefffffefffffefffffefffffeff
+fffefffffefffffefffffefffffefffffefffffefffffefffffefffffefffffefffffeff
+fffefffffefffffefffffefffffefffffefffffefffffefffffefffffefffffefffffeff
+fffefffffefffffefffffefffffefffffefffffefffffefffffefffffefffffefffefefe
+fdfdfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfdfdfefefefffefefffefffffefffffefffffefffffefffbfafbcfcecf6a6a683e3930
+473b1e47370e49380d4b3a0e4e3d105542125c4816624e1a6c551f765f267e672d876f36
+90763f967d469d844ca28a51a58c55a58d57a68e59a48d58a08a579a8453937e4e8e7849
+8670437f6a3e776337705d316a572b645224604d205b481b574417544114513f114e3c10
+4a390e4335113a322134332f656464cac9caf9f8f9fdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdefeeefa7a6a6
+5e5d5a484236473a1d4838114d3b0f4f3d0f5340125643145b4718614d1d6652216b5727
+715c2d7761337d6738826c3c856f40887142897244887244867143836e417f6b3e7b673b
+776338725f346d5a2f68552a645124604d1f5c491b5845175643145341134c3b11413413
+3b33243e3c39636262b8b7b8f4f3f4fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfbfafb
+e1e1e29e9e9e62615f4b463a453a204839144f3e145442135643145845165c491a5f4c1e
+624f226753276b592c6f5c2f725e32746035766136766237766137756136725f34705d31
+6d5a2f6a572b665326635021604d1d5d4a1a594619534218493b163d3219413b2f474745
+706f6fbababaf2f1f2fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfaf9fadddcdda8a7a77674735a564e4b433243371c493b1954441b58471b5b481a
+5e4b1b604d1e614f2264512567542869562a6a572c6b582d6c582d6b582d6a572b685528
+675325655123614e225d4b2255451f483b1b3e341c47403253514b636261929192cdcccd
+f6f5f6fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfcfbfcecebecc4c4c49b9b9a767574615e59554f413e3622453a20
+4c3f205a4b2665532a64522a64522966542a68562b68562c67552c65532d63522b635129
+544627493d22433923463e2e56524861605c727271989898c2c2c2eae9eafbfafbfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdf9f9fae7e7e7cdcccdb3b3b3919090848381
+6765615b523f8c753e8a7135796536715e346a593165542f5f502c5a4a28594821534932
+4947417978758a8a899d9c9cbab9b9d2d1d2eaeaeafaf9fafdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfcfbfcf6f5f6eaeaea
+cdcdcd8e8a837a6b4a977f46987e4687703f7662376655305d4e2a56482b443a23444039
+aaaaaae3e2e3f1f0f1f9f8f9fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+faf9fad8d7d785827c8e7843c59e3aab882f876b2767521f554316453b27474542b5b5b4
+f4f3f4fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdf6f6f7b0ada99c813cd3a224af861d8164165e48104a3808362e1b777777f8f7f8
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdf2f1f2aeaba3a7893ad2a120a7811c795e1458430f4635083b311b737271fcfbfc
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdeaeaeaaaa598b3913ad2a11fa6801d775c1455410e463408463819353432f6f5f6
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfddededea59b85c7a03ad4a31ea8821d795d1456430e46350a473711242220e3e3e3
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdd4d3d2a39470d8ac39d6a41fad861e7d611659440f48360b4735092d2a22bcbcbc
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+faf9facdcbc7af985ce8b52ddba823b58c1f8667175f491049380c4635073730218c8b8b
+fcfbfcfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+f0eff0b6b1a5b79741f1b923dfac26bf9321927019674f114c3b0d44330842351b5d5b59
+f4f3f4fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+e2e1e1a99e83d7ac3ef2ba22e4b027c99b239e7a1b715613523f0e45340b44350c36332e
+cecdcefdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdf9f8f9
+cbcac6a4905af0ba2ef4bb26e8b328d1a124aa831e7b5f1559440f48360b4434083d3626
+8a8a89faf9fafdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdedeced
+aba596bf9d46f7be22f5bd2aecb629d8a725b58b1f876817614b104a380c443309423415
+53504ddddcddfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfaf9fad8d6d4
+ad9d73ebb833f7be25f6be2befb829ddab27be93219270196850124d3b0d44330a42330a
+40392d999897faf9fafdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdf0efefa8a293
+cfac55f8be22f8bf2af6be2bf1ba2ae2af27c599229b781b70561354400e46350b44330a
+413414575450cecdcefdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdf9f8f9b9b7b4a5905b
+f0ba2af8bf27f8c02bf6be2bf1bb2ae5b127cc9d23a47f1c785c1559450f47370c44330b
+44330a443b2383827feae9eafdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdd5d5d4b0a485e8b632
+f8be23f8c02bf8c02bf7bf2bf3bc2ae9b428d2a224ad851d8164175f491049380c45340b
+44330a44350f504839a3a1a0f5f5f6fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfddbdbdbaca490e5b63ef8bd21
+f8c02bf8c02bf8c02bf7bf2bf4bd2aebb629d8a625b68c1f8a6a17644d104c3a0d46350b
+44330b44340a433511524c3fabaaa8f6f5f6fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfcfbfcf9f7f8c1c0beb3a992ecba37f8bd20f8c02b
+f8c02bf8c02bf8c02bf7bf2bf5be2aeeb829dcaa26bd93219472196b5212503e0d46350b
+44330b46350b4635094435105048379a9894e6e6e6fbfafbfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfbfafbf8f8f8f6f5f5f2f1f0d8d5d1b0a897b59c61f0ba2af8bd21f8c02bf8c02b
+f8c02bf8c02bf7bf2bf6be2bf4bd2aedb729deac27c498229d791b73591456420f47360b
+44330b45340b46350b46350a44340c493d2369655ab4b2b0e6e5e5f3f2f2f8f7f8fbfafb
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfcfbfc
+f4f3f4dfdcd8cec9bdc2baa6bbae8abaa061deb23ff5bc21f8bf25f8c02bf8c02bf8c02b
+f8c02bf8c02bf7bf2bf5bd2bf2bb2aeab528dcaa26c59822a37e1c7c60155e48104c3b0d
+46350b44330b46350b46350b45340a453409423311382f1a615a4a908b83b3b1adc6c5c3
+e7e6e6fcfbfcfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdf4f3f4
+c9c5bcad996ac5a04bdbae43efb92df7bc1df8bd1ff8bf26f8bf27f8bf26f8bf26f8bf26
+f8bf26f7be26f6bd26f3ba25ecb624e2ae23d3a221bd921da17c19816314644c0f513e0c
+47360a45340a45340a46350a46350a46350a46350946350743330a4032123c3115372f1b
+76736febeaebfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdf1f0f1ecebececebec
+ecebececebececebececebececebececebececebececebececebececebececebececebec
+ecebececebececebececebececebececebececebececebececebececebececebececebec
+ecebececebececebececebececebececebececebececebececebececebececebececebec
+ecebececebececebececebececebececebececebececebececebececebececebececebec
+ecebececebececebececebececebececebececebececebececebececebececebececebec
+ecebececebececebececebececebececebececebececebececebececebececebececebec
+ecebececebececebececebececebececebececebececebececebececebececebececebec
+ecebececebececebececebececebececebececebececebececebececebececebececebec
+ecebececebececebececebececebececebececebececebececebececebececebececebec
+ecebececebececebececebececebececebececebececebececebececebececebececebec
+ecebececebececebececebececebececebececebececebececebececebececebececebec
+ecebececebececebececebececebececebececebececebececebececebececebececebec
+ecebececebececebececebececebececebececebececebececebececebececebececebec
+ecebececebececebececebececebececebececebececebececebececebececebececebec
+ecebececebececebececebececebececebececebececebececebececebececebececebec
+ecebececebececebececebececebececebececebececebececebececebececebececebec
+ecebececebececebececebececebececebececebececebececebececebececebececebec
+ecebececebececebececebececebececebececebececebececebececebececebececebec
+ecebececebececebececebececebececebececebececebececebececebececebececebec
+ecebececebececebececebececebececebececebececebececebececebececebececebec
+ecebececebececebececebececebececebececebececebececebececebececebececebec
+ecebececececedededeeedeeeeeeeeefeeeff0eff0f1f0f1f2f1f2f3f3f3f5f4f5d6d6d6
+968d79c29d48deac2eddad2edeae2fdeae31deae32deae32deae32deaf32deaf32deaf32
+deae32ddae32dcac31d6a730cba02dbd942aad87259b792186691d71581a5a46144b3b10
+41330e3f310e3f310e3f310e3f310e3f310e3f310e3f310e3f320d3f310c3e300c41320d
+33302aacacacf5f4f5f4f3f4f2f2f2f1f0f1f0eff0efeeefeeeeeeeeedeeedecedececec
+ececececebececebececebececebececebececebececebececebececebececebececebec
+ecebececebececebececebececebececebececebececebececebececebecf8f7f8fdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd9e9d9e787878787878
+787878787878787878787878787878787878787878787878787878787878787878787878
+787878787878787878787878787878787878787878787878787878787878787878787878
+787878787878787878787878787878787878787878787878787878787878787878787878
+787878787878787878787878787878787878787878787878787878787878787878787878
+787878787878787878787878787878787878787878787878787878787878787878787878
+787878787878787878787878787878787878787878787878787878787878787878787878
+787878787878787878787878787878787878787878787878787878787878787878787878
+787878787878787878787878787878787878787878787878787878787878787878787878
+787878787878787878787878787878787878787878787878787878787878787878787878
+787878787878787878787878787878787878787878787878787878787878787878787878
+787878787878787878787878787878787878787878787878787878787878787878787878
+787878787878787878787878787878787878787878787878787878787878787878787878
+787878787878787878787878787878787878787878787878787878787878787878787878
+787878787878787878787878787878787878787878787878787878787878787878787878
+787878787878787878787878787878787878787878787878787878787878787878787878
+787878787878787878787878787878787878787878787878787878787878787878787878
+787878787878787878787878787878787878787878787878787878787878787878787878
+787878787878787878787878787878787878787878787878787878787878787878787878
+787878787878787878787878787878787878787878787878787878787878787878787878
+787878787878787878787878787878787878787878787878787878787878787878787878
+787878787878787878787878787878787878787878787878787878787878787878787878
+7878787979797a7a7a7b7b7b7c7c7c7d7d7d7f7f7f8080808282828585858787876f6f6f
+413e385a4e36675837655737655737655737655737655737655737655837655837655837
+6557376456366154355d5133574c3050452c483e274038233a321f332c1c282316211d12
+1d19101c180f1c180f1c180f1c180f1c180f1c180f1c180f1c180f1c180f1c180f1d190f
+171613504f4f8787878686868383838181817f7f7f7d7d7d7c7c7c7b7b7b797979787878
+787878787878787878787878787878787878787878787878787878787878787878787878
+787878787878787878787878787878787878787878787878787878777777cfcfcffbfafb
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd8b8a8b5d5d5d5d5d5d
+5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d
+5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d
+5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d
+5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d
+5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d
+5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d
+5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d
+5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d
+5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d
+5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d
+5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d
+5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d
+5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d
+5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d
+5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d
+5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d
+5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d
+5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d
+5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d
+5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d
+5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d
+5e5e5e5e5e5e6060606060605e5e5e5d5d5d5d5d5d5d5d5d5c5c5c5c5c5c5c5c5c5d5d5d
+5d5d5d5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5b5b5b5b5b5b5c5c5c
+5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5d5d5d5d5d5d
+5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d
+5d5d5d5d5d5d5c5c5c5c5c5c5c5c5c5c5c5c5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d
+5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d
+5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5b5b5bc5c5c5faf9fa
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdeaeaeae3e2e3e3e2e3
+e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3
+e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3
+e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3
+e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3
+e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3
+e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3
+e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3
+e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3
+e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3
+e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3
+e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3
+e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3
+e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3
+e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3
+e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3
+e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3
+e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3
+e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3
+e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3
+e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3
+e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3
+e3e2e3e4e3e4e5e4e5e5e4e5e3e3e3e3e2e3e3e2e3e2e1e2e2e1e2e2e1e2e2e1e2e2e2e2
+e2e2e2e2e1e2e1e1e1e2e1e2e1e1e1e2e1e2e2e1e2e2e1e2e2e1e2e1e0e1e1e0e1e1e1e1
+e2e1e2e2e1e2e2e1e2e2e1e2e2e1e2e2e1e2e2e1e2e2e1e2e2e1e2e2e1e2e2e1e2e3e2e3
+e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3
+e3e2e3e3e2e3e2e1e2e2e1e2e2e1e2e2e1e2e2e2e2e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3
+e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3
+e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e3e2e3e2e2e2e1e0e1f4f3f4fdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfdfdfcfd
+fdfcfdfdfcfd
+
+showpage
+
+% stop using temporary dictionary
+end
+
+% restore original state
+origstate restore
+
+%%Trailer
--- /dev/null
+%!PS-Adobe-2.0 EPSF-2.0
+%%Title: bldtree.eps
+%%Creator: fig2dev Version 3.2 Patchlevel 3c
+%%CreationDate: Thu Jul 26 11:57:29 2001
+%%For: tajchman@nikyo (Marc Tajchman - SFME/LGLS)
+%%BoundingBox: 0 0 437 287
+%%Magnification: 1.0000
+%%EndComments
+/$F2psDict 200 dict def
+$F2psDict begin
+$F2psDict /mtrx matrix put
+/col-1 {0 setgray} bind def
+/col0 {0.000 0.000 0.000 srgb} bind def
+/col1 {0.000 0.000 1.000 srgb} bind def
+/col2 {0.000 1.000 0.000 srgb} bind def
+/col3 {0.000 1.000 1.000 srgb} bind def
+/col4 {1.000 0.000 0.000 srgb} bind def
+/col5 {1.000 0.000 1.000 srgb} bind def
+/col6 {1.000 1.000 0.000 srgb} bind def
+/col7 {1.000 1.000 1.000 srgb} bind def
+/col8 {0.000 0.000 0.560 srgb} bind def
+/col9 {0.000 0.000 0.690 srgb} bind def
+/col10 {0.000 0.000 0.820 srgb} bind def
+/col11 {0.530 0.810 1.000 srgb} bind def
+/col12 {0.000 0.560 0.000 srgb} bind def
+/col13 {0.000 0.690 0.000 srgb} bind def
+/col14 {0.000 0.820 0.000 srgb} bind def
+/col15 {0.000 0.560 0.560 srgb} bind def
+/col16 {0.000 0.690 0.690 srgb} bind def
+/col17 {0.000 0.820 0.820 srgb} bind def
+/col18 {0.560 0.000 0.000 srgb} bind def
+/col19 {0.690 0.000 0.000 srgb} bind def
+/col20 {0.820 0.000 0.000 srgb} bind def
+/col21 {0.560 0.000 0.560 srgb} bind def
+/col22 {0.690 0.000 0.690 srgb} bind def
+/col23 {0.820 0.000 0.820 srgb} bind def
+/col24 {0.500 0.190 0.000 srgb} bind def
+/col25 {0.630 0.250 0.000 srgb} bind def
+/col26 {0.750 0.380 0.000 srgb} bind def
+/col27 {1.000 0.500 0.500 srgb} bind def
+/col28 {1.000 0.630 0.630 srgb} bind def
+/col29 {1.000 0.750 0.750 srgb} bind def
+/col30 {1.000 0.880 0.880 srgb} bind def
+/col31 {1.000 0.840 0.000 srgb} bind def
+
+end
+save
+newpath 0 287 moveto 0 0 lineto 437 0 lineto 437 287 lineto closepath clip newpath
+-46.0 335.0 translate
+1 -1 scale
+
+/cp {closepath} bind def
+/ef {eofill} bind def
+/gr {grestore} bind def
+/gs {gsave} bind def
+/sa {save} bind def
+/rs {restore} bind def
+/l {lineto} bind def
+/m {moveto} bind def
+/rm {rmoveto} bind def
+/n {newpath} bind def
+/s {stroke} bind def
+/sh {show} bind def
+/slc {setlinecap} bind def
+/slj {setlinejoin} bind def
+/slw {setlinewidth} bind def
+/srgb {setrgbcolor} bind def
+/rot {rotate} bind def
+/sc {scale} bind def
+/sd {setdash} bind def
+/ff {findfont} bind def
+/sf {setfont} bind def
+/scf {scalefont} bind def
+/sw {stringwidth} bind def
+/tr {translate} bind def
+/tnt {dup dup currentrgbcolor
+ 4 -2 roll dup 1 exch sub 3 -1 roll mul add
+ 4 -2 roll dup 1 exch sub 3 -1 roll mul add
+ 4 -2 roll dup 1 exch sub 3 -1 roll mul add srgb}
+ bind def
+/shd {dup dup currentrgbcolor 4 -2 roll mul 4 -2 roll mul
+ 4 -2 roll mul srgb} bind def
+/$F2psBegin {$F2psDict begin /$F2psEnteredState save def} def
+/$F2psEnd {$F2psEnteredState restore end} def
+
+$F2psBegin
+%%Page: 1 1
+10 setmiterlimit
+ 0.06000 0.06000 sc
+%
+% Fig objects follow
+%
+% Polyline
+15.000 slw
+n 2475 2025 m 3450 2025 l 3450 2475 l 2475 2475 l
+ cp gs col0 s gr
+/Times-Roman ff 180.00 scf sf
+2625 2325 m
+gs 1 -1 sc (Module 1) col0 sh gr
+% Polyline
+n 3000 3900 m 3900 3900 l 3900 4350 l 3000 4350 l
+ cp gs col0 s gr
+/Times-Roman ff 180.00 scf sf
+3150 4200 m
+gs 1 -1 sc (src) col0 sh gr
+% Polyline
+n 1725 3900 m 2700 3900 l 2700 4350 l 1725 4350 l
+ cp gs col0 s gr
+/Times-Roman ff 180.00 scf sf
+1800 4200 m
+gs 1 -1 sc (resources) col0 sh gr
+% Polyline
+n 1275 2025 m 2250 2025 l 2250 2475 l 1275 2475 l
+ cp gs col0 s gr
+/Times-Roman ff 180.00 scf sf
+1575 2325 m
+gs 1 -1 sc (inc) col0 sh gr
+% Polyline
+n 1080 2775 m 900 2775 900 3270 180 arcto 4 {pop} repeat
+ 900 3450 1995 3450 180 arcto 4 {pop} repeat
+ 2175 3450 2175 2955 180 arcto 4 {pop} repeat
+ 2175 2775 1080 2775 180 arcto 4 {pop} repeat
+ cp gs col6 1.00 shd ef gr gs col0 s gr
+/Times-Bold ff 180.00 scf sf
+1050 3075 m
+gs 1 -1 sc (Exported) col0 sh gr
+/Times-Bold ff 180.00 scf sf
+1050 3300 m
+gs 1 -1 sc (header files) col0 sh gr
+% Polyline
+n 5040 4725 m 4800 4725 4800 5310 240 arcto 4 {pop} repeat
+ 4800 5550 5910 5550 240 arcto 4 {pop} repeat
+ 6150 5550 6150 4965 240 arcto 4 {pop} repeat
+ 6150 4725 5040 4725 240 arcto 4 {pop} repeat
+ cp gs col6 1.00 shd ef gr gs col0 s gr
+/Times-Bold ff 180.00 scf sf
+5025 4950 m
+gs 1 -1 sc (Object files) col0 sh gr
+/Times-Bold ff 180.00 scf sf
+5025 5175 m
+gs 1 -1 sc (libraries) col0 sh gr
+/Times-Bold ff 180.00 scf sf
+5025 5400 m
+gs 1 -1 sc (executables) col0 sh gr
+% Polyline
+n 4125 2025 m 5175 2025 l 5175 2475 l 4125 2475 l
+ cp gs col0 s gr
+/Times-Roman ff 180.00 scf sf
+4275 2325 m
+gs 1 -1 sc (resources) col0 sh gr
+% Polyline
+n 5325 2025 m 6375 2025 l 6375 2475 l 5325 2475 l
+ cp gs col0 s gr
+/Times-Roman ff 180.00 scf sf
+5550 2325 m
+gs 1 -1 sc (bin) col0 sh gr
+% Polyline
+n 6525 2025 m 7575 2025 l 7575 2475 l 6525 2475 l
+ cp gs col0 s gr
+/Times-Roman ff 180.00 scf sf
+6750 2325 m
+gs 1 -1 sc (lib) col0 sh gr
+% Polyline
+n 6330 975 m 6150 975 6150 1170 180 arcto 4 {pop} repeat
+ 6150 1350 7695 1350 180 arcto 4 {pop} repeat
+ 7875 1350 7875 1155 180 arcto 4 {pop} repeat
+ 7875 975 6330 975 180 arcto 4 {pop} repeat
+ cp gs col2 1.00 shd ef gr gs col0 s gr
+/Times-Bold ff 180.00 scf sf
+6375 1200 m
+gs 1 -1 sc (Links to libraries) col0 sh gr
+% Polyline
+n 3705 2850 m 3525 2850 3525 3345 180 arcto 4 {pop} repeat
+ 3525 3525 5670 3525 180 arcto 4 {pop} repeat
+ 5850 3525 5850 3030 180 arcto 4 {pop} repeat
+ 5850 2850 3705 2850 180 arcto 4 {pop} repeat
+ cp gs col2 1.00 shd ef gr gs col0 s gr
+/Times-Bold ff 180.00 scf sf
+3675 3150 m
+gs 1 -1 sc (Link to corresponding) col0 sh gr
+/Times-Bold ff 180.00 scf sf
+3675 3375 m
+gs 1 -1 sc (directories in source tree) col0 sh gr
+% Polyline
+n 6255 2850 m 6075 2850 6075 3345 180 arcto 4 {pop} repeat
+ 6075 3525 7845 3525 180 arcto 4 {pop} repeat
+ 8025 3525 8025 3030 180 arcto 4 {pop} repeat
+ 8025 2850 6255 2850 180 arcto 4 {pop} repeat
+ cp gs col2 1.00 shd ef gr gs col0 s gr
+/Times-Bold ff 180.00 scf sf
+6225 3150 m
+gs 1 -1 sc (Shell scripts) col0 sh gr
+/Times-Bold ff 180.00 scf sf
+6225 3375 m
+gs 1 -1 sc (Links to executables) col0 sh gr
+% Polyline
+n 2700 5100 m 3675 5100 l 3675 5550 l 2700 5550 l
+ cp gs col0 s gr
+/Times-Roman ff 180.00 scf sf
+2775 5400 m
+gs 1 -1 sc (Unit 1) col0 sh gr
+% Polyline
+n 3675 825 m 5325 825 l 5325 1425 l 3675 1425 l
+ cp gs col0 s gr
+% Polyline
+n 4725 1425 m
+ 4875 2025 l gs col0 s gr
+% Polyline
+n 3975 1425 m
+ 1800 2025 l gs col0 s gr
+% Polyline
+n 5100 1425 m
+ 7050 2025 l gs col0 s gr
+% Polyline
+n 3000 2025 m
+ 4200 1425 l gs col0 s gr
+% Polyline
+ [60] 0 sd
+n 3675 4350 m
+ 4425 5025 l gs col0 s gr [] 0 sd
+% Polyline
+ [60] 0 sd
+n 3450 4350 m
+ 3900 5025 l gs col0 s gr [] 0 sd
+% Polyline
+ [60] 0 sd
+n 4350 1425 m
+ 3675 2025 l gs col0 s gr [] 0 sd
+% Polyline
+ [60] 0 sd
+n 4500 1425 m
+ 3975 2025 l gs col0 s gr [] 0 sd
+% Polyline
+n 5100 1425 m
+ 5625 2025 l gs col0 s gr
+% Polyline
+n 3300 4350 m
+ 3150 5100 l gs col0 s gr
+% Polyline
+n 2700 2475 m
+ 2400 3900 l gs col0 s gr
+% Polyline
+n 3075 2475 m
+ 3375 3900 l gs col0 s gr
+% Polyline
+2 slj
+gs clippath
+1287 2295 m 1292 2205 l 1143 2198 l 1254 2249 l 1139 2288 l cp
+eoclip
+n 900 3225 m 899 3223 l 898 3220 l 896 3213 l 893 3202 l 888 3188 l
+ 882 3169 l 875 3146 l 868 3120 l 859 3091 l 850 3058 l
+ 841 3024 l 832 2988 l 823 2951 l 815 2914 l 808 2875 l
+ 801 2836 l 796 2797 l 792 2758 l 790 2718 l 790 2677 l
+ 792 2637 l 796 2595 l 802 2554 l 812 2514 l 825 2475 l
+ 842 2436 l 862 2402 l 884 2373 l 907 2348 l 931 2327 l
+ 956 2309 l 981 2295 l 1007 2283 l 1034 2274 l 1060 2267 l
+ 1087 2261 l 1113 2257 l 1139 2254 l 1164 2252 l 1187 2250 l
+ 1209 2250 l 1227 2249 l 1243 2249 l 1255 2249 l
+ 1275 2250 l gs col0 s gr gr
+
+% arrowhead
+0 slj
+n 1139 2288 m 1254 2249 l 1143 2198 l 1164 2244 l 1139 2288 l
+ cp gs 0.00 setgray ef gr col0 s
+% Polyline
+2 slj
+gs clippath
+7160 2051 m 7247 2027 l 7207 1884 l 7194 2005 l 7120 1908 l cp
+eoclip
+n 7125 1350 m 7125 1352 l 7124 1356 l 7123 1362 l 7122 1372 l 7121 1385 l
+ 7119 1400 l 7118 1418 l 7117 1437 l 7116 1459 l 7115 1482 l
+ 7115 1509 l 7116 1538 l 7118 1571 l 7121 1609 l 7125 1650 l
+ 7130 1688 l 7135 1724 l 7140 1758 l 7146 1790 l 7151 1820 l
+ 7157 1848 l 7163 1875 l 7169 1900 l 7174 1924 l 7180 1947 l
+ 7185 1967 l 7189 1985 l 7193 2000 l
+ 7200 2025 l gs col0 s gr gr
+
+% arrowhead
+0 slj
+n 7120 1908 m 7194 2005 l 7207 1884 l 7169 1918 l 7120 1908 l
+ cp gs 0.00 setgray ef gr col0 s
+% Polyline
+2 slj
+gs clippath
+2055 3883 m 2125 3939 l 2218 3824 l 2113 3884 l 2148 3768 l cp
+eoclip
+n 3525 3150 m 3524 3150 l 3522 3149 l 3517 3147 l 3510 3145 l 3501 3142 l
+ 3489 3139 l 3474 3135 l 3456 3130 l 3436 3126 l 3413 3121 l
+ 3389 3116 l 3363 3112 l 3336 3109 l 3307 3107 l 3276 3106 l
+ 3244 3106 l 3211 3109 l 3175 3113 l 3137 3119 l 3096 3128 l
+ 3053 3140 l 3006 3156 l 2957 3175 l 2904 3198 l 2850 3225 l
+ 2803 3251 l 2756 3279 l 2710 3308 l 2667 3338 l 2625 3369 l
+ 2586 3399 l 2548 3430 l 2512 3461 l 2477 3491 l 2444 3522 l
+ 2412 3553 l 2381 3584 l 2351 3615 l 2322 3645 l 2295 3675 l
+ 2268 3704 l 2243 3733 l 2219 3760 l 2197 3785 l 2177 3808 l
+ 2159 3829 l 2143 3848 l 2130 3863 l 2120 3876 l 2112 3885 l
+
+ 2100 3900 l gs col0 s gr gr
+
+% arrowhead
+0 slj
+n 2148 3768 m 2113 3884 l 2218 3824 l 2169 3813 l 2148 3768 l
+ cp gs 0.00 setgray ef gr col0 s
+% Polyline
+2 slj
+gs clippath
+4154 2287 m 4124 2202 l 3983 2251 l 4105 2257 l 4013 2336 l cp
+eoclip
+n 3525 3150 m 3524 3149 l 3523 3146 l 3521 3141 l 3517 3133 l 3512 3122 l
+ 3506 3109 l 3499 3092 l 3492 3073 l 3484 3052 l 3476 3029 l
+ 3469 3005 l 3462 2979 l 3456 2952 l 3451 2925 l 3449 2897 l
+ 3447 2867 l 3449 2837 l 3452 2805 l 3459 2772 l 3469 2737 l
+ 3484 2700 l 3502 2663 l 3525 2625 l 3550 2591 l 3577 2559 l
+ 3606 2529 l 3635 2501 l 3666 2475 l 3697 2452 l 3728 2431 l
+ 3760 2411 l 3791 2392 l 3823 2375 l 3855 2359 l 3887 2344 l
+ 3919 2330 l 3950 2317 l 3979 2304 l 4007 2293 l 4033 2283 l
+ 4056 2275 l 4076 2267 l 4092 2261 l 4105 2257 l
+ 4125 2250 l gs col0 s gr gr
+
+% arrowhead
+0 slj
+n 4013 2336 m 4105 2257 l 3983 2251 l 4020 2286 l 4013 2336 l
+ cp gs 0.00 setgray ef gr col0 s
+% Polyline
+2 slj
+gs clippath
+3657 5355 m 3662 5445 l 3810 5437 l 3696 5399 l 3805 5347 l cp
+eoclip
+n 4800 5175 m 4799 5176 l 4796 5177 l 4791 5180 l 4784 5184 l 4774 5189 l
+ 4761 5195 l 4746 5203 l 4728 5211 l 4709 5220 l 4687 5229 l
+ 4663 5238 l 4637 5248 l 4608 5258 l 4576 5269 l 4541 5279 l
+ 4500 5290 l 4455 5302 l 4405 5313 l 4350 5325 l 4306 5333 l
+ 4263 5341 l 4220 5348 l 4179 5355 l 4139 5360 l 4101 5365 l
+ 4064 5370 l 4028 5374 l 3993 5377 l 3960 5380 l 3927 5383 l
+ 3896 5386 l 3865 5388 l 3835 5390 l 3808 5392 l 3782 5394 l
+ 3758 5395 l 3737 5397 l 3719 5398 l 3704 5398 l 3693 5399 l
+
+ 3675 5400 l gs col0 s gr gr
+
+% arrowhead
+0 slj
+n 3805 5347 m 3696 5399 l 3810 5437 l 3785 5394 l 3805 5347 l
+ cp gs 0.00 setgray ef gr col0 s
+% Polyline
+2 slj
+gs clippath
+5786 2428 m 5738 2505 l 5864 2584 l 5793 2486 l 5912 2508 l cp
+eoclip
+n 6450 2850 m 6449 2849 l 6446 2848 l 6441 2846 l 6434 2843 l 6424 2839 l
+ 6412 2833 l 6398 2827 l 6382 2820 l 6365 2811 l 6346 2803 l
+ 6326 2793 l 6303 2782 l 6279 2769 l 6251 2755 l 6221 2739 l
+ 6187 2720 l 6150 2700 l 6116 2681 l 6083 2662 l 6052 2644 l
+ 6022 2627 l 5995 2611 l 5969 2595 l 5944 2580 l 5920 2566 l
+ 5897 2552 l 5876 2538 l 5855 2526 l 5837 2514 l 5820 2503 l
+ 5806 2494 l 5794 2487 l
+ 5775 2475 l gs col0 s gr gr
+
+% arrowhead
+0 slj
+n 5912 2508 m 5793 2486 l 5864 2584 l 5869 2534 l 5912 2508 l
+ cp gs 0.00 setgray ef gr col0 s
+/Times-Roman ff 180.00 scf sf
+3825 1200 m
+gs 1 -1 sc (Root Build Tree) col0 sh gr
+$F2psEnd
+rs
--- /dev/null
+#FIG 3.2
+Portrait
+Center
+Inches
+Letter
+100.00
+Single
+-2
+1200 2
+6 2475 2025 3450 2475
+2 2 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 5
+ 2475 2025 3450 2025 3450 2475 2475 2475 2475 2025
+4 0 0 50 0 1 12 0.0000 0 135 705 2625 2325 Module 1\001
+-6
+6 3000 3900 3900 4350
+2 2 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 5
+ 3000 3900 3900 3900 3900 4350 3000 4350 3000 3900
+4 0 0 50 0 1 12 0.0000 0 90 240 3150 4200 src\001
+-6
+6 1725 3900 2700 4350
+2 2 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 5
+ 1725 3900 2700 3900 2700 4350 1725 4350 1725 3900
+4 0 0 50 0 1 12 0.0000 0 90 750 1800 4200 resources\001
+-6
+6 1275 2025 2250 2475
+2 2 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 5
+ 1275 2025 2250 2025 2250 2475 1275 2475 1275 2025
+4 0 0 50 0 1 12 0.0000 0 135 225 1575 2325 inc\001
+-6
+6 825 2700 2250 3525
+2 4 0 2 0 6 50 0 20 0.000 0 0 12 0 0 5
+ 2175 3450 900 3450 900 2775 2175 2775 2175 3450
+4 0 0 50 0 2 12 0.0000 0 180 735 1050 3075 Exported\001
+4 0 0 50 0 2 12 0.0000 0 135 960 1050 3300 header files\001
+-6
+6 4725 4650 6225 5625
+2 4 0 2 0 6 50 0 20 0.000 0 0 16 0 0 5
+ 6150 5550 4800 5550 4800 4725 6150 4725 6150 5550
+4 0 0 50 0 2 12 0.0000 4 180 915 5025 4950 Object files\001
+4 0 0 50 0 2 12 0.0000 4 135 675 5025 5175 libraries\001
+4 0 0 50 0 2 12 0.0000 0 135 975 5025 5400 executables\001
+-6
+6 4125 2025 5175 2475
+2 2 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 5
+ 4125 2025 5175 2025 5175 2475 4125 2475 4125 2025
+4 0 0 50 0 0 12 0.0000 4 90 750 4275 2325 resources\001
+-6
+6 5325 2025 6375 2475
+2 2 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 5
+ 5325 2025 6375 2025 6375 2475 5325 2475 5325 2025
+4 0 0 50 0 0 12 0.0000 4 135 225 5550 2325 bin\001
+-6
+6 6525 2025 7575 2475
+2 2 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 5
+ 6525 2025 7575 2025 7575 2475 6525 2475 6525 2025
+4 0 0 50 0 0 12 0.0000 4 135 180 6750 2325 lib\001
+-6
+6 6075 900 7950 1425
+2 4 0 2 0 2 50 0 20 0.000 0 0 12 0 0 5
+ 7875 1350 6150 1350 6150 975 7875 975 7875 1350
+4 0 0 50 0 2 12 0.0000 4 135 1380 6375 1200 Links to libraries\001
+-6
+6 3450 2775 5925 3600
+2 4 0 2 0 2 50 0 20 0.000 0 0 12 0 0 5
+ 5850 3525 3525 3525 3525 2850 5850 2850 5850 3525
+4 0 0 50 0 2 12 0.0000 0 180 1755 3675 3150 Link to corresponding\001
+4 0 0 50 0 2 12 0.0000 0 135 2055 3675 3375 directories in source tree\001
+-6
+6 6000 2775 8100 3600
+2 4 0 2 0 2 50 0 20 0.000 0 0 12 0 0 5
+ 8025 3525 6075 3525 6075 2850 8025 2850 8025 3525
+4 0 0 50 0 2 12 0.0000 0 180 975 6225 3150 Shell scripts\001
+4 0 0 50 0 2 12 0.0000 0 135 1680 6225 3375 Links to executables\001
+-6
+6 2700 5100 3675 5550
+2 2 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 5
+ 2700 5100 3675 5100 3675 5550 2700 5550 2700 5100
+4 0 0 50 0 1 12 0.0000 0 135 465 2775 5400 Unit 1\001
+-6
+2 2 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 5
+ 3675 825 5325 825 5325 1425 3675 1425 3675 825
+2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2
+ 4725 1425 4875 2025
+2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2
+ 3975 1425 1800 2025
+2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2
+ 5100 1425 7050 2025
+2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2
+ 3000 2025 4200 1425
+2 1 1 2 0 7 50 0 -1 4.000 0 0 -1 0 0 2
+ 3675 4350 4425 5025
+2 1 1 2 0 7 50 0 -1 4.000 0 0 -1 0 0 2
+ 3450 4350 3900 5025
+2 1 1 2 0 7 50 0 -1 4.000 0 0 -1 0 0 2
+ 4350 1425 3675 2025
+2 1 1 2 0 7 50 0 -1 4.000 0 0 -1 0 0 2
+ 4500 1425 3975 2025
+2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2
+ 5100 1425 5625 2025
+2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2
+ 3300 4350 3150 5100
+2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2
+ 2700 2475 2400 3900
+2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2
+ 3075 2475 3375 3900
+3 2 0 2 0 7 50 0 -1 0.000 0 1 0 3
+ 2 1 2.00 90.00 90.00
+ 900 3225 825 2475 1275 2250
+ 0.000 -1.000 0.000
+3 2 0 2 0 7 50 0 -1 0.000 0 1 0 3
+ 2 1 2.00 90.00 90.00
+ 7125 1350 7125 1650 7200 2025
+ 0.000 -1.000 0.000
+3 2 0 2 0 7 50 0 -1 0.000 0 1 0 3
+ 2 1 2.00 90.00 90.00
+ 3525 3150 2850 3225 2100 3900
+ 0.000 -1.000 0.000
+3 2 0 2 0 7 50 0 -1 0.000 0 1 0 3
+ 2 1 2.00 90.00 90.00
+ 3525 3150 3525 2625 4125 2250
+ 0.000 -1.000 0.000
+3 2 0 2 0 7 50 0 -1 0.000 0 1 0 3
+ 2 1 2.00 90.00 90.00
+ 4800 5175 4350 5325 3675 5400
+ 0.000 -1.000 0.000
+3 2 0 2 0 7 50 0 -1 0.000 0 1 0 3
+ 2 1 2.00 90.00 90.00
+ 6450 2850 6150 2700 5775 2475
+ 0.000 -1.000 0.000
+4 0 0 50 0 1 12 0.0000 0 135 1185 3825 1200 Root Build Tree\001
--- /dev/null
+# begin copy here ==========================================
+
+top_srcdir=@top_srcdir@
+top_builddir=../../..
+srcdir=@srcdir@
+VPATH=.:@srcdir@
+
+@COMMENCE@
+
+# Libraries targets
+LIB =
+LIB_SRC =
+LIB_MOC =
+LIB_CLIENT_IDL =
+LIB_SERVER_IDL =
+
+# Executable targets
+BIN =
+BIN_SRC =
+BIN_MOC =
+BIN_CLIENT_IDL =
+BIN_SERVER_IDL =
+
+# exported header files
+EXPORT_HEADERS =
+
+# exported python executable files
+EXPORT_PYSCRIPTS =
+
+# list of files in resources directory (copy when do make install)
+RESOURCES_FILES =
+
+# po ressources files (to transform them in qm file) :
+PO_FILES =
+
+# put here additional rules, or extra compiler options ...
+
+@CONCLUDE@
+
+# end copy here ============================================
--- /dev/null
+# begin copy here ==========================================
+
+top_srcdir=@top_srcdir@
+top_builddir=../../..
+srcdir=@srcdir@
+VPATH=.:@srcdir@
+
+@COMMENCE@
+
+# end copy here ============================================
--- /dev/null
+%!PS-Adobe-2.0 EPSF-2.0
+%%Title: srctree_module.eps
+%%Creator: fig2dev Version 3.2 Patchlevel 3c
+%%CreationDate: Thu Jul 26 11:57:52 2001
+%%For: tajchman@nikyo (Marc Tajchman - SFME/LGLS)
+%%BoundingBox: 0 0 405 274
+%%Magnification: 1.0000
+%%EndComments
+/$F2psDict 200 dict def
+$F2psDict begin
+$F2psDict /mtrx matrix put
+/col-1 {0 setgray} bind def
+/col0 {0.000 0.000 0.000 srgb} bind def
+/col1 {0.000 0.000 1.000 srgb} bind def
+/col2 {0.000 1.000 0.000 srgb} bind def
+/col3 {0.000 1.000 1.000 srgb} bind def
+/col4 {1.000 0.000 0.000 srgb} bind def
+/col5 {1.000 0.000 1.000 srgb} bind def
+/col6 {1.000 1.000 0.000 srgb} bind def
+/col7 {1.000 1.000 1.000 srgb} bind def
+/col8 {0.000 0.000 0.560 srgb} bind def
+/col9 {0.000 0.000 0.690 srgb} bind def
+/col10 {0.000 0.000 0.820 srgb} bind def
+/col11 {0.530 0.810 1.000 srgb} bind def
+/col12 {0.000 0.560 0.000 srgb} bind def
+/col13 {0.000 0.690 0.000 srgb} bind def
+/col14 {0.000 0.820 0.000 srgb} bind def
+/col15 {0.000 0.560 0.560 srgb} bind def
+/col16 {0.000 0.690 0.690 srgb} bind def
+/col17 {0.000 0.820 0.820 srgb} bind def
+/col18 {0.560 0.000 0.000 srgb} bind def
+/col19 {0.690 0.000 0.000 srgb} bind def
+/col20 {0.820 0.000 0.000 srgb} bind def
+/col21 {0.560 0.000 0.560 srgb} bind def
+/col22 {0.690 0.000 0.690 srgb} bind def
+/col23 {0.820 0.000 0.820 srgb} bind def
+/col24 {0.500 0.190 0.000 srgb} bind def
+/col25 {0.630 0.250 0.000 srgb} bind def
+/col26 {0.750 0.380 0.000 srgb} bind def
+/col27 {1.000 0.500 0.500 srgb} bind def
+/col28 {1.000 0.630 0.630 srgb} bind def
+/col29 {1.000 0.750 0.750 srgb} bind def
+/col30 {1.000 0.880 0.880 srgb} bind def
+/col31 {1.000 0.840 0.000 srgb} bind def
+
+end
+save
+newpath 0 274 moveto 0 0 lineto 405 0 lineto 405 274 lineto closepath clip newpath
+-33.0 371.0 translate
+1 -1 scale
+
+/cp {closepath} bind def
+/ef {eofill} bind def
+/gr {grestore} bind def
+/gs {gsave} bind def
+/sa {save} bind def
+/rs {restore} bind def
+/l {lineto} bind def
+/m {moveto} bind def
+/rm {rmoveto} bind def
+/n {newpath} bind def
+/s {stroke} bind def
+/sh {show} bind def
+/slc {setlinecap} bind def
+/slj {setlinejoin} bind def
+/slw {setlinewidth} bind def
+/srgb {setrgbcolor} bind def
+/rot {rotate} bind def
+/sc {scale} bind def
+/sd {setdash} bind def
+/ff {findfont} bind def
+/sf {setfont} bind def
+/scf {scalefont} bind def
+/sw {stringwidth} bind def
+/tr {translate} bind def
+/tnt {dup dup currentrgbcolor
+ 4 -2 roll dup 1 exch sub 3 -1 roll mul add
+ 4 -2 roll dup 1 exch sub 3 -1 roll mul add
+ 4 -2 roll dup 1 exch sub 3 -1 roll mul add srgb}
+ bind def
+/shd {dup dup currentrgbcolor 4 -2 roll mul 4 -2 roll mul
+ 4 -2 roll mul srgb} bind def
+/$F2psBegin {$F2psDict begin /$F2psEnteredState save def} def
+/$F2psEnd {$F2psEnteredState restore end} def
+
+$F2psBegin
+%%Page: 1 1
+10 setmiterlimit
+ 0.06000 0.06000 sc
+%
+% Fig objects follow
+%
+% Polyline
+15.000 slw
+n 2925 5700 m 3825 5700 l 3825 6150 l 2925 6150 l
+ cp gs col0 s gr
+/Times-Roman ff 180.00 scf sf
+3075 6000 m
+gs 1 -1 sc (src) col0 sh gr
+% Polyline
+n 1650 5700 m 2625 5700 l 2625 6150 l 1650 6150 l
+ cp gs col0 s gr
+/Times-Roman ff 180.00 scf sf
+1725 6000 m
+gs 1 -1 sc (resources) col0 sh gr
+% Polyline
+n 1200 3825 m 2175 3825 l 2175 4275 l 1200 4275 l
+ cp gs col0 s gr
+/Times-Roman ff 180.00 scf sf
+1500 4125 m
+gs 1 -1 sc (idl) col0 sh gr
+% Polyline
+n 2400 3825 m 3600 3825 l 3600 4275 l 2400 4275 l
+ cp gs col0 s gr
+/Times-Roman ff 180.00 scf sf
+2550 4125 m
+gs 1 -1 sc (New module) col0 sh gr
+% Polyline
+n 1005 2475 m 825 2475 825 3195 180 arcto 4 {pop} repeat
+ 825 3375 2295 3375 180 arcto 4 {pop} repeat
+ 2475 3375 2475 2655 180 arcto 4 {pop} repeat
+ 2475 2475 1005 2475 180 arcto 4 {pop} repeat
+ cp gs col6 1.00 shd ef gr gs col0 s gr
+/Times-Bold ff 180.00 scf sf
+975 2775 m
+gs 1 -1 sc (Run reconfigure) col0 sh gr
+/Times-Bold ff 180.00 scf sf
+975 3000 m
+gs 1 -1 sc (script or edit) col0 sh gr
+/Times-Bold ff 180.00 scf sf
+975 3225 m
+gs 1 -1 sc (configure.in file) col0 sh gr
+% Polyline
+n 3150 2625 m 4800 2625 l 4800 3225 l 3150 3225 l
+ cp gs col0 s gr
+/Times-Roman ff 180.00 scf sf
+3300 3000 m
+gs 1 -1 sc (Root Source Tree) col0 sh gr
+% Polyline
+n 3825 3825 m 4875 3825 l 4875 4275 l 3825 4275 l
+ cp gs col0 s gr
+/Times-Roman ff 180.00 scf sf
+3975 4125 m
+gs 1 -1 sc (resources) col0 sh gr
+% Polyline
+n 5025 3825 m 6075 3825 l 6075 4275 l 5025 4275 l
+ cp gs col0 s gr
+/Times-Roman ff 180.00 scf sf
+5250 4125 m
+gs 1 -1 sc (bin) col0 sh gr
+% Polyline
+n 4350 3225 m
+ 4350 3825 l gs col0 s gr
+% Polyline
+n 3450 3225 m
+ 1725 3825 l gs col0 s gr
+% Polyline
+n 2625 4275 m
+ 2325 5700 l gs col0 s gr
+% Polyline
+n 4575 3225 m
+ 5400 3825 l gs col0 s gr
+% Polyline
+n 2925 3825 m
+ 3675 3225 l gs col0 s gr
+% Polyline
+n 3139 4261 m
+ 3439 5686 l gs col0 s gr
+% Polyline
+gs clippath
+3159 3023 m 3179 2935 l 3034 2902 l 3135 2971 l 3015 2990 l cp
+eoclip
+n 2480 2826 m
+ 3155 2976 l gs col0 s gr gr
+
+% arrowhead
+n 3015 2990 m 3135 2971 l 3034 2902 l 3047 2951 l 3015 2990 l
+ cp gs 0.00 setgray ef gr col0 s
+% Polyline
+n 783 4753 m 588 4753 588 5177 195 arcto 4 {pop} repeat
+ 588 5372 1768 5372 195 arcto 4 {pop} repeat
+ 1963 5372 1963 4948 195 arcto 4 {pop} repeat
+ 1963 4753 783 4753 195 arcto 4 {pop} repeat
+ cp gs col6 1.00 shd ef gr gs col0 s gr
+% Polyline
+n 4605 4575 m 4425 4575 4425 5070 180 arcto 4 {pop} repeat
+ 4425 5250 6045 5250 180 arcto 4 {pop} repeat
+ 6225 5250 6225 4755 180 arcto 4 {pop} repeat
+ 6225 4575 4605 4575 180 arcto 4 {pop} repeat
+ cp gs col6 1.00 shd ef gr gs col0 s gr
+% Polyline
+n 5580 2700 m 5400 2700 5400 3195 180 arcto 4 {pop} repeat
+ 5400 3375 7020 3375 180 arcto 4 {pop} repeat
+ 7200 3375 7200 2880 180 arcto 4 {pop} repeat
+ 7200 2700 5580 2700 180 arcto 4 {pop} repeat
+ cp gs col6 1.00 shd ef gr gs col0 s gr
+% Polyline
+n 5655 1650 m 5475 1650 5475 2145 180 arcto 4 {pop} repeat
+ 5475 2325 7095 2325 180 arcto 4 {pop} repeat
+ 7275 2325 7275 1830 180 arcto 4 {pop} repeat
+ 7275 1650 5655 1650 180 arcto 4 {pop} repeat
+ cp gs col6 1.00 shd ef gr gs col0 s gr
+% Polyline
+2 slj
+gs clippath
+4677 2619 m 4759 2657 l 4822 2523 l 4734 2606 l 4741 2485 l cp
+eoclip
+n 5475 1875 m 5474 1875 l 5472 1874 l 5468 1874 l 5461 1873 l 5453 1872 l
+ 5442 1871 l 5430 1870 l 5415 1869 l 5399 1869 l 5381 1870 l
+ 5363 1872 l 5343 1875 l 5322 1880 l 5300 1887 l 5277 1896 l
+ 5252 1908 l 5226 1923 l 5197 1942 l 5166 1965 l 5134 1993 l
+ 5100 2025 l 5071 2055 l 5043 2086 l 5017 2119 l 4992 2151 l
+ 4968 2183 l 4946 2216 l 4925 2247 l 4905 2279 l 4886 2310 l
+ 4868 2342 l 4851 2372 l 4834 2403 l 4819 2433 l 4804 2462 l
+ 4790 2490 l 4777 2516 l 4765 2540 l 4755 2561 l 4746 2579 l
+ 4739 2595 l 4734 2606 l
+ 4725 2625 l gs col0 s gr gr
+
+% arrowhead
+0 slj
+n 4741 2485 m 4734 2606 l 4822 2523 l 4772 2524 l 4741 2485 l
+ cp gs 0.00 setgray ef gr col0 s
+% Polyline
+2 slj
+gs clippath
+1980 5683 m 2051 5739 l 2143 5623 l 2038 5684 l 2072 5567 l cp
+eoclip
+n 1950 5025 m 1952 5026 l 1956 5029 l 1964 5034 l 1974 5041 l 1988 5051 l
+ 2004 5063 l 2022 5077 l 2041 5093 l 2061 5110 l 2080 5129 l
+ 2098 5149 l 2116 5172 l 2132 5196 l 2146 5224 l 2159 5254 l
+ 2169 5288 l 2175 5325 l 2177 5359 l 2176 5392 l 2171 5423 l
+ 2165 5453 l 2157 5480 l 2147 5506 l 2136 5531 l 2124 5555 l
+ 2111 5578 l 2098 5599 l 2084 5620 l 2071 5638 l 2059 5655 l
+ 2049 5669 l 2040 5681 l
+ 2025 5700 l gs col0 s gr gr
+
+% arrowhead
+0 slj
+n 2072 5567 m 2038 5684 l 2143 5623 l 2093 5613 l 2072 5567 l
+ cp gs 0.00 setgray ef gr col0 s
+% Polyline
+2 slj
+gs clippath
+3116 5733 m 3196 5693 l 3142 5583 l 3142 5684 l 3061 5623 l cp
+eoclip
+n 1950 5025 m 1951 5025 l 1954 5024 l 1959 5023 l 1967 5021 l 1978 5019 l
+ 1992 5016 l 2009 5012 l 2029 5009 l 2052 5005 l 2077 5001 l
+ 2104 4998 l 2133 4995 l 2163 4992 l 2194 4991 l 2226 4990 l
+ 2259 4991 l 2293 4993 l 2329 4997 l 2366 5004 l 2405 5012 l
+ 2446 5023 l 2488 5037 l 2533 5055 l 2579 5076 l 2625 5100 l
+ 2667 5125 l 2708 5152 l 2746 5181 l 2782 5209 l 2815 5238 l
+ 2846 5268 l 2875 5297 l 2902 5326 l 2927 5356 l 2950 5385 l
+ 2973 5414 l 2994 5443 l 3014 5472 l 3033 5501 l 3051 5529 l
+ 3067 5555 l 3083 5581 l 3097 5604 l 3109 5626 l 3120 5645 l
+ 3129 5661 l 3136 5674 l 3142 5684 l
+ 3150 5700 l gs col0 s gr gr
+
+% arrowhead
+0 slj
+n 3061 5623 m 3142 5684 l 3142 5583 l col0 s
+% Polyline
+2 slj
+gs clippath
+2596 4285 m 2519 4238 l 2442 4366 l 2539 4293 l 2519 4412 l cp
+eoclip
+n 2025 4950 m 2026 4949 l 2029 4947 l 2034 4944 l 2041 4940 l 2050 4933 l
+ 2061 4925 l 2074 4915 l 2089 4903 l 2104 4889 l 2122 4872 l
+ 2142 4853 l 2164 4829 l 2189 4800 l 2218 4765 l 2250 4725 l
+ 2274 4694 l 2298 4662 l 2320 4630 l 2342 4600 l 2362 4570 l
+ 2382 4542 l 2401 4514 l 2418 4486 l 2436 4460 l 2452 4434 l
+ 2468 4409 l 2483 4384 l 2497 4362 l 2510 4341 l 2521 4323 l
+ 2530 4307 l 2538 4295 l
+ 2550 4275 l gs col0 s gr gr
+
+% arrowhead
+0 slj
+n 2519 4412 m 2539 4293 l 2442 4366 l 2492 4370 l 2519 4412 l
+ cp gs 0.00 setgray ef gr col0 s
+% Polyline
+2 slj
+gs clippath
+3406 4239 m 3328 4283 l 3400 4413 l 3385 4293 l 3479 4368 l cp
+eoclip
+n 4425 4950 m 4424 4950 l 4420 4950 l 4415 4950 l 4406 4951 l 4394 4951 l
+ 4378 4951 l 4360 4951 l 4338 4951 l 4315 4950 l 4289 4949 l
+ 4261 4948 l 4232 4945 l 4202 4942 l 4170 4937 l 4138 4931 l
+ 4105 4923 l 4070 4914 l 4033 4902 l 3995 4888 l 3955 4871 l
+ 3912 4850 l 3869 4827 l 3825 4800 l 3785 4773 l 3747 4745 l
+ 3712 4716 l 3679 4688 l 3649 4659 l 3621 4631 l 3595 4603 l
+ 3572 4575 l 3549 4548 l 3529 4521 l 3509 4494 l 3491 4467 l
+ 3473 4441 l 3457 4416 l 3442 4392 l 3429 4370 l 3416 4349 l
+ 3406 4330 l 3397 4314 l 3389 4301 l 3384 4291 l
+ 3375 4275 l gs col0 s gr gr
+
+% arrowhead
+0 slj
+n 3479 4368 m 3385 4293 l 3400 4413 l 3429 4371 l 3479 4368 l
+ cp gs 0.00 setgray ef gr col0 s
+% Polyline
+2 slj
+gs clippath
+3477 5705 m 3565 5724 l 3596 5579 l 3529 5680 l 3508 5560 l cp
+eoclip
+n 4425 4950 m 4423 4950 l 4420 4950 l 4414 4949 l 4404 4948 l 4391 4947 l
+ 4374 4946 l 4354 4946 l 4330 4945 l 4304 4944 l 4276 4945 l
+ 4247 4945 l 4216 4947 l 4185 4950 l 4152 4954 l 4119 4960 l
+ 4085 4967 l 4051 4977 l 4015 4989 l 3978 5004 l 3941 5022 l
+ 3902 5045 l 3863 5070 l 3825 5100 l 3789 5133 l 3755 5167 l
+ 3726 5202 l 3699 5237 l 3676 5272 l 3655 5306 l 3637 5341 l
+ 3621 5375 l 3606 5409 l 3594 5442 l 3582 5475 l 3572 5508 l
+ 3563 5539 l 3555 5569 l 3548 5597 l 3542 5622 l 3537 5644 l
+ 3533 5663 l 3530 5677 l
+ 3525 5700 l gs col0 s gr gr
+
+% arrowhead
+0 slj
+n 3508 5560 m 3529 5680 l 3596 5579 l 3548 5592 l 3508 5560 l
+ cp gs 0.00 setgray ef gr col0 s
+% Polyline
+2 slj
+gs clippath
+4602 3819 m 4684 3857 l 4747 3723 l 4659 3806 l 4666 3685 l cp
+eoclip
+n 5400 3075 m 5399 3075 l 5397 3074 l 5393 3074 l 5386 3073 l 5378 3072 l
+ 5367 3071 l 5355 3070 l 5340 3069 l 5324 3069 l 5306 3070 l
+ 5288 3072 l 5268 3075 l 5247 3080 l 5225 3087 l 5202 3096 l
+ 5177 3108 l 5151 3123 l 5122 3142 l 5091 3165 l 5059 3193 l
+ 5025 3225 l 4996 3255 l 4968 3286 l 4942 3319 l 4917 3351 l
+ 4893 3383 l 4871 3416 l 4850 3447 l 4830 3479 l 4811 3510 l
+ 4793 3542 l 4776 3572 l 4759 3603 l 4744 3633 l 4729 3662 l
+ 4715 3690 l 4702 3716 l 4690 3740 l 4680 3761 l 4671 3779 l
+ 4664 3795 l 4659 3806 l
+ 4650 3825 l gs col0 s gr gr
+
+% arrowhead
+0 slj
+n 4666 3685 m 4659 3806 l 4747 3723 l 4697 3724 l 4666 3685 l
+ cp gs 0.00 setgray ef gr col0 s
+/Times-Bold ff 180.00 scf sf
+750 5025 m
+gs 1 -1 sc (Create) col0 sh gr
+/Times-Bold ff 180.00 scf sf
+750 5250 m
+gs 1 -1 sc (directories) col0 sh gr
+/Times-Bold ff 180.00 scf sf
+4575 4875 m
+gs 1 -1 sc (Copy and/or) col0 sh gr
+/Times-Bold ff 180.00 scf sf
+4575 5100 m
+gs 1 -1 sc (create Makefile.in) col0 sh gr
+/Times-Bold ff 180.00 scf sf
+5550 3225 m
+gs 1 -1 sc (files \(module level\)) col0 sh gr
+/Times-Bold ff 180.00 scf sf
+5550 3000 m
+gs 1 -1 sc (Exported resource) col0 sh gr
+/Times-Bold ff 180.00 scf sf
+5625 1950 m
+gs 1 -1 sc (Update SUBDIRS ) col0 sh gr
+/Times-Bold ff 180.00 scf sf
+5625 2175 m
+gs 1 -1 sc (list in Makefile.in) col0 sh gr
+$F2psEnd
+rs
--- /dev/null
+#FIG 3.2
+Portrait
+Center
+Inches
+Letter
+100.00
+Single
+-2
+1200 2
+6 2925 5700 3825 6150
+2 2 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 5
+ 2925 5700 3825 5700 3825 6150 2925 6150 2925 5700
+4 0 0 50 0 1 12 0.0000 0 90 240 3075 6000 src\001
+-6
+6 1650 5700 2625 6150
+2 2 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 5
+ 1650 5700 2625 5700 2625 6150 1650 6150 1650 5700
+4 0 0 50 0 1 12 0.0000 0 90 750 1725 6000 resources\001
+-6
+6 1200 3825 2175 4275
+2 2 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 5
+ 1200 3825 2175 3825 2175 4275 1200 4275 1200 3825
+4 0 0 50 0 1 12 0.0000 0 135 180 1500 4125 idl\001
+-6
+6 2400 3825 3600 4275
+2 2 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 5
+ 2400 3825 3600 3825 3600 4275 2400 4275 2400 3825
+4 0 0 50 0 1 12 0.0000 0 135 945 2550 4125 New module\001
+-6
+6 825 2475 2475 3375
+2 4 0 2 0 6 50 0 20 0.000 0 0 12 0 0 5
+ 2475 3375 825 3375 825 2475 2475 2475 2475 3375
+4 0 0 50 0 2 12 0.0000 0 180 1290 975 2775 Run reconfigure\001
+4 0 0 50 0 2 12 0.0000 0 180 1020 975 3000 script or edit\001
+4 0 0 50 0 2 12 0.0000 0 180 1245 975 3225 configure.in file\001
+-6
+6 3150 2625 4800 3225
+2 2 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 5
+ 3150 2625 4800 2625 4800 3225 3150 3225 3150 2625
+4 0 0 50 0 1 12 0.0000 0 135 1320 3300 3000 Root Source Tree\001
+-6
+6 3825 3825 4875 4275
+2 2 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 5
+ 3825 3825 4875 3825 4875 4275 3825 4275 3825 3825
+4 0 0 50 0 0 12 0.0000 4 90 750 3975 4125 resources\001
+-6
+6 5025 3825 6075 4275
+2 2 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 5
+ 5025 3825 6075 3825 6075 4275 5025 4275 5025 3825
+4 0 0 50 0 0 12 0.0000 4 135 225 5250 4125 bin\001
+-6
+2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2
+ 4350 3225 4350 3825
+2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2
+ 3450 3225 1725 3825
+2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2
+ 2625 4275 2325 5700
+2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2
+ 4575 3225 5400 3825
+2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2
+ 2925 3825 3675 3225
+2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2
+ 3139 4261 3439 5686
+2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 1 0 2
+ 2 1 2.00 90.00 90.00
+ 2480 2826 3155 2976
+2 4 0 2 0 6 50 0 20 0.000 0 0 13 0 0 5
+ 1963 5372 588 5372 588 4753 1963 4753 1963 5372
+2 4 0 2 0 6 50 0 20 0.000 0 0 12 0 0 5
+ 6225 5250 4425 5250 4425 4575 6225 4575 6225 5250
+2 4 0 2 0 6 50 0 20 0.000 0 0 12 0 0 5
+ 7200 3375 5400 3375 5400 2700 7200 2700 7200 3375
+2 4 0 2 0 6 50 0 20 0.000 0 0 12 0 0 5
+ 7275 2325 5475 2325 5475 1650 7275 1650 7275 2325
+3 2 0 2 0 7 50 0 -1 0.000 0 1 0 3
+ 2 1 2.00 90.00 90.00
+ 5475 1875 5100 2025 4725 2625
+ 0.000 -1.000 0.000
+3 2 0 2 0 7 50 0 -1 0.000 0 1 0 3
+ 2 1 2.00 90.00 90.00
+ 1950 5025 2175 5325 2025 5700
+ 0.000 -1.000 0.000
+3 2 0 2 0 7 50 0 -1 0.000 0 1 0 3
+ 0 0 2.00 90.00 90.00
+ 1950 5025 2625 5100 3150 5700
+ 0.000 -1.000 0.000
+3 2 0 2 0 7 50 0 -1 0.000 0 1 0 3
+ 2 1 2.00 90.00 90.00
+ 2025 4950 2250 4725 2550 4275
+ 0.000 -1.000 0.000
+3 2 0 2 0 7 50 0 -1 0.000 0 1 0 3
+ 2 1 2.00 90.00 90.00
+ 4425 4950 3825 4800 3375 4275
+ 0.000 -1.000 0.000
+3 2 0 2 0 7 50 0 -1 0.000 0 1 0 3
+ 2 1 2.00 90.00 90.00
+ 4425 4950 3825 5100 3525 5700
+ 0.000 -1.000 0.000
+3 2 0 2 0 7 50 0 -1 0.000 0 1 0 3
+ 2 1 2.00 90.00 90.00
+ 5400 3075 5025 3225 4650 3825
+ 0.000 -1.000 0.000
+4 0 0 50 0 2 12 0.0000 4 135 570 750 5025 Create\001
+4 0 0 50 0 2 12 0.0000 4 135 885 750 5250 directories\001
+4 0 0 50 0 2 12 0.0000 0 180 975 4575 4875 Copy and/or\001
+4 0 0 50 0 2 12 0.0000 0 135 1515 4575 5100 create Makefile.in\001
+4 0 0 50 0 2 12 0.0000 0 180 1515 5550 3225 files (module level)\001
+4 0 0 50 0 2 12 0.0000 0 180 1515 5550 3000 Exported resource\001
+4 0 0 50 0 2 12 0.0000 0 180 1500 5625 1950 Update SUBDIRS \001
+4 0 0 50 0 2 12 0.0000 0 135 1395 5625 2175 list in Makefile.in\001
--- /dev/null
+%!PS-Adobe-2.0 EPSF-2.0
+%%Title: srctree_unit.eps
+%%Creator: fig2dev Version 3.2 Patchlevel 3c
+%%CreationDate: Thu Jul 26 11:57:40 2001
+%%For: tajchman@nikyo (Marc Tajchman - SFME/LGLS)
+%%BoundingBox: 0 0 404 377
+%%Magnification: 1.0000
+%%EndComments
+/$F2psDict 200 dict def
+$F2psDict begin
+$F2psDict /mtrx matrix put
+/col-1 {0 setgray} bind def
+/col0 {0.000 0.000 0.000 srgb} bind def
+/col1 {0.000 0.000 1.000 srgb} bind def
+/col2 {0.000 1.000 0.000 srgb} bind def
+/col3 {0.000 1.000 1.000 srgb} bind def
+/col4 {1.000 0.000 0.000 srgb} bind def
+/col5 {1.000 0.000 1.000 srgb} bind def
+/col6 {1.000 1.000 0.000 srgb} bind def
+/col7 {1.000 1.000 1.000 srgb} bind def
+/col8 {0.000 0.000 0.560 srgb} bind def
+/col9 {0.000 0.000 0.690 srgb} bind def
+/col10 {0.000 0.000 0.820 srgb} bind def
+/col11 {0.530 0.810 1.000 srgb} bind def
+/col12 {0.000 0.560 0.000 srgb} bind def
+/col13 {0.000 0.690 0.000 srgb} bind def
+/col14 {0.000 0.820 0.000 srgb} bind def
+/col15 {0.000 0.560 0.560 srgb} bind def
+/col16 {0.000 0.690 0.690 srgb} bind def
+/col17 {0.000 0.820 0.820 srgb} bind def
+/col18 {0.560 0.000 0.000 srgb} bind def
+/col19 {0.690 0.000 0.000 srgb} bind def
+/col20 {0.820 0.000 0.000 srgb} bind def
+/col21 {0.560 0.000 0.560 srgb} bind def
+/col22 {0.690 0.000 0.690 srgb} bind def
+/col23 {0.820 0.000 0.820 srgb} bind def
+/col24 {0.500 0.190 0.000 srgb} bind def
+/col25 {0.630 0.250 0.000 srgb} bind def
+/col26 {0.750 0.380 0.000 srgb} bind def
+/col27 {1.000 0.500 0.500 srgb} bind def
+/col28 {1.000 0.630 0.630 srgb} bind def
+/col29 {1.000 0.750 0.750 srgb} bind def
+/col30 {1.000 0.880 0.880 srgb} bind def
+/col31 {1.000 0.840 0.000 srgb} bind def
+
+end
+save
+newpath 0 377 moveto 0 0 lineto 404 0 lineto 404 377 lineto closepath clip newpath
+-12.0 416.0 translate
+1 -1 scale
+
+/cp {closepath} bind def
+/ef {eofill} bind def
+/gr {grestore} bind def
+/gs {gsave} bind def
+/sa {save} bind def
+/rs {restore} bind def
+/l {lineto} bind def
+/m {moveto} bind def
+/rm {rmoveto} bind def
+/n {newpath} bind def
+/s {stroke} bind def
+/sh {show} bind def
+/slc {setlinecap} bind def
+/slj {setlinejoin} bind def
+/slw {setlinewidth} bind def
+/srgb {setrgbcolor} bind def
+/rot {rotate} bind def
+/sc {scale} bind def
+/sd {setdash} bind def
+/ff {findfont} bind def
+/sf {setfont} bind def
+/scf {scalefont} bind def
+/sw {stringwidth} bind def
+/tr {translate} bind def
+/tnt {dup dup currentrgbcolor
+ 4 -2 roll dup 1 exch sub 3 -1 roll mul add
+ 4 -2 roll dup 1 exch sub 3 -1 roll mul add
+ 4 -2 roll dup 1 exch sub 3 -1 roll mul add srgb}
+ bind def
+/shd {dup dup currentrgbcolor 4 -2 roll mul 4 -2 roll mul
+ 4 -2 roll mul srgb} bind def
+/$F2psBegin {$F2psDict begin /$F2psEnteredState save def} def
+/$F2psEnd {$F2psEnteredState restore end} def
+
+$F2psBegin
+%%Page: 1 1
+10 setmiterlimit
+ 0.06000 0.06000 sc
+%
+% Fig objects follow
+%
+% Polyline
+15.000 slw
+n 1530 675 m 1350 675 1350 1395 180 arcto 4 {pop} repeat
+ 1350 1575 2820 1575 180 arcto 4 {pop} repeat
+ 3000 1575 3000 855 180 arcto 4 {pop} repeat
+ 3000 675 1530 675 180 arcto 4 {pop} repeat
+ cp gs col6 1.00 shd ef gr gs col0 s gr
+/Times-Bold ff 180.00 scf sf
+1500 975 m
+gs 1 -1 sc (Run reconfigure) col0 sh gr
+/Times-Bold ff 180.00 scf sf
+1500 1200 m
+gs 1 -1 sc (script or edit) col0 sh gr
+/Times-Bold ff 180.00 scf sf
+1500 1425 m
+gs 1 -1 sc (configure.in file) col0 sh gr
+% Polyline
+n 855 3000 m 675 3000 675 3495 180 arcto 4 {pop} repeat
+ 675 3675 1770 3675 180 arcto 4 {pop} repeat
+ 1950 3675 1950 3180 180 arcto 4 {pop} repeat
+ 1950 3000 855 3000 180 arcto 4 {pop} repeat
+ cp gs col6 1.00 shd ef gr gs col0 s gr
+/Times-Bold ff 180.00 scf sf
+825 3300 m
+gs 1 -1 sc (Exported) col0 sh gr
+/Times-Bold ff 180.00 scf sf
+825 3525 m
+gs 1 -1 sc (idl files) col0 sh gr
+% Polyline
+n 2475 2025 m 3450 2025 l 3450 2475 l 2475 2475 l
+ cp gs col0 s gr
+/Times-Roman ff 180.00 scf sf
+2625 2325 m
+gs 1 -1 sc (Module 1) col0 sh gr
+% Polyline
+n 3000 3900 m 3900 3900 l 3900 4350 l 3000 4350 l
+ cp gs col0 s gr
+/Times-Roman ff 180.00 scf sf
+3150 4200 m
+gs 1 -1 sc (src) col0 sh gr
+% Polyline
+n 1725 3900 m 2700 3900 l 2700 4350 l 1725 4350 l
+ cp gs col0 s gr
+/Times-Roman ff 180.00 scf sf
+1800 4200 m
+gs 1 -1 sc (resources) col0 sh gr
+% Polyline
+n 1275 2025 m 2250 2025 l 2250 2475 l 1275 2475 l
+ cp gs col0 s gr
+/Times-Roman ff 180.00 scf sf
+1575 2325 m
+gs 1 -1 sc (idl) col0 sh gr
+% Polyline
+n 5205 3150 m 5025 3150 5025 3645 180 arcto 4 {pop} repeat
+ 5025 3825 6495 3825 180 arcto 4 {pop} repeat
+ 6675 3825 6675 3330 180 arcto 4 {pop} repeat
+ 6675 3150 5205 3150 180 arcto 4 {pop} repeat
+ cp gs col6 1.00 shd ef gr gs col0 s gr
+/Times-Bold ff 180.00 scf sf
+5175 3450 m
+gs 1 -1 sc (Exported shell) col0 sh gr
+/Times-Bold ff 180.00 scf sf
+5175 3675 m
+gs 1 -1 sc (scripts) col0 sh gr
+% Polyline
+n 5430 4275 m 5250 4275 5250 4770 180 arcto 4 {pop} repeat
+ 5250 4950 6720 4950 180 arcto 4 {pop} repeat
+ 6900 4950 6900 4455 180 arcto 4 {pop} repeat
+ 6900 4275 5430 4275 180 arcto 4 {pop} repeat
+ cp gs col6 1.00 shd ef gr gs col0 s gr
+/Times-Bold ff 180.00 scf sf
+5400 4575 m
+gs 1 -1 sc (Update SUBDIR) col0 sh gr
+/Times-Bold ff 180.00 scf sf
+5400 4800 m
+gs 1 -1 sc (list in Makefile.in) col0 sh gr
+% Polyline
+n 4275 2025 m 5325 2025 l 5325 2475 l 4275 2475 l
+ cp gs col0 s gr
+/Times-Roman ff 180.00 scf sf
+4425 2325 m
+gs 1 -1 sc (resources) col0 sh gr
+% Polyline
+n 5625 2025 m 6675 2025 l 6675 2475 l 5625 2475 l
+ cp gs col0 s gr
+/Times-Roman ff 180.00 scf sf
+5850 2325 m
+gs 1 -1 sc (bin) col0 sh gr
+% Polyline
+n 2700 5100 m 3675 5100 l 3675 5550 l 2700 5550 l
+ cp gs col0 s gr
+/Times-Roman ff 180.00 scf sf
+2775 5400 m
+gs 1 -1 sc (New unit) col0 sh gr
+% Polyline
+n 1380 6225 m 1200 6225 1200 6720 180 arcto 4 {pop} repeat
+ 1200 6900 2670 6900 180 arcto 4 {pop} repeat
+ 2850 6900 2850 6405 180 arcto 4 {pop} repeat
+ 2850 6225 1380 6225 180 arcto 4 {pop} repeat
+ cp gs col6 1.00 shd ef gr gs col0 s gr
+/Times-Bold ff 180.00 scf sf
+1350 6750 m
+gs 1 -1 sc (and header files) col0 sh gr
+/Times-Bold ff 180.00 scf sf
+1350 6525 m
+gs 1 -1 sc (Private source) col0 sh gr
+% Polyline
+n 3330 6225 m 3150 6225 3150 6720 180 arcto 4 {pop} repeat
+ 3150 6900 4620 6900 180 arcto 4 {pop} repeat
+ 4800 6900 4800 6405 180 arcto 4 {pop} repeat
+ 4800 6225 3330 6225 180 arcto 4 {pop} repeat
+ cp gs col6 1.00 shd ef gr gs col0 s gr
+/Times-Bold ff 180.00 scf sf
+3300 6525 m
+gs 1 -1 sc (Exported header) col0 sh gr
+/Times-Bold ff 180.00 scf sf
+3300 6750 m
+gs 1 -1 sc (files) col0 sh gr
+% Polyline
+n 3675 825 m 5325 825 l 5325 1425 l 3675 1425 l
+ cp gs col0 s gr
+% Polyline
+n 4725 1425 m
+ 4875 2025 l gs col0 s gr
+% Polyline
+n 3975 1425 m
+ 1800 2025 l gs col0 s gr
+% Polyline
+n 2700 2475 m
+ 2400 3900 l gs col0 s gr
+% Polyline
+gs clippath
+3679 1172 m 3699 1084 l 3554 1051 l 3655 1120 l 3535 1139 l cp
+eoclip
+n 3000 975 m
+ 3675 1125 l gs col0 s gr gr
+
+% arrowhead
+n 3535 1139 m 3655 1120 l 3554 1051 l 3567 1100 l 3535 1139 l
+ cp gs 0.00 setgray ef gr col0 s
+% Polyline
+n 5100 1425 m
+ 5625 2025 l gs col0 s gr
+% Polyline
+n 3000 2025 m
+ 4200 1425 l gs col0 s gr
+% Polyline
+n 3300 4350 m
+ 3150 5100 l gs col0 s gr
+% Polyline
+n 3075 2475 m
+ 3375 3900 l gs col0 s gr
+% Polyline
+ [60] 0 sd
+n 3675 4350 m
+ 4425 5025 l gs col0 s gr [] 0 sd
+% Polyline
+ [60] 0 sd
+n 3450 4350 m
+ 3900 5025 l gs col0 s gr [] 0 sd
+% Polyline
+ [60] 0 sd
+n 4350 1425 m
+ 3675 2025 l gs col0 s gr [] 0 sd
+% Polyline
+ [60] 0 sd
+n 4500 1425 m
+ 4050 2025 l gs col0 s gr [] 0 sd
+% Polyline
+n 405 4950 m 225 4950 225 5445 180 arcto 4 {pop} repeat
+ 225 5625 1845 5625 180 arcto 4 {pop} repeat
+ 2025 5625 2025 5130 180 arcto 4 {pop} repeat
+ 2025 4950 405 4950 180 arcto 4 {pop} repeat
+ cp gs col6 1.00 shd ef gr gs col0 s gr
+% Polyline
+n 4305 5325 m 4125 5325 4125 5820 180 arcto 4 {pop} repeat
+ 4125 6000 5745 6000 180 arcto 4 {pop} repeat
+ 5925 6000 5925 5505 180 arcto 4 {pop} repeat
+ 5925 5325 4305 5325 180 arcto 4 {pop} repeat
+ cp gs col6 1.00 shd ef gr gs col0 s gr
+% Polyline
+2 slj
+gs clippath
+2663 5277 m 2610 5204 l 2490 5291 l 2608 5262 l 2543 5364 l cp
+eoclip
+n 2100 6225 m 2099 6224 l 2098 6221 l 2095 6217 l 2091 6210 l 2086 6201 l
+ 2080 6189 l 2073 6174 l 2065 6158 l 2058 6140 l 2051 6120 l
+ 2044 6098 l 2039 6075 l 2035 6051 l 2033 6025 l 2032 5997 l
+ 2035 5967 l 2040 5934 l 2049 5899 l 2061 5860 l 2078 5819 l
+ 2100 5775 l 2122 5737 l 2145 5701 l 2170 5665 l 2197 5631 l
+ 2223 5599 l 2250 5568 l 2278 5539 l 2305 5512 l 2333 5485 l
+ 2361 5459 l 2389 5435 l 2417 5411 l 2445 5388 l 2471 5367 l
+ 2497 5346 l 2522 5327 l 2544 5310 l 2564 5295 l 2582 5282 l
+ 2596 5271 l 2607 5263 l
+ 2625 5250 l gs col0 s gr gr
+
+% arrowhead
+0 slj
+n 2543 5364 m 2608 5262 l 2490 5291 l 2535 5314 l 2543 5364 l
+ cp gs 0.00 setgray ef gr col0 s
+% Polyline
+2 slj
+gs clippath
+3241 5505 m 3185 5576 l 3301 5668 l 3241 5563 l 3357 5597 l cp
+eoclip
+n 3675 6225 m 3675 6224 l 3676 6221 l 3677 6216 l 3679 6209 l 3680 6199 l
+ 3682 6187 l 3684 6173 l 3684 6157 l 3684 6140 l 3683 6121 l
+ 3680 6101 l 3675 6078 l 3667 6054 l 3656 6026 l 3642 5996 l
+ 3623 5962 l 3600 5925 l 3579 5894 l 3556 5864 l 3532 5835 l
+ 3509 5808 l 3485 5782 l 3462 5758 l 3438 5734 l 3415 5712 l
+ 3392 5691 l 3369 5670 l 3347 5651 l 3325 5632 l 3305 5615 l
+ 3286 5599 l 3269 5586 l 3255 5574 l 3244 5565 l
+ 3225 5550 l gs col0 s gr gr
+
+% arrowhead
+0 slj
+n 3357 5597 m 3241 5563 l 3301 5668 l 3311 5618 l 3357 5597 l
+ cp gs 0.00 setgray ef gr col0 s
+% Polyline
+2 slj
+gs clippath
+3892 4003 m 3878 4092 l 4025 4114 l 3921 4053 l 4039 4026 l cp
+eoclip
+n 5250 4500 m 5250 4499 l 5249 4498 l 5248 4496 l 5246 4492 l 5244 4487 l
+ 5240 4480 l 5236 4473 l 5229 4464 l 5222 4454 l 5212 4444 l
+ 5201 4433 l 5188 4421 l 5172 4408 l 5152 4395 l 5129 4381 l
+ 5102 4366 l 5069 4350 l 5031 4333 l 4986 4315 l 4934 4295 l
+ 4875 4275 l 4829 4260 l 4781 4245 l 4733 4231 l 4686 4218 l
+ 4638 4205 l 4591 4193 l 4545 4182 l 4500 4171 l 4456 4160 l
+ 4412 4150 l 4368 4141 l 4325 4132 l 4283 4123 l 4241 4114 l
+ 4200 4106 l 4160 4098 l 4122 4091 l 4086 4084 l 4052 4078 l
+ 4021 4072 l 3993 4067 l 3969 4062 l 3948 4059 l 3932 4056 l
+ 3919 4053 l
+ 3900 4050 l gs col0 s gr gr
+
+% arrowhead
+0 slj
+n 4039 4026 m 3921 4053 l 4025 4114 l 4009 4067 l 4039 4026 l
+ cp gs 0.00 setgray ef gr col0 s
+% Polyline
+2 slj
+gs clippath
+1302 2288 m 1276 2202 l 1134 2245 l 1255 2256 l 1160 2331 l cp
+eoclip
+n 675 3300 m 674 3299 l 671 3296 l 666 3292 l 659 3285 l 648 3275 l
+ 635 3262 l 620 3247 l 602 3229 l 583 3208 l 562 3186 l
+ 541 3162 l 520 3136 l 500 3109 l 480 3081 l 462 3053 l
+ 446 3023 l 432 2993 l 420 2961 l 411 2928 l 406 2894 l
+ 405 2858 l 408 2820 l 416 2781 l 430 2741 l 450 2700 l
+ 472 2665 l 498 2632 l 527 2601 l 558 2571 l 591 2544 l
+ 625 2518 l 661 2494 l 697 2472 l 735 2451 l 773 2432 l
+ 812 2413 l 851 2396 l 891 2379 l 931 2363 l 970 2348 l
+ 1009 2334 l 1047 2321 l 1084 2309 l 1118 2298 l 1150 2288 l
+ 1178 2279 l 1203 2271 l 1224 2265 l 1242 2260 l 1255 2256 l
+
+ 1275 2250 l gs col0 s gr gr
+
+% arrowhead
+0 slj
+n 1160 2331 m 1255 2256 l 1134 2245 l 1168 2281 l 1160 2331 l
+ cp gs 0.00 setgray ef gr col0 s
+% Polyline
+2 slj
+gs clippath
+1765 4073 m 1706 4006 l 1594 4104 l 1709 4064 l 1653 4171 l cp
+eoclip
+n 1050 4950 m 1050 4949 l 1050 4947 l 1049 4942 l 1049 4936 l 1049 4927 l
+ 1049 4916 l 1049 4902 l 1050 4887 l 1052 4870 l 1056 4852 l
+ 1060 4832 l 1067 4810 l 1075 4786 l 1086 4759 l 1101 4729 l
+ 1119 4696 l 1141 4660 l 1168 4619 l 1200 4575 l 1227 4540 l
+ 1255 4505 l 1284 4472 l 1312 4439 l 1341 4408 l 1369 4378 l
+ 1397 4349 l 1425 4321 l 1452 4295 l 1479 4269 l 1506 4243 l
+ 1533 4219 l 1559 4195 l 1584 4173 l 1608 4151 l 1630 4131 l
+ 1651 4113 l 1670 4097 l 1686 4084 l 1699 4072 l 1709 4064 l
+
+ 1725 4050 l gs col0 s gr gr
+
+% arrowhead
+0 slj
+n 1653 4171 m 1709 4064 l 1594 4104 l 1641 4123 l 1653 4171 l
+ cp gs 0.00 setgray ef gr col0 s
+% Polyline
+2 slj
+gs clippath
+6234 2428 m 6189 2506 l 6317 2580 l 6243 2485 l 6362 2502 l cp
+eoclip
+n 6675 3225 m 6676 3224 l 6677 3221 l 6680 3215 l 6685 3208 l 6690 3197 l
+ 6696 3184 l 6703 3168 l 6710 3150 l 6717 3131 l 6723 3111 l
+ 6728 3089 l 6732 3066 l 6733 3041 l 6732 3015 l 6729 2987 l
+ 6722 2956 l 6711 2923 l 6695 2887 l 6675 2850 l 6655 2819 l
+ 6633 2789 l 6609 2760 l 6585 2734 l 6560 2709 l 6534 2685 l
+ 6509 2663 l 6483 2642 l 6457 2623 l 6431 2604 l 6405 2586 l
+ 6380 2569 l 6355 2553 l 6331 2538 l 6308 2524 l 6288 2512 l
+ 6270 2501 l 6256 2492 l 6244 2486 l
+ 6225 2475 l gs col0 s gr gr
+
+% arrowhead
+0 slj
+n 6362 2502 m 6243 2485 l 6317 2580 l 6320 2530 l 6362 2502 l
+ cp gs 0.00 setgray ef gr col0 s
+% Polyline
+2 slj
+gs clippath
+3700 5285 m 3630 5341 l 3722 5457 l 3688 5341 l 3793 5401 l cp
+eoclip
+n 4125 5625 m 4123 5625 l 4118 5625 l 4110 5624 l 4099 5624 l 4085 5622 l
+ 4069 5620 l 4051 5617 l 4031 5613 l 4010 5606 l 3987 5597 l
+ 3961 5585 l 3932 5570 l 3900 5550 l 3872 5530 l 3846 5510 l
+ 3823 5490 l 3801 5470 l 3782 5451 l 3764 5432 l 3747 5413 l
+ 3731 5395 l 3717 5378 l 3704 5363 l 3694 5349 l
+ 3675 5325 l gs col0 s gr gr
+
+% arrowhead
+0 slj
+n 3793 5401 m 3688 5341 l 3722 5457 l 3743 5411 l 3793 5401 l
+ cp gs 0.00 setgray ef gr col0 s
+/Times-Roman ff 180.00 scf sf
+3825 1200 m
+gs 1 -1 sc (Root Source Tree) col0 sh gr
+/Times-Bold ff 180.00 scf sf
+4275 5625 m
+gs 1 -1 sc (Copy and/or) col0 sh gr
+/Times-Bold ff 180.00 scf sf
+4275 5850 m
+gs 1 -1 sc (create Makefile.in) col0 sh gr
+/Times-Bold ff 180.00 scf sf
+375 5250 m
+gs 1 -1 sc (Exported resource) col0 sh gr
+/Times-Bold ff 180.00 scf sf
+375 5475 m
+gs 1 -1 sc (files \(xml, ...\)) col0 sh gr
+$F2psEnd
+rs
--- /dev/null
+#FIG 3.2
+Portrait
+Center
+Inches
+Letter
+100.00
+Single
+-2
+1200 2
+6 1350 675 3000 1575
+2 4 0 2 0 6 50 0 20 0.000 0 0 12 0 0 5
+ 3000 1575 1350 1575 1350 675 3000 675 3000 1575
+4 0 0 50 0 2 12 0.0000 0 180 1290 1500 975 Run reconfigure\001
+4 0 0 50 0 2 12 0.0000 0 180 1020 1500 1200 script or edit\001
+4 0 0 50 0 2 12 0.0000 0 180 1245 1500 1425 configure.in file\001
+-6
+6 675 3000 1950 3675
+2 4 0 2 0 6 50 0 20 0.000 0 0 12 0 0 5
+ 1950 3675 675 3675 675 3000 1950 3000 1950 3675
+4 0 0 50 0 2 12 0.0000 0 180 735 825 3300 Exported\001
+4 0 0 50 0 2 12 0.0000 0 135 570 825 3525 idl files\001
+-6
+6 2475 2025 3450 2475
+2 2 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 5
+ 2475 2025 3450 2025 3450 2475 2475 2475 2475 2025
+4 0 0 50 0 1 12 0.0000 0 135 705 2625 2325 Module 1\001
+-6
+6 3000 3900 3900 4350
+2 2 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 5
+ 3000 3900 3900 3900 3900 4350 3000 4350 3000 3900
+4 0 0 50 0 1 12 0.0000 0 90 240 3150 4200 src\001
+-6
+6 1725 3900 2700 4350
+2 2 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 5
+ 1725 3900 2700 3900 2700 4350 1725 4350 1725 3900
+4 0 0 50 0 1 12 0.0000 0 90 750 1800 4200 resources\001
+-6
+6 1275 2025 2250 2475
+2 2 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 5
+ 1275 2025 2250 2025 2250 2475 1275 2475 1275 2025
+4 0 0 50 0 1 12 0.0000 0 135 180 1575 2325 idl\001
+-6
+6 4950 3075 6750 3900
+2 4 0 2 0 6 50 0 20 0.000 0 0 12 0 0 5
+ 6675 3825 5025 3825 5025 3150 6675 3150 6675 3825
+4 0 0 50 0 2 12 0.0000 0 180 1155 5175 3450 Exported shell\001
+4 0 0 50 0 2 12 0.0000 0 180 540 5175 3675 scripts\001
+-6
+6 5175 4200 6975 5025
+2 4 0 2 0 6 50 0 20 0.000 0 0 12 0 0 5
+ 6900 4950 5250 4950 5250 4275 6900 4275 6900 4950
+4 0 0 50 0 2 12 0.0000 4 180 1350 5400 4575 Update SUBDIR\001
+4 0 0 50 0 2 12 0.0000 4 135 1395 5400 4800 list in Makefile.in\001
+-6
+6 4275 2025 5325 2475
+2 2 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 5
+ 4275 2025 5325 2025 5325 2475 4275 2475 4275 2025
+4 0 0 50 0 0 12 0.0000 4 90 750 4425 2325 resources\001
+-6
+6 5625 2025 6675 2475
+2 2 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 5
+ 5625 2025 6675 2025 6675 2475 5625 2475 5625 2025
+4 0 0 50 0 0 12 0.0000 4 135 225 5850 2325 bin\001
+-6
+6 2700 5100 3675 5550
+2 2 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 5
+ 2700 5100 3675 5100 3675 5550 2700 5550 2700 5100
+4 0 0 50 0 1 12 0.0000 0 135 690 2775 5400 New unit\001
+-6
+6 1125 6150 2925 6975
+2 4 0 2 0 6 50 0 20 0.000 0 0 12 0 0 5
+ 2850 6900 1200 6900 1200 6225 2850 6225 2850 6900
+4 0 0 50 0 2 12 0.0000 0 135 1290 1350 6750 and header files\001
+4 0 0 50 0 2 12 0.0000 0 135 1200 1350 6525 Private source\001
+-6
+6 3150 6225 4800 6900
+2 4 0 2 0 6 50 0 20 0.000 0 0 12 0 0 5
+ 4800 6900 3150 6900 3150 6225 4800 6225 4800 6900
+4 0 0 50 0 2 12 0.0000 0 180 1350 3300 6525 Exported header\001
+4 0 0 50 0 2 12 0.0000 0 135 345 3300 6750 files\001
+-6
+2 2 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 5
+ 3675 825 5325 825 5325 1425 3675 1425 3675 825
+2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2
+ 4725 1425 4875 2025
+2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2
+ 3975 1425 1800 2025
+2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2
+ 2700 2475 2400 3900
+2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 1 0 2
+ 2 1 2.00 90.00 90.00
+ 3000 975 3675 1125
+2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2
+ 5100 1425 5625 2025
+2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2
+ 3000 2025 4200 1425
+2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2
+ 3300 4350 3150 5100
+2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2
+ 3075 2475 3375 3900
+2 1 1 2 0 7 50 0 -1 4.000 0 0 -1 0 0 2
+ 3675 4350 4425 5025
+2 1 1 2 0 7 50 0 -1 4.000 0 0 -1 0 0 2
+ 3450 4350 3900 5025
+2 1 1 2 0 7 50 0 -1 4.000 0 0 -1 0 0 2
+ 4350 1425 3675 2025
+2 1 1 2 0 7 50 0 -1 4.000 0 0 -1 0 0 2
+ 4500 1425 4050 2025
+2 4 0 2 0 6 50 0 20 0.000 0 0 12 0 0 5
+ 2025 5625 225 5625 225 4950 2025 4950 2025 5625
+2 4 0 2 0 6 50 0 20 0.000 0 0 12 0 0 5
+ 5925 6000 4125 6000 4125 5325 5925 5325 5925 6000
+3 2 0 2 0 7 50 0 -1 0.000 0 1 0 3
+ 2 1 2.00 90.00 90.00
+ 2100 6225 2100 5775 2625 5250
+ 0.000 -1.000 0.000
+3 2 0 2 0 7 50 0 -1 0.000 0 1 0 3
+ 2 1 2.00 90.00 90.00
+ 3675 6225 3600 5925 3225 5550
+ 0.000 -1.000 0.000
+3 2 0 2 0 7 50 0 -1 0.000 0 1 0 3
+ 2 1 2.00 90.00 90.00
+ 5250 4500 4875 4275 3900 4050
+ 0.000 -1.000 0.000
+3 2 0 2 0 7 50 0 -1 0.000 0 1 0 3
+ 2 1 2.00 90.00 90.00
+ 675 3300 450 2700 1275 2250
+ 0.000 -1.000 0.000
+3 2 0 2 0 7 50 0 -1 0.000 0 1 0 3
+ 2 1 2.00 90.00 90.00
+ 1050 4950 1200 4575 1725 4050
+ 0.000 -1.000 0.000
+3 2 0 2 0 7 50 0 -1 0.000 0 1 0 3
+ 2 1 2.00 90.00 90.00
+ 6675 3225 6675 2850 6225 2475
+ 0.000 -1.000 0.000
+3 2 0 2 0 7 50 0 -1 0.000 0 1 0 3
+ 2 1 2.00 90.00 90.00
+ 4125 5625 3900 5550 3675 5325
+ 0.000 -1.000 0.000
+4 0 0 50 0 1 12 0.0000 0 135 1320 3825 1200 Root Source Tree\001
+4 0 0 50 0 2 12 0.0000 0 180 975 4275 5625 Copy and/or\001
+4 0 0 50 0 2 12 0.0000 0 135 1515 4275 5850 create Makefile.in\001
+4 0 0 50 0 2 12 0.0000 0 180 1515 375 5250 Exported resource\001
+4 0 0 50 0 2 12 0.0000 0 180 1065 375 5475 files (xml, ...)\001
--- /dev/null
+%!PS-Adobe-2.0 EPSF-2.0
+%%Title: subtrees.eps
+%%Creator: fig2dev Version 3.2 Patchlevel 3c
+%%CreationDate: Thu Jul 26 11:57:22 2001
+%%For: tajchman@nikyo (Marc Tajchman - SFME/LGLS)
+%%BoundingBox: 0 0 466 215
+%%Magnification: 1.0000
+%%EndComments
+/$F2psDict 200 dict def
+$F2psDict begin
+$F2psDict /mtrx matrix put
+/col-1 {0 setgray} bind def
+/col0 {0.000 0.000 0.000 srgb} bind def
+/col1 {0.000 0.000 1.000 srgb} bind def
+/col2 {0.000 1.000 0.000 srgb} bind def
+/col3 {0.000 1.000 1.000 srgb} bind def
+/col4 {1.000 0.000 0.000 srgb} bind def
+/col5 {1.000 0.000 1.000 srgb} bind def
+/col6 {1.000 1.000 0.000 srgb} bind def
+/col7 {1.000 1.000 1.000 srgb} bind def
+/col8 {0.000 0.000 0.560 srgb} bind def
+/col9 {0.000 0.000 0.690 srgb} bind def
+/col10 {0.000 0.000 0.820 srgb} bind def
+/col11 {0.530 0.810 1.000 srgb} bind def
+/col12 {0.000 0.560 0.000 srgb} bind def
+/col13 {0.000 0.690 0.000 srgb} bind def
+/col14 {0.000 0.820 0.000 srgb} bind def
+/col15 {0.000 0.560 0.560 srgb} bind def
+/col16 {0.000 0.690 0.690 srgb} bind def
+/col17 {0.000 0.820 0.820 srgb} bind def
+/col18 {0.560 0.000 0.000 srgb} bind def
+/col19 {0.690 0.000 0.000 srgb} bind def
+/col20 {0.820 0.000 0.000 srgb} bind def
+/col21 {0.560 0.000 0.560 srgb} bind def
+/col22 {0.690 0.000 0.690 srgb} bind def
+/col23 {0.820 0.000 0.820 srgb} bind def
+/col24 {0.500 0.190 0.000 srgb} bind def
+/col25 {0.630 0.250 0.000 srgb} bind def
+/col26 {0.750 0.380 0.000 srgb} bind def
+/col27 {1.000 0.500 0.500 srgb} bind def
+/col28 {1.000 0.630 0.630 srgb} bind def
+/col29 {1.000 0.750 0.750 srgb} bind def
+/col30 {1.000 0.880 0.880 srgb} bind def
+/col31 {1.000 0.840 0.000 srgb} bind def
+
+end
+save
+newpath 0 215 moveto 0 0 lineto 466 0 lineto 466 215 lineto closepath clip newpath
+-58.0 236.0 translate
+1 -1 scale
+
+/cp {closepath} bind def
+/ef {eofill} bind def
+/gr {grestore} bind def
+/gs {gsave} bind def
+/sa {save} bind def
+/rs {restore} bind def
+/l {lineto} bind def
+/m {moveto} bind def
+/rm {rmoveto} bind def
+/n {newpath} bind def
+/s {stroke} bind def
+/sh {show} bind def
+/slc {setlinecap} bind def
+/slj {setlinejoin} bind def
+/slw {setlinewidth} bind def
+/srgb {setrgbcolor} bind def
+/rot {rotate} bind def
+/sc {scale} bind def
+/sd {setdash} bind def
+/ff {findfont} bind def
+/sf {setfont} bind def
+/scf {scalefont} bind def
+/sw {stringwidth} bind def
+/tr {translate} bind def
+/tnt {dup dup currentrgbcolor
+ 4 -2 roll dup 1 exch sub 3 -1 roll mul add
+ 4 -2 roll dup 1 exch sub 3 -1 roll mul add
+ 4 -2 roll dup 1 exch sub 3 -1 roll mul add srgb}
+ bind def
+/shd {dup dup currentrgbcolor 4 -2 roll mul 4 -2 roll mul
+ 4 -2 roll mul srgb} bind def
+/$F2psBegin {$F2psDict begin /$F2psEnteredState save def} def
+/$F2psEnd {$F2psEnteredState restore end} def
+
+$F2psBegin
+%%Page: 1 1
+10 setmiterlimit
+ 0.06000 0.06000 sc
+%
+% Fig objects follow
+%
+% Polyline
+7.500 slw
+n 3900 1950 m 5175 1950 l 5175 2550 l 3900 2550 l
+ cp gs col0 s gr
+/Times-Bold ff 180.00 scf sf
+4050 2175 m
+gs 1 -1 sc (Top Build) col0 sh gr
+/Times-Bold ff 180.00 scf sf
+4050 2400 m
+gs 1 -1 sc (Directory) col0 sh gr
+% Polyline
+n 1275 1425 m 3000 1425 l 3000 2250 l 1275 2250 l
+ cp gs col0 s gr
+/Times-Bold ff 180.00 scf sf
+1425 1650 m
+gs 1 -1 sc (Top Source) col0 sh gr
+/Times-Bold ff 180.00 scf sf
+1425 1875 m
+gs 1 -1 sc (Directory) col0 sh gr
+/Times-Bold ff 180.00 scf sf
+1425 2100 m
+gs 1 -1 sc (\(SALOME_ROOT\)) col0 sh gr
+% Polyline
+n 4350 2550 m
+ 3825 3300 l gs col0 s gr
+% Polyline
+n 4575 2550 m
+ 4650 3300 l gs col0 s gr
+% Polyline
+n 7350 1650 m
+ 7575 2475 l gs col0 s gr
+% Polyline
+n 7800 1650 m
+ 8175 2550 l gs col0 s gr
+% Polyline
+n 7050 1650 m
+ 6750 2550 l gs col0 s gr
+% Polyline
+n 6675 1050 m 8100 1050 l 8100 1650 l 6675 1650 l
+ cp gs col0 s gr
+% Polyline
+n 1939 2238 m
+ 1189 2913 l gs col0 s gr
+% Polyline
+n 2175 2250 m
+ 2175 2850 l gs col0 s gr
+% Polyline
+n 2442 2270 m
+ 2892 3020 l gs col0 s gr
+% Polyline
+15.000 slw
+n 3780 1650 m 3600 1650 3600 3720 180 arcto 4 {pop} repeat
+ 3600 3900 5595 3900 180 arcto 4 {pop} repeat
+ 5775 3900 5775 1830 180 arcto 4 {pop} repeat
+ 5775 1650 3780 1650 180 arcto 4 {pop} repeat
+ cp gs col0 s gr
+% Polyline
+n 1230 1050 m 1050 1050 1050 3570 180 arcto 4 {pop} repeat
+ 1050 3750 3045 3750 180 arcto 4 {pop} repeat
+ 3225 3750 3225 1230 180 arcto 4 {pop} repeat
+ 3225 1050 1230 1050 180 arcto 4 {pop} repeat
+ cp gs col0 s gr
+% Polyline
+n 6705 825 m 6525 825 6525 2820 180 arcto 4 {pop} repeat
+ 6525 3000 8520 3000 180 arcto 4 {pop} repeat
+ 8700 3000 8700 1005 180 arcto 4 {pop} repeat
+ 8700 825 6705 825 180 arcto 4 {pop} repeat
+ cp gs col0 s gr
+% Polyline
+7.500 slw
+n 2025 1425 m
+ 3000 375 l gs col0 s gr
+% Polyline
+n 4575 1950 m
+ 4425 675 l gs col0 s gr
+% Polyline
+n 7275 1050 m
+ 5925 375 l gs col0 s gr
+/Times-Bold ff 180.00 scf sf
+6825 1275 m
+gs 1 -1 sc (Top Installation) col0 sh gr
+/Times-Bold ff 180.00 scf sf
+6825 1500 m
+gs 1 -1 sc (Directory) col0 sh gr
+/Times-Bold ff 180.00 scf sf
+7125 675 m
+gs 1 -1 sc (Install Subtree) col0 sh gr
+/Times-Bold ff 180.00 scf sf
+975 900 m
+gs 1 -1 sc (Source Subtree) col0 sh gr
+/Times-Bold ff 180.00 scf sf
+4650 1500 m
+gs 1 -1 sc (Build Subtree) col0 sh gr
+$F2psEnd
+rs
--- /dev/null
+#FIG 3.2
+Portrait
+Center
+Inches
+Letter
+100.00
+Single
+-2
+1200 2
+6 3900 1950 5175 2550
+2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5
+ 3900 1950 5175 1950 5175 2550 3900 2550 3900 1950
+4 0 0 50 0 2 12 0.0000 0 180 780 4050 2175 Top Build\001
+4 0 0 50 0 2 12 0.0000 0 180 780 4050 2400 Directory\001
+-6
+6 1275 1425 3000 2250
+2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5
+ 1275 1425 3000 1425 3000 2250 1275 2250 1275 1425
+4 0 0 50 0 2 12 0.0000 0 180 945 1425 1650 Top Source\001
+4 0 0 50 0 2 12 0.0000 0 180 780 1425 1875 Directory\001
+4 0 0 50 0 2 12 0.0000 0 180 1530 1425 2100 (SALOME_ROOT)\001
+-6
+2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2
+ 4350 2550 3825 3300
+2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2
+ 4575 2550 4650 3300
+2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2
+ 7350 1650 7575 2475
+2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2
+ 7800 1650 8175 2550
+2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2
+ 7050 1650 6750 2550
+2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5
+ 6675 1050 8100 1050 8100 1650 6675 1650 6675 1050
+2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2
+ 1939 2238 1189 2913
+2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2
+ 2175 2250 2175 2850
+2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2
+ 2442 2270 2892 3020
+2 4 0 2 0 7 50 0 -1 0.000 0 0 12 0 0 5
+ 5775 3900 3600 3900 3600 1650 5775 1650 5775 3900
+2 4 0 2 0 7 50 0 -1 0.000 0 0 12 0 0 5
+ 3225 3750 1050 3750 1050 1050 3225 1050 3225 3750
+2 4 0 2 0 7 50 0 -1 0.000 0 0 12 0 0 5
+ 8700 3000 6525 3000 6525 825 8700 825 8700 3000
+2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2
+ 2025 1425 3000 375
+2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2
+ 4575 1950 4425 675
+2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2
+ 7275 1050 5925 375
+4 0 0 50 0 2 12 0.0000 0 180 1290 6825 1275 Top Installation\001
+4 0 0 50 0 2 12 0.0000 0 180 780 6825 1500 Directory\001
+4 0 0 50 0 2 12 0.0000 0 135 1185 7125 675 Install Subtree\001
+4 0 0 40 0 2 12 0.0000 0 135 1080 4650 1500 Build Subtree\001
+4 0 0 50 0 2 12 0.0000 0 135 1245 975 900 Source Subtree\001
--- /dev/null
+<!DOCTYPE doctype PUBLIC "-//w3c//dtd html 4.0 transitional//en">
+<html>
+<head>
+
+ <meta http-equiv="Content-Type"
+ content="text/html; charset=iso-8859-1">
+
+ <meta name="GENERATOR"
+ content="Mozilla/4.73 [en] (WinNT; I) [Netscape]">
+ <title>Kernel Module Documentation</title>
+</head>
+ <body bgcolor="#cccccc" text="#000000" link="#0000ee" alink="#0000ee"
+ vlink="#551a8b">
+
+<div align="center">
+<center>
+<center>
+ </center>
+
+<table width="96%" align="center">
+ <tbody>
+ <tr>
+ <td><a href="http://www.opencascade.com"><img
+ src="tui/KERNEL/sources/logocorp.gif" border="0" height="46" width="122">
+ </a></td>
+ <td>
+
+ <div align="right"><a href="http://www.opencascade.org/SALOME/"><img
+ src="tui/KERNEL/sources/application.gif" border="0" height="46" width="108">
+ </a></div>
+ </td>
+ </tr>
+
+ </tbody>
+</table>
+
+<div align="center">
+<center>
+<hr width="100%" size="2">
+<h1>Kernel MODULE Documentation</h1>
+ </center>
+ </div>
+
+<table width="96%">
+ <tbody>
+
+ </tbody>
+</table>
+ </center>
+
+<div align="center">
+<p> <img src="tui/KERNEL/sources/Application-About.png"
+ alt="Application-About.png" width="30%" height="20%">
+ </p>
+ </div>
+
+<center>
+<table width="96%">
+ <tbody>
+
+ </tbody>
+</table>
+ <br>
+ <br>
+ <br>
+ </center>
+
+<address> </address>
+
+<center><big><a href="gui/KERNEL/kernel.html">GUI Documentation</a></big></center>
+
+<address> </address>
+
+<center></center>
+
+<center><br>
+ </center>
+
+<address> </address>
+
+<center><big><a href="tui/KERNEL/index.html">TUI Documentation</a></big></center>
+
+<address> </address>
+
+<center></center>
+
+<center><br>
+ <br>
+ </center>
+ </div>
+ <br>
+ <br>
+ <br>
+</body>
+</html>
--- /dev/null
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
+<HTML>
+<HEAD>
+ <META NAME="GENERATOR" CONTENT="SGML-Tools 1.0.9">
+ <TITLE>SALOME Kernel resources for developer: Trace and debug Utilities</TITLE>
+ <LINK HREF="kernel_resources-2.html" REL=next>
+
+ <LINK HREF="kernel_resources.html#toc1" REL=contents>
+</HEAD>
+<BODY>
+<A HREF="kernel_resources-2.html">Next</A>
+Previous
+<A HREF="kernel_resources.html#toc1">Contents</A>
+<HR>
+<H2><A NAME="s1">1. Trace and debug Utilities</A></H2>
+
+<P>During the development process, an execution log is useful to
+identify problems. This log contains messages, variables values,
+source files names and line numbers. It is recommended to verify
+assertions on variables values and if necessary, to stop the execution
+at debug time, in order to validate all parts of code.
+<H2><A NAME="ss1.1">1.1 Two modes: debug and release</A>
+</H2>
+
+<P>The goal of debug mode is to check as many features as possible
+during the early stages of the development process. The purpose of
+the utilities provided in SALOME is to help the developer to add
+detailed traces and check variables values, without writing a lot
+of code.
+<P>When the code is assumed to be valid, the release mode optimizes
+execution, in terms of speed, memory, and display only user level
+messages.
+<P>But, some informations must always be displayed in both modes:
+especially messages concerning environment or internal errors, with
+version identification. When an end user is confronted to such a
+message, he may refer to a configuration documentation or send the
+message to the people in charge of SALOME installation, or to the
+development team, following the kind of error.
+<H2><A NAME="ss1.2">1.2 C++ Macros for trace and debug</A>
+</H2>
+
+<P>SALOME provides C++ macros for trace and debug. These macros
+are in <CODE>SALOME/src/utils/utilities.h</CODE> and this file must be included
+in C++ source. Some macros are activated only in debug mode, others
+are always activated. To activate the debug mode, <CODE>_DEBUG_</CODE> must be
+defined, which is the case when SALOME Makefiles are generated from
+configure, without options. When <CODE>_DEBUG_</CODE> is undefined (release mode),
+the debug mode macros are defined empty (they do nothing). So, when
+switching from debug to release, it is possible (and recommended)
+to let the macro calls unchanged in the source.
+<P>All the macros writing on the standard output start by flushing
+the standard error. At the end of the display those macros flush
+the standard output.
+<P>Two informations are systematically added in front of the information
+displayed:
+<P>
+<UL>
+<LI>the name of the source file in which the macros is set;</LI>
+<LI>the line number of the source file at which the macro is set.</LI>
+</UL>
+<H3>Macros defined in debug and release modes</H3>
+
+<H3>INFOS_COMPILATION</H3>
+
+<P>The C++ macro <CODE>INFOS_COMPILATION</CODE> writes on the standard output
+informations about the compiling process:
+<P>
+<UL>
+<LI>the name of the compiler : <CODE>g++, KCC, CC, pgCC</CODE>;</LI>
+<LI>the date and the time of the compiling processing process.</LI>
+</UL>
+<P>This macro <CODE>INFOS_COMPILATION</CODE> does not have any argument. Moreover,
+it is defined in both compiling mode : <CODE>_DEBUG_</CODE> and <CODE>_RELEASE_</CODE>.
+<P>Example :
+<P>
+<PRE>
+#include "utilities.h"
+int main(int argc , char **argv)
+{
+ INFOS_COMPILATION;
+ ...
+}
+</PRE>
+<H3>INFOS(str)</H3>
+
+<P>In both compiling mode <CODE>_DEBUG_</CODE> and <CODE>_RELEASE_</CODE>, The C++ macro <CODE>INFOS</CODE>
+writes on the standard output the string which has been passed in
+argument by the user.
+<P>Example :
+<P>
+<PRE>
+#include "utilities.h"
+int main(int argc , char **argv)
+{
+ ...
+ INFOS("NORMAL END OF THE PROCESS");
+ return 0;
+}
+</PRE>
+<P>displays :
+<P>
+<PRE>
+main.cxx [5] : NORMAL END OF THE PROCESS
+</PRE>
+<H3>Macros defined only in debug mode</H3>
+
+<H3>MESSAGE(str)</H3>
+
+<P>In <CODE>_DEBUG_</CODE> compiling mode only, the C++ macro <CODE>MESSAGE</CODE> writes
+on the standard output the string which has been passed in argument
+by the user. In <CODE>_RELEASE_</CODE> compiling mode, this macro is blank.
+<P>Example :
+<P>
+<PRE>
+#include "utilities.h"
+#include <string>
+using namespace std;
+int main(int argc , char **argv)
+{
+ ...
+ const char *str = "Salome";
+ MESSAGE(str);
+ ... const string st;
+ st = "Aster";
+ MESSAGE(c_str(st+" and CASTEM"));
+ return 0;
+}
+</PRE>
+<P>displays :
+<P>
+<PRE>
+- Trace main.cxx [8] : Salome
+- Trace main.cxx [12] : Aster and CASTEM
+</PRE>
+<H3>BEGIN_OF(func_name)</H3>
+
+<P>In <CODE>_DEBUG_</CODE> compiling mode, The C++ macro <CODE>BEGIN_OF</CODE> appends the
+string <CODE>"Begin of "</CODE> to the one passed in argument by the
+user and displays the result on the standard output. In <CODE>_RELEASE_</CODE>
+compiling mode, this macro is blank.
+<P>Example :
+<P>
+<PRE>
+#include "utilities.h"
+int main(int argc , char **argv)
+{
+ BEGIN_OF(argv[0]);
+ return 0;
+}
+</PRE>
+<P>displays :
+<P>
+<PRE>
+- Trace main.cxx [3] : Begin of a.out
+</PRE>
+<H3>END_OF(func_name)</H3>
+
+<P>In <CODE>_DEBUG_</CODE> compiling mode, The C++ macro <CODE>END_OF</CODE> appends the string
+<CODE>"Normal end of "</CODE> to the one passed in argument by the user
+and displays the result on the standard output. In <CODE>_RELEASE_</CODE> compiling
+mode, this macro is blank.
+<P>Example :
+<P>
+<PRE>
+#include "utilities.h"
+int main(int argc , char **argv)
+{
+ END_OF(argv[0]);
+ return 0;
+}
+</PRE>
+<P>displays :
+<P>
+<PRE>
+- Trace main.cxx [4] : Normal end of a.out
+</PRE>
+<H3>SCRUTE(var)</H3>
+
+<P>In <CODE>_DEBUG_</CODE> compiling mode, The C++ macro <CODE>SCRUTE</CODE> displays its
+argument which is an application variable followed by the value of
+the variable. In <CODE>_RELEASE_</CODE> compiling mode, this macro is blank.
+<P>Example :
+<P>
+<PRE>
+#include "utilities.h"
+int main(int argc , char **argv)
+{
+ const int i=999;
+ if( i > 0 ) SCRUTE(i) ; i=i+1;
+ return 0;
+}
+</PRE>
+<P>displays :
+<P>
+<PRE>
+- Trace main.cxx [5] : i=999
+</PRE>
+<H3>ASSERT(condition)</H3>
+
+<P>In <CODE>_DEBUG_</CODE> compiling mode only, The C++ macro <CODE>ASSERT</CODE> checks the
+expression passed in argument to be not NULL. If it is NULL the process
+is stopped and the condition is written on the standard output. In
+<CODE>_RELEASE_</CODE> compiling mode, this macro is blank. N.B. : if <CODE>ASSERT</CODE> is
+already defined, this macro is ignored.
+<P>Example :
+<P>
+<PRE>
+#include "utilities.h"
+...
+const char *ptrS = fonc();
+ASSERT(ptrS!=NULL);
+cout << strlen(ptrS);
+float table[10];
+int k;
+...
+ASSERT(k<10);
+cout << table[k];
+</PRE>
+<HR>
+<A HREF="kernel_resources-2.html">Next</A>
+Previous
+<A HREF="kernel_resources.html#toc1">Contents</A>
+</BODY>
+</HTML>
--- /dev/null
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
+<HTML>
+<HEAD>
+ <META NAME="GENERATOR" CONTENT="SGML-Tools 1.0.9">
+ <TITLE>SALOME Kernel resources for developer: Exceptions</TITLE>
+ <LINK HREF="kernel_resources-3.html" REL=next>
+ <LINK HREF="kernel_resources-1.html" REL=previous>
+ <LINK HREF="kernel_resources.html#toc2" REL=contents>
+</HEAD>
+<BODY>
+<A HREF="kernel_resources-3.html">Next</A>
+<A HREF="kernel_resources-1.html">Previous</A>
+<A HREF="kernel_resources.html#toc2">Contents</A>
+<HR>
+<H2><A NAME="s2">2. Exceptions</A></H2>
+
+<H2><A NAME="ss2.1">2.1 C++ exceptions: class SALOME_Exception</A>
+</H2>
+
+<H3>definition</H3>
+
+<P>The class <CODE>SALOME_Exception</CODE> provides a generic method to send
+a message, with optional source file name and line number. This class
+is intended to serve as a base class for all kinds of exceptions
+SALOME code. All the exceptions derived from <CODE>SALOME_Exception</CODE> could
+be handled in a single catch, in which the message associated to
+the exception is displayed, or sent to a log file.
+<P>The class <CODE>SALOME_Exception</CODE> inherits its behavior from the STL
+class exception.
+<H3>usage</H3>
+
+<P>The header <CODE>SALOME/src/utils/utils_SALOME_Exception.hxx</CODE> must be
+included in the C++ source, when raised or trapped:
+<P><CODE>#include </CODE>"<CODE>utils_SALOME_Exception.hxx</CODE>"
+<P>The <CODE>SALOME_Exception</CODE> constructor is:
+<P>
+<PRE>
+SALOME_Exception( const char *text,
+ const char *fileName=0,
+ const unsigned int lineNumber=0 );
+</PRE>
+<P>The exception is raised like this:
+<P>
+<PRE>
+throw SALOME_Exception("my pertinent message");
+</PRE>
+<P>or like this:
+<P>
+<PRE>
+throw SALOME_Exception(LOCALIZED("my pertinent message"));
+</PRE>
+<P>where LOCALIZED is a macro provided with <CODE>utils_SALOME_Exception.hxx</CODE>
+which gives file name and line number.
+<P>The exception is handled like this:
+<P>
+<PRE>
+try
+ {
+ ...
+ }
+catch (const SALOME_Exception &ex)
+ {
+ cerr << ex.what() <<endl;
+ }
+</PRE>
+<P>The <CODE>what()</CODE> method overrides the one defined in the STL exception
+class.
+<H2><A NAME="ss2.2">2.2 CORBA exceptions</A>
+</H2>
+
+<H3>definition</H3>
+
+<P>The idl <CODE>SALOME_Exception</CODE> provides a generic CORBA exception for
+SALOME, with an attribute that gives an exception type,a message,
+plus optional source file name and line number.
+<P>This idl is intended to serve for all user CORBA exceptions raised
+in SALOME code, as IDL specification does not support exception inheritance.
+So, all the user CORBA exceptions from SALOME could be handled in
+a single catch.
+<P>The exception types defined in idl are:
+<P>
+<DL>
+<DT><B>COMM</B><DD><P>CORBA communication problem,
+<DT><B>BAD_PARAM</B><DD><P>Bad User parameters,
+<DT><B>INTERNAL_ERROR</B><DD><P>application level problem (often irrecoverable).
+</DL>
+<P>CORBA system and user exceptions already defined in the packages
+used within SALOME, such as OmniORB exceptions, must be handled separately.
+<H3>usage</H3>
+
+<H3>CORBA servant, C++</H3>
+
+<P>The CORBA Server header for <CODE>SALOME_Exception</CODE> and a macro to throw
+the exception are provided with the header <CODE>SALOME/src/Utils/Utils_CorbaException.hxx</CODE>:
+<P>
+<PRE>
+#include "Utils_CorbaException.hxx"
+</PRE>
+<P>The exception is raised with a macro which appends file name
+and line number.
+<P>
+<PRE>
+if (myStudyName.size() == 0)
+ THROW_SALOME_CORBA_EXCEPTION("No Study Name given", \
+ SALOME::BAD_PARAM);
+</PRE>
+<H3>CORBA Client, GUI Qt C++</H3>
+
+<P>The CORBA Client header for <CODE>SALOME_Exception</CODE> and a Qt function
+header that displays a message box are provided in <CODE>SALOME/src/SALOMEGUI/SALOMEGUI_QtCatchCorbaException.hxx</CODE>:
+<P>
+<PRE>
+#include "SALOMEGUI_QtCatchCorbaException.hxx"
+</PRE>
+<P>A typical exchange with a CORBA Servant will be:
+<P>
+<PRE>
+try
+ {
+ ... // one ore more CORBA calls
+ }
+catch (const SALOME::SALOME_Exception & S_ex)
+ {
+ QtCatchCorbaException(S_ex);
+ }
+</PRE>
+<H3>CORBA Client, C++, without GUI</H3>
+
+<P>Nothing specific has been provided to the developer yet. See
+the idl or the Qt function <CODE>SALOMEGUI_QtCatchCorbaException.hxx</CODE> to
+see how to get the information given by the exception object.
+<HR>
+<A HREF="kernel_resources-3.html">Next</A>
+<A HREF="kernel_resources-1.html">Previous</A>
+<A HREF="kernel_resources.html#toc2">Contents</A>
+</BODY>
+</HTML>
--- /dev/null
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
+<HTML>
+<HEAD>
+ <META NAME="GENERATOR" CONTENT="SGML-Tools 1.0.9">
+ <TITLE>SALOME Kernel resources for developer: Miscellaneous tools</TITLE>
+ <LINK HREF="kernel_resources-2.html" REL=previous>
+ <LINK HREF="kernel_resources.html#toc3" REL=contents>
+</HEAD>
+<BODY>
+Next
+<A HREF="kernel_resources-2.html">Previous</A>
+<A HREF="kernel_resources.html#toc3">Contents</A>
+<HR>
+<H2><A NAME="s3">3. Miscellaneous tools</A></H2>
+
+<H2><A NAME="ss3.1">3.1 Singleton</A>
+</H2>
+
+<H3>Definition</H3>
+
+<P>A singleton is an application data which is created and deleted
+only once at the end of the application process. The C++ compiler
+allows the user to create a static singleton data before the first
+executable statement. They are deleted after the last statement execution.
+<P>The <CODE>SINGLETON_</CODE> template class deals with dynamic singleton. It
+is useful for functor objects. For example, an object that connects
+the application to a system at creation and disconnects the application
+at deletion.
+<H3>Usage</H3>
+
+<P>To create a single instance a POINT object :
+<P>
+<PRE>
+# include "Utils_SINGLETON.hxx"
+...
+POINT *ptrPoint=SINGLETON_<POINT>::Instance() ;
+assert(ptrPoint!=NULL) ;
+</PRE>
+<P>No need to delete ptrPoint. Deletion is achieved automatically
+at exit. If the user tries to create more than one singleton by using
+the class method <CODE>SINGLETON_<TYPE>::Instance()</CODE>, the pointer
+is returned with the same value even if this is done in different
+functions (threads ?).
+<P>
+<PRE>
+POINT *p1=SINGLETON_<POINT>::Instance() ;
+...
+POINT *p2=SINGLETON_<POINT>::Instance() ;
+assert(p1==p2)
+</PRE>
+<H3>Design description</H3>
+
+<P>Here are the principles features of the singleton design :
+<P>
+<UL>
+<LI>the user creates an object of class <CODE>TYPE</CODE> by using the class method
+<CODE>SINGLETON_<TYPE>::Instance()</CODE> which returns a pointer to the
+single object ;</LI>
+<LI>to create an object, <CODE>SINGLETON_<TYPE>::Instance()</CODE> uses
+the default constructor of class <CODE>TYPE</CODE> ;</LI>
+<LI>at the same time, this class method creates a destructor object
+which is added to the generic list of destructor objects to be executed
+at the end of the application (<CODE>atexit</CODE>) ;</LI>
+<LI>at the end of the application process all the deletions are performed
+by the <CODE>Nettoyage()</CODE> C function which executes the destruction objects
+end then deletes the destructions objects themselves ;</LI>
+<LI>the <CODE>Nettoyage()</CODE> C function using atexit() C function is embedded
+in a static single object <CODE>ATEXIT_()</CODE>.</LI>
+</UL>
+<P>
+<P>
+<HR>
+Next
+<A HREF="kernel_resources-2.html">Previous</A>
+<A HREF="kernel_resources.html#toc3">Contents</A>
+</BODY>
+</HTML>
--- /dev/null
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
+<HTML>
+<HEAD>
+ <META NAME="GENERATOR" CONTENT="SGML-Tools 1.0.9">
+ <TITLE>SALOME Kernel resources for developer</TITLE>
+ <LINK HREF="kernel_resources-1.html" REL=next>
+
+
+</HEAD>
+<BODY>
+<A HREF="kernel_resources-1.html">Next</A>
+Previous
+Contents
+<HR>
+<H1>SALOME Kernel resources for developer</H1>
+
+<H2>Antoine Yessayan, Paul Rascle </H2>Version 0.1 January 16, 2002
+<P><HR>
+<EM>ABSTRACT </EM>
+<HR>
+<P><HR>
+<EM>This document describes the development environment for C++ and
+ Python. Makefiles generation and usage are introduced in another
+ document: "using the SALOME configuration and building system environment".
+ Development environment is intended here as: trace and debug macros
+ usage; SALOME exceptions usage, in C++ and Python; user CORBA exceptions
+ usage, in C++ and Python, with and without Graphical User Interface;
+ some general purpose services such as singleton, used for CORBA connection
+ and disconnection.</EM>
+<HR>
+<P>
+<H2><A NAME="toc1">1.</A> <A HREF="kernel_resources-1.html">Trace and debug Utilities</A></H2>
+
+<UL>
+<LI><A HREF="kernel_resources-1.html#ss1.1">1.1 Two modes: debug and release</A>
+<LI><A HREF="kernel_resources-1.html#ss1.2">1.2 C++ Macros for trace and debug</A>
+</UL>
+<P>
+<H2><A NAME="toc2">2.</A> <A HREF="kernel_resources-2.html">Exceptions</A></H2>
+
+<UL>
+<LI><A HREF="kernel_resources-2.html#ss2.1">2.1 C++ exceptions: class SALOME_Exception</A>
+<LI><A HREF="kernel_resources-2.html#ss2.2">2.2 CORBA exceptions</A>
+</UL>
+<P>
+<H2><A NAME="toc3">3.</A> <A HREF="kernel_resources-3.html">Miscellaneous tools</A></H2>
+
+<UL>
+<LI><A HREF="kernel_resources-3.html#ss3.1">3.1 Singleton</A>
+</UL>
+<HR>
+<A HREF="kernel_resources-1.html">Next</A>
+Previous
+Contents
+</BODY>
+</HTML>
--- /dev/null
+#LyX 1.1 created this file. For more info see http://www.lyx.org/
+\lyxformat 218
+\textclass linuxdoc
+\language english
+\inputencoding default
+\fontscheme default
+\graphics default
+\paperfontsize 10
+\spacing single
+\papersize Default
+\paperpackage a4
+\use_geometry 0
+\use_amsmath 0
+\paperorientation portrait
+\secnumdepth 3
+\tocdepth 3
+\paragraph_separation indent
+\defskip medskip
+\quotes_language english
+\quotes_times 2
+\papercolumns 1
+\papersides 1
+\paperpagestyle default
+
+\layout Title
+\added_space_top vfill \added_space_bottom vfill
+SALOME Kernel resources for developer
+\layout Author
+
+Antoine Yessayan, Paul Rascle
+\layout Date
+
+Version 0.1 January 16, 2002
+\layout Abstract
+
+ABSTRACT
+\layout Abstract
+
+This document describes the development environment for C++ and Python.
+ Makefiles generation and usage are introduced in another document:
+\begin_inset Quotes eld
+\end_inset
+
+using the SALOME configuration and building system environment
+\begin_inset Quotes erd
+\end_inset
+
+.
+ Development environment is intended here as: trace and debug macros usage;
+ SALOME exceptions usage, in C++ and Python; user CORBA exceptions usage,
+ in C++ and Python, with and without Graphical User Interface; some general
+ purpose services such as singleton, used for CORBA connection and disconnection.
+\layout Standard
+
+
+\begin_inset LatexCommand \tableofcontents{}
+
+\end_inset
+
+
+\layout Section
+
+Trace and debug Utilities
+\layout Standard
+
+During the development process, an execution log is useful to identify problems.
+ This log contains messages, variables values, source files names and line
+ numbers.
+ It is recommended to verify assertions on variables values and if necessary,
+ to stop the execution at debug time, in order to validate all parts of
+ code.
+\layout Subsection
+
+Two modes: debug and release
+\layout Standard
+
+The goal of debug mode is to check as many features as possible during the
+ early stages of the development process.
+ The purpose of the utilities provided in SALOME is to help the developer
+ to add detailed traces and check variables values, without writing a lot
+ of code.
+\layout Standard
+
+When the code is assumed to be valid, the release mode optimizes execution,
+ in terms of speed, memory, and display only user level messages.
+\layout Standard
+
+But, some informations must always be displayed in both modes: especially
+ messages concerning environment or internal errors, with version identification.
+ When an end user is confronted to such a message, he may refer to a configurati
+on documentation or send the message to the people in charge of SALOME installat
+ion, or to the development team, following the kind of error.
+\layout Subsection
+
+C++ Macros for trace and debug
+\layout Standard
+
+SALOME provides C++ macros for trace and debug.
+ These macros are in
+\family typewriter
+SALOME/src/utils/utilities.h
+\family default
+ and this file must be included in C++ source.
+ Some macros are activated only in debug mode, others are always activated.
+ To activate the debug mode,
+\family typewriter
+_DEBUG_
+\family default
+ must be defined, which is the case when SALOME Makefiles are generated
+ from configure, without options.
+ When
+\family typewriter
+_DEBUG_
+\family default
+ is undefined (release mode), the debug mode macros are defined empty (they
+ do nothing).
+ So, when switching from debug to release, it is possible (and recommended)
+ to let the macro calls unchanged in the source.
+\layout Standard
+
+All the macros writing on the standard output start by flushing the standard
+ error.
+ At the end of the display those macros flush the standard output.
+\layout Standard
+
+Two informations are systematically added in front of the information displayed:
+\layout Itemize
+
+the name of the source file in which the macros is set;
+\layout Itemize
+
+the line number of the source file at which the macro is set.
+\layout Subsubsection
+
+Macros defined in debug and release modes
+\layout Paragraph
+
+INFOS_COMPILATION
+\layout Standard
+
+The C++ macro
+\family typewriter
+INFOS_COMPILATION
+\family default
+ writes on the standard output informations about the compiling process:
+
+\layout Itemize
+
+the name of the compiler :
+\family typewriter
+g++, KCC, CC, pgCC
+\family default
+;
+\layout Itemize
+
+the date and the time of the compiling processing process.
+\layout Standard
+
+This macro
+\family typewriter
+INFOS_COMPILATION
+\family default
+ does not have any argument.
+ Moreover, it is defined in both compiling mode :
+\family typewriter
+_DEBUG_
+\family default
+ and
+\family typewriter
+_RELEASE_
+\family default
+.
+\layout Standard
+
+Example :
+\layout Verbatim
+
+#include "utilities.h"
+\layout Verbatim
+
+int main(int argc , char **argv)
+\layout Verbatim
+
+{
+\layout Verbatim
+
+ INFOS_COMPILATION;
+\layout Verbatim
+
+ ...
+\layout Verbatim
+
+}
+\layout Paragraph
+
+INFOS(str)
+\layout Standard
+
+In both compiling mode
+\family typewriter
+_DEBUG_
+\family default
+ and
+\family typewriter
+_RELEASE_
+\family default
+, The C++ macro
+\family typewriter
+INFOS
+\family default
+ writes on the standard output the string which has been passed in argument
+ by the user.
+\layout Standard
+
+Example :
+\layout Verbatim
+
+#include "utilities.h"
+\layout Verbatim
+
+int main(int argc , char **argv)
+\layout Verbatim
+
+{
+\layout Verbatim
+
+ ...
+
+\layout Verbatim
+
+ INFOS("NORMAL END OF THE PROCESS");
+\layout Verbatim
+
+ return 0;
+\layout Verbatim
+
+}
+\layout Standard
+
+displays :
+\layout Verbatim
+
+main.cxx [5] : NORMAL END OF THE PROCESS
+\layout Subsubsection
+
+Macros defined only in debug mode
+\layout Paragraph
+
+MESSAGE(str)
+\layout Standard
+
+In
+\family typewriter
+_DEBUG_
+\family default
+ compiling mode only, the C++ macro
+\family typewriter
+MESSAGE
+\family default
+ writes on the standard output the string which has been passed in argument
+ by the user.
+ In
+\family typewriter
+_RELEASE_
+\family default
+ compiling mode, this macro is blank.
+\layout Standard
+
+Example :
+\layout Verbatim
+
+#include "utilities.h"
+\layout Verbatim
+
+#include <string>
+\layout Verbatim
+
+using namespace std;
+\layout Verbatim
+
+int main(int argc , char **argv)
+\layout Verbatim
+
+{
+\layout Verbatim
+
+ ...
+
+\layout Verbatim
+
+ const char *str = "Salome";
+\layout Verbatim
+
+ MESSAGE(str);
+\layout Verbatim
+
+ ...
+ const string st;
+\layout Verbatim
+
+ st = "Aster";
+\layout Verbatim
+
+ MESSAGE(c_str(st+" and CASTEM"));
+\layout Verbatim
+
+ return 0;
+\layout Verbatim
+
+}
+\layout Standard
+
+displays :
+\layout Verbatim
+
+- Trace main.cxx [8] : Salome
+\layout Verbatim
+
+- Trace main.cxx [12] : Aster and CASTEM
+\layout Paragraph
+
+BEGIN_OF(func_name)
+\layout Standard
+
+In
+\family typewriter
+_DEBUG_
+\family default
+ compiling mode, The C++ macro
+\family typewriter
+BEGIN_OF
+\family default
+ appends the string
+\family typewriter
+"Begin of "
+\family default
+ to the one passed in argument by the user and displays the result on the
+ standard output.
+ In
+\family typewriter
+_RELEASE_
+\family default
+ compiling mode, this macro is blank.
+\layout Standard
+
+Example :
+\layout Verbatim
+
+#include "utilities.h"
+\layout Verbatim
+
+int main(int argc , char **argv)
+\layout Verbatim
+
+{
+\layout Verbatim
+
+ BEGIN_OF(argv[0]);
+\layout Verbatim
+
+ return 0;
+\layout Verbatim
+
+}
+\layout Standard
+
+displays :
+\layout Verbatim
+
+- Trace main.cxx [3] : Begin of a.out
+\layout Paragraph
+
+END_OF(func_name)
+\layout Standard
+
+In
+\family typewriter
+_DEBUG_
+\family default
+ compiling mode, The C++ macro
+\family typewriter
+END_OF
+\family default
+ appends the string
+\family typewriter
+"Normal end of "
+\family default
+ to the one passed in argument by the user and displays the result on the
+ standard output.
+ In
+\family typewriter
+_RELEASE_
+\family default
+ compiling mode, this macro is blank.
+\layout Standard
+
+Example :
+\layout Verbatim
+
+#include "utilities.h"
+\layout Verbatim
+
+int main(int argc , char **argv)
+\layout Verbatim
+
+{
+\layout Verbatim
+
+ END_OF(argv[0]);
+\layout Verbatim
+
+ return 0;
+\layout Verbatim
+
+}
+\layout Standard
+
+displays :
+\layout Verbatim
+
+- Trace main.cxx [4] : Normal end of a.out
+\layout Paragraph
+
+SCRUTE(var)
+\layout Standard
+
+In
+\family typewriter
+_DEBUG_
+\family default
+ compiling mode, The C++ macro
+\family typewriter
+SCRUTE
+\family default
+ displays its argument which is an application variable followed by the
+ value of the variable.
+ In
+\family typewriter
+_RELEASE_
+\family default
+ compiling mode, this macro is blank.
+\layout Standard
+
+Example :
+\layout Verbatim
+
+#include "utilities.h"
+\layout Verbatim
+
+int main(int argc , char **argv)
+\layout Verbatim
+
+{
+\layout Verbatim
+
+ const int i=999;
+\layout Verbatim
+
+ if( i > 0 ) SCRUTE(i) ; i=i+1;
+\layout Verbatim
+
+ return 0;
+\layout Verbatim
+
+}
+\layout Standard
+
+displays :
+\layout Verbatim
+
+- Trace main.cxx [5] : i=999
+\layout Paragraph
+
+ASSERT(condition)
+\layout Standard
+
+In
+\family typewriter
+_DEBUG_
+\family default
+ compiling mode only, The C++ macro
+\family typewriter
+ASSERT
+\family default
+ checks the expression passed in argument to be not NULL.
+ If it is NULL the process is stopped and the condition is written on the
+ standard output.
+ In
+\family typewriter
+_RELEASE_
+\family default
+ compiling mode, this macro is blank.
+ N.B.
+ : if
+\family typewriter
+ASSERT
+\family default
+ is already defined, this macro is ignored.
+\layout Standard
+
+Example :
+\layout Verbatim
+
+#include "utilities.h"
+\layout Verbatim
+
+...
+
+\layout Verbatim
+
+const char *ptrS = fonc();
+\layout Verbatim
+
+ASSERT(ptrS!=NULL);
+\layout Verbatim
+
+cout << strlen(ptrS);
+\layout Verbatim
+
+float table[10];
+\layout Verbatim
+
+int k;
+\layout Verbatim
+
+...
+
+\layout Verbatim
+
+ASSERT(k<10);
+\layout Verbatim
+
+cout << table[k];
+\layout Section
+
+Exceptions
+\layout Subsection
+
+C++ exceptions: class SALOME_Exception
+\layout Subsubsection
+
+definition
+\layout Standard
+
+The class
+\family typewriter
+SALOME_Exception
+\family default
+ provides a generic method to send a message, with optional source file
+ name and line number.
+ This class is intended to serve as a base class for all kinds of exceptions
+ SALOME code.
+ All the exceptions derived from
+\family typewriter
+SALOME_Exception
+\family default
+ could be handled in a single catch, in which the message associated to
+ the exception is displayed, or sent to a log file.
+\layout Standard
+
+The class
+\family typewriter
+SALOME_Exception
+\family default
+ inherits its behavior from the STL class exception.
+\layout Subsubsection
+
+usage
+\layout Standard
+
+The header
+\family typewriter
+SALOME/src/utils/utils_SALOME_Exception.hxx
+\family default
+ must be included in the C++ source, when raised or trapped:
+\layout Standard
+
+
+\family typewriter
+#include
+\family default
+"
+\family typewriter
+utils_SALOME_Exception.hxx
+\family default
+"
+\layout Standard
+
+The
+\family typewriter
+SALOME_Exception
+\family default
+ constructor is:
+\layout Verbatim
+
+SALOME_Exception( const char *text,
+\layout Verbatim
+
+ const char *fileName=0,
+\layout Verbatim
+
+ const unsigned int lineNumber=0 );
+\layout Standard
+
+The exception is raised like this:
+\layout Verbatim
+
+throw SALOME_Exception("my pertinent message");
+\layout Standard
+
+or like this:
+\layout Verbatim
+
+throw SALOME_Exception(LOCALIZED("my pertinent message"));
+\layout Standard
+
+where LOCALIZED is a macro provided with
+\family typewriter
+utils_SALOME_Exception.hxx
+\family default
+ which gives file name and line number.
+\layout Standard
+
+The exception is handled like this:
+\layout Verbatim
+
+try
+\layout Verbatim
+
+ {
+\layout Verbatim
+
+ ...
+\layout Verbatim
+
+ }
+\layout Verbatim
+
+catch (const SALOME_Exception &ex)
+\layout Verbatim
+
+ {
+\layout Verbatim
+
+ cerr << ex.what() <<endl;
+\layout Verbatim
+
+ }
+\layout Standard
+
+The
+\family typewriter
+what()
+\family default
+ method overrides the one defined in the STL exception class.
+\layout Subsection
+
+CORBA exceptions
+\layout Subsubsection
+
+definition
+\layout Standard
+
+The idl
+\family typewriter
+SALOME_Exception
+\family default
+ provides a generic CORBA exception for SALOME, with an attribute that gives
+ an exception type,a message, plus optional source file name and line number.
+
+\layout Standard
+
+This idl is intended to serve for all user CORBA exceptions raised in SALOME
+ code, as IDL specification does not support exception inheritance.
+ So, all the user CORBA exceptions from SALOME could be handled in a single
+ catch.
+\layout Standard
+
+The exception types defined in idl are:
+\layout Description
+
+COMM CORBA communication problem,
+\layout Description
+
+BAD_PARAM Bad User parameters,
+\layout Description
+
+INTERNAL_ERROR application level problem (often irrecoverable).
+\layout Standard
+
+CORBA system and user exceptions already defined in the packages used within
+ SALOME, such as OmniORB exceptions, must be handled separately.
+\layout Subsubsection
+
+usage
+\layout Paragraph
+
+CORBA servant, C++
+\layout Standard
+
+The CORBA Server header for
+\family typewriter
+SALOME_Exception
+\family default
+ and a macro to throw the exception are provided with the header
+\family typewriter
+SALOME/src/Utils/Utils_CorbaException.hxx
+\family default
+:
+\layout Verbatim
+
+#include "Utils_CorbaException.hxx"
+\layout Standard
+
+The exception is raised with a macro which appends file name and line number.
+\layout Verbatim
+
+if (myStudyName.size() == 0)
+\layout Verbatim
+
+ THROW_SALOME_CORBA_EXCEPTION("No Study Name given",
+\backslash
+
+\layout Verbatim
+
+ SALOME::BAD_PARAM);
+\layout Paragraph
+
+CORBA Client, GUI Qt C++
+\layout Standard
+
+The CORBA Client header for
+\family typewriter
+SALOME_Exception
+\family default
+ and a Qt function header that displays a message box are provided in
+\family typewriter
+SALOME/src/SALOMEGUI/SALOMEGUI_QtCatchCorbaException.hxx
+\family default
+:
+\layout Verbatim
+
+#include "SALOMEGUI_QtCatchCorbaException.hxx"
+\layout Standard
+
+A typical exchange with a CORBA Servant will be:
+\layout Verbatim
+
+try
+\layout Verbatim
+
+ {
+\layout Verbatim
+
+ ...
+ // one ore more CORBA calls
+\layout Verbatim
+
+ }
+\layout Verbatim
+
+catch (const SALOME::SALOME_Exception & S_ex)
+\layout Verbatim
+
+ {
+\layout Verbatim
+
+ QtCatchCorbaException(S_ex);
+\layout Verbatim
+
+ }
+\layout Verbatim
+
+\layout Paragraph
+
+CORBA Client, C++, without GUI
+\layout Standard
+
+Nothing specific has been provided to the developer yet.
+ See the idl or the Qt function
+\family typewriter
+SALOMEGUI_QtCatchCorbaException.hxx
+\family default
+ to see how to get the information given by the exception object.
+\layout Section
+
+Miscellaneous tools
+\layout Subsection
+
+Singleton
+\layout Subsubsection
+
+Definition
+\layout Standard
+
+A singleton is an application data which is created and deleted only once
+ at the end of the application process.
+ The C++ compiler allows the user to create a static singleton data before
+ the first executable statement.
+ They are deleted after the last statement execution.
+\layout Standard
+
+The
+\family typewriter
+SINGLETON_
+\family default
+ template class deals with dynamic singleton.
+ It is useful for functor objects.
+ For example, an object that connects the application to a system at creation
+ and disconnects the application at deletion.
+\layout Subsubsection
+
+Usage
+\layout Standard
+
+To create a single instance a POINT object :
+\layout Verbatim
+
+# include "Utils_SINGLETON.hxx"
+\layout Verbatim
+
+...
+
+\layout Verbatim
+
+POINT *ptrPoint=SINGLETON_<POINT>::Instance() ;
+\layout Verbatim
+
+assert(ptrPoint!=NULL) ;
+\layout Standard
+
+No need to delete ptrPoint.
+ Deletion is achieved automatically at exit.
+ If the user tries to create more than one singleton by using the class
+ method
+\family typewriter
+SINGLETON_<TYPE>::Instance()
+\family default
+, the pointer is returned with the same value even if this is done in different
+ functions (threads ?).
+\layout Verbatim
+
+POINT *p1=SINGLETON_<POINT>::Instance() ;
+\layout Verbatim
+
+...
+
+\layout Verbatim
+
+POINT *p2=SINGLETON_<POINT>::Instance() ;
+\layout Verbatim
+
+assert(p1==p2)
+\layout Subsubsection
+
+Design description
+\layout Standard
+
+Here are the principles features of the singleton design :
+\layout Itemize
+
+the user creates an object of class
+\family typewriter
+TYPE
+\family default
+ by using the class method
+\family typewriter
+SINGLETON_<TYPE>::Instance()
+\family default
+ which returns a pointer to the single object ;
+\layout Itemize
+
+to create an object,
+\family typewriter
+SINGLETON_<TYPE>::Instance()
+\family default
+ uses the default constructor of class
+\family typewriter
+TYPE
+\family default
+ ;
+\layout Itemize
+
+at the same time, this class method creates a destructor object which is
+ added to the generic list of destructor objects to be executed at the end
+ of the application (
+\family typewriter
+atexit
+\family default
+) ;
+\layout Itemize
+
+at the end of the application process all the deletions are performed by
+ the
+\family typewriter
+Nettoyage()
+\family default
+ C\SpecialChar ~
+function which executes the destruction objects end then deletes the destructi
+ons objects themselves ;
+\layout Itemize
+
+the
+\family typewriter
+Nettoyage()
+\family default
+ C \SpecialChar ~
+function using atexit() C \SpecialChar ~
+function is embedded in a static single object
+
+\family typewriter
+ATEXIT_()
+\family default
+.
+\the_end
--- /dev/null
+
+# -* Makefile *-
+#
+# Author : Patrick GOLDBRONN (CEA)
+# Date : 30/11/2001
+# $Header$
+#
+# source path
+top_srcdir=@top_srcdir@
+top_builddir=../..
+srcdir=@srcdir@
+VPATH=.:@srcdir@
+
+SUBDIRS= tui DevelopersGuide gui
+
+@COMMENCE@
+
+docs:
+ @@SETX@; for d in $(SUBDIRS); do \
+ (cd $$d && $(MAKE) $@) || exit 1; \
+ done; \
+ cp -f $(srcdir)/KERNEL_index.html KERNEL_index.html
+
+clean:
+ @@SETX@; for d in $(SUBDIRS); do \
+ (cd $$d && $(MAKE) $@) || exit 1; \
+ done
+
+distclean: clean
+ @@SETX@; for d in $(SUBDIRS); do \
+ (cd $$d && $(MAKE) $@) || exit 1; \
+ done
+
+install:
+ $(MAKE) docs
+ (cd tui && $(MAKE) install);
+ (cd gui && $(MAKE) install);
+ cp -f KERNEL_index.html $(docdir)
+
+uninstall:
+ @@SETX@; for d in $(SUBDIRS); do \
+ (cd $$d && $(MAKE) $@) || exit 1; \
+ done; \
+ rm -fr $(docdir)/KERNEL_index.html
--- /dev/null
+%!PS-Adobe-3.0
+%%BoundingBox: 0 0 595 842
+%%Creator: OpenOffice.org 1.0.2
+%%For: jroy
+%%CreationDate: Wed Apr 16 14:25:39 2003
+%%Title: OrganisationProduction_PAL.sxw
+%%LanguageLevel: 2
+%%DocumentData: Clean7Bit
+%%Pages: (atend)
+%%PageOrder: Ascend
+%%EndComments
+%%BeginProlog
+/ISO1252Encoding [
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
+/space /exclam /quotedbl /numbersign /dollar /percent /ampersand /quotesingle
+/parenleft /parenright /asterisk /plus /comma /hyphen /period /slash
+/zero /one /two /three /four /five /six /seven
+/eight /nine /colon /semicolon /less /equal /greater /question
+/at /A /B /C /D /E /F /G
+/H /I /J /K /L /M /N /O
+/P /Q /R /S /T /U /V /W
+/X /Y /Z /bracketleft /backslash /bracketright /asciicircum /underscore
+/grave /a /b /c /d /e /f /g
+/h /i /j /k /l /m /n /o
+/p /q /r /s /t /u /v /w
+/x /y /z /braceleft /bar /braceright /asciitilde /unused
+/Euro /unused /quotesinglbase /florin /quotedblbase /ellipsis /dagger /daggerdbl
+/circumflex /perthousand /Scaron /guilsinglleft /OE /unused /Zcaron /unused
+/unused /quoteleft /quoteright /quotedblleft /quotedblright /bullet /endash /emdash
+/tilde /trademark /scaron /guilsinglright /oe /unused /zcaron /Ydieresis
+/space /exclamdown /cent /sterling /currency /yen /brokenbar /section
+/dieresis /copyright /ordfeminine /guillemotleft /logicalnot /hyphen /registered /macron
+/degree /plusminus /twosuperior /threesuperior /acute /mu /paragraph /periodcentered
+/cedilla /onesuperior /ordmasculine /guillemotright /onequarter /onehalf /threequarters /questiondown
+/Agrave /Aacute /Acircumflex /Atilde /Adieresis /Aring /AE /Ccedilla
+/Egrave /Eacute /Ecircumflex /Edieresis /Igrave /Iacute /Icircumflex /Idieresis
+/Eth /Ntilde /Ograve /Oacute /Ocircumflex /Otilde /Odieresis /multiply
+/Oslash /Ugrave /Uacute /Ucircumflex /Udieresis /Yacute /Thorn /germandbls
+/agrave /aacute /acircumflex /atilde /adieresis /aring /ae /ccedilla
+/egrave /eacute /ecircumflex /edieresis /igrave /iacute /icircumflex /idieresis
+/eth /ntilde /ograve /oacute /ocircumflex /otilde /odieresis /divide
+/oslash /ugrave /uacute /ucircumflex /udieresis /yacute /thorn /ydieresis] def
+
+/psp_definefont { exch dup findfont dup length dict begin { 1 index /FID ne
+{ def } { pop pop } ifelse } forall /Encoding 3 -1 roll def
+currentdict end exch pop definefont pop } def
+
+/pathdict dup 8 dict def load begin
+/rcmd { { currentfile 1 string readstring pop 0 get dup 32 gt { exit }
+{ pop } ifelse } loop dup 126 eq { pop exit } if 65 sub dup 16#3 and 1
+add exch dup 16#C and -2 bitshift 16#3 and 1 add exch 16#10 and 16#10
+eq 3 1 roll exch } def
+/rhex { dup 1 sub exch currentfile exch string readhexstring pop dup 0
+get dup 16#80 and 16#80 eq dup 3 1 roll { 16#7f and } if 2 index 0 3
+-1 roll put 3 1 roll 0 0 1 5 -1 roll { 2 index exch get add 256 mul }
+for 256 div exch pop exch { neg } if } def
+/xcmd { rcmd exch rhex exch rhex exch 5 -1 roll add exch 4 -1 roll add
+1 index 1 index 5 -1 roll { moveto } { lineto } ifelse } def end
+/readpath { 0 0 pathdict begin { xcmd } loop end pop pop } def
+
+systemdict /languagelevel known not {
+/xshow { exch dup length 0 1 3 -1 roll 1 sub { dup 3 index exch get
+exch 2 index exch get 1 string dup 0 4 -1 roll put currentpoint 3 -1
+roll show moveto 0 rmoveto } for pop pop } def
+/rectangle { 4 -2 roll moveto 1 index 0 rlineto 0 exch rlineto neg 0
+rlineto closepath } def
+/rectfill { rectangle fill } def
+/rectstroke { rectangle stroke } def } if
+
+/psp_lzwfilter { currentfile /ASCII85Decode filter /LZWDecode filter } def
+/psp_ascii85filter { currentfile /ASCII85Decode filter } def
+/psp_lzwstring { psp_lzwfilter 1024 string readstring } def
+/psp_ascii85string { psp_ascii85filter 1024 string readstring } def
+/psp_imagedict {
+/psp_bitspercomponent { 3 eq { 1 }{ 8 } ifelse } def
+/psp_decodearray { [ [0 1 0 1 0 1] [0 255] [0 1] [0 255] ] exch get }
+def 7 dict dup
+/ImageType 1 put dup
+/Width 7 -1 roll put dup
+/Height 5 index put dup
+/BitsPerComponent 4 index psp_bitspercomponent put dup
+/Decode 5 -1 roll psp_decodearray put dup
+/ImageMatrix [1 0 0 1 0 0] dup 5 8 -1 roll put put dup
+/DataSource 4 -1 roll 1 eq { psp_lzwfilter } { psp_ascii85filter } ifelse put
+} def
+%%EndProlog
+%%Page: 0 0
+%%PageBoundingBox: 18 18 577 824
+%%BeginSetup
+%
+%%BeginFeature: *PageSize A4
+<</PageSize [595 842] /ImagingBBox null>> setpagedevice
+%%EndFeature
+%%EndSetup
+%%BeginPageSetup
+%
+gsave
+[0.24 0 0 -0.24 18 824] concat
+gsave
+%%EndPageSetup
+/Times-Bold-iso1252 /Times-Bold ISO1252Encoding psp_definefont
+grestore
+gsave
+readpath
+V02B500DBB000197E03B100B008197~
+closepath clip newpath
+gsave
+693 622 translate
+2.48157 2.47852 scale
+/DeviceRGB setcolorspace
+380 163 0 1 psp_imagedict image
+J3RD%fG"r'"b]2#:hXAd)[hEh@M(SI<[AN=7H774jC17kO2kcD3>@cH-^%(Id[=XK>q247Ahs1HenI(2
+c=YP)`9r%:TMHt7qAfcs8#&sq[(8[]Pte2Ul;[&F7]TIg<biG]]lpeiY#jsj)^U*\A$aj*(;!STdr2["
+/_:r<cL#Yb?#MZKeb8fg^#3h]/-ZUoKu@CS=F=F&)3;gKEOe2d;^I^Q5Tc'=lj=%$K#/Z"W&-7C%>D]o
+0aO:5.h[b/,4VVUE\SVpa5aH3*/[B4PK>*`BhYg6/sT*VZPe/5CG_O)k;-i%icdSXcmP&,r=4HJUX?%t
+>$W>?8uC)eodY)^UK+;DX#5dj?FsCE="Etp%?eP>Z-4;nlWpgNCk(0rpFDf_lZTns0/orN])-rki%R,A
+*YSp9^u"T@XBm\%NlU393@pb#/!dj,TF]Z7p&tSM_-mn"<#QV\L;Mos(kbX+'o>AROa,Af3>dfHj71e*
+N^Y7UalJVA1o=D+QV++ffo3XV24@8%F.'E#3rYaIkS+pLrVo<];<\d`<A'\6Vc2jq)O4's<NB-c'q3Zj
+\QuC?lkUNL%`nj[:G!6l<8uMD[Ti.N)f<mZFLb[q(OO]dq0B]l.$Nin$OHa:@IY2)<\G>Ma(+ZX*0s?Z
+A>$a\cj/n0r;qR9i38#".Lcf>_dRNJN'\m&MSu79W'g+Z)h,h;n];2c73I`7Up>h&W_Y.0b9c`DN4*@Q
+RS9TbM7i+j4Ij`1F6X29LHhN[W74F&.[)rDe#E!INCp*JWn"-BMTonF>cu\Zp'V=ea(2L/XS.QHWn2'e
+^TI5<NQUF+]%sO`Mp:P]I([nl(^p<MR=W4_n@4E@.h.HUj)K>1N^G0:[cOgjL]dV["+igHd!.r*'aoa`
+@F4e&7O8_*7:OYh`+CkGM*Ic_q#lF@,EbW/dWn6X<@aA.AT-7TM>I.;9dXpa`85VpSk`q)\b-/X6_Db>
+<,*^#Pt@iN.FbqW2PF'K<GFC;V.-Q0Y#al=Ws*Zn*3r^`epBi_eSDTtD:\T<`Wn--?#J8@`THhFR+L\+
+qt:63K"td`fN^lZ'o0cfEL?ZHEoiM-ATHIK_u]f<J&*83BKRIP$AHA@YipI$,8,jP,-bg'$8WT[a!7kQ
+r.79[Oi\lSBfr+U(lc:AZKLQE>;;L=VR&k,c>tn7:+(,Im/hQ"T?udY8j+)V7A\E]PcAReT2MRe.Q(D#
+>-h>5ea'R*]n4.2Z.U\:CH\E@%?=Vo[d/@Yis:n*0"5W/MI1\ChCc5c*4>`r_7sqjWqCD?LrJAY\=A"(
++caY*13m]%@K?=T^L0l/*#9+kKgDDoQtuBp&W&p8O]\ts0c>s?j,r!dIR,->8E>q:1kklWPtL-nH$$c/
+0pt_rP0()fEB0RbkEFTC%Y6p>;!=-I2'.<4V*Ci`L[?]q8;"^OeQ?*\+'G[GlLil]HF[Cf=DX9223-!o
+Zs)itgJ,E8E49(iQTDM%nThfSmu`H,pAl#-;_U192BMsP`FAA#Wg5jm7Xen=R2R,)>6'/gTQ!Euq@<jb
+_Olq1loH3dK>1j!kN#Ye(lZFBOiZTu/JF&`A9%u-MG5@[b,$l87(QGQQHU[s.BLO-1n7:<1WeGKF[2PF
+BCmZ*&pFMTd]%?2D*":cW77hi9!):#8qg<<eVG5`%pc6flu8F'Ra5NJg$Nt+AZ!Qf\D4629<<:cFcYAI
+GK]CMs*_F^i=qXNL%tP)iZXAqAh+gYNoV:-8(Gc`R".CD:WMf.qZhd@@8OIE2B<<`5p3CVPZB4LM8j#P
+W5NR:*KWc:;>D2d8LK]oA?ra6Z;iKD9BK.:UrI0JJ'M\*\`EI45G1hd<&s8M^@5=1ge!cH>md-8)pul5
+P8)/o@22R2Wk/V=<BqnaPfC<)P3$u&?W9[0[bYkO>]*V)V:ON']%s9FLWf5%jE]W)Q[/hu%>VK&0iU8)
+2][4`jDn?r'+pbuZ9Sr"Q<C1&_^_7E:l&'rY^TmtOfUqPD4$ns[M_e0;s!ZKIRk_>.3+LD-BlRu18uL\
+d.;-7?4HWR``G'f^Lo@%gu\JuT?nt3g(X$A7?CBG1l>Q[Rer[@B([XE;QD%@<\$&-h/^,6YLXeZRh\E5
+B!U,AQE*0OdqlMJXu>%*_Wc*PhCeQ'[IWp;^#,p;r#QLZL;W"*336FB%aSq&&W0&J/0%qn!$DGen,`ar
+J\bb+GZ5S!$&5@.AX*9]n@1q:)K#3nc2SfF8)t:#'TPa2P<YlVR8g=l.?d!X/Z/]iDT-UlQ#0I29p/^F
+Y=5=bCclZU=NfqA$#M;_/>U&4$tga**lg47R'h7b@^TLE=4jjf9Zc<hZWZPBqc0fP+E=t6W:_Z9.(G)3
++nq@HmM?04(=XX_lKp.&C,oQQ8*2HBNQ5Q")'"r<,5?Q"PY_OQA?'r]",j0E!F7hqL-i[ePlUU=Z9>%P
+9a8M;q&GF8U[eZFMErMJ5@j<9oVttDQHCG5\V/*#0q(enEd>k%3iH:B%ER*H!eiq6dASH]j"]K_Hc^!p
+#j^I?qH,CTnRbcBM-R17W4!'#L;.3'fdub0!c==uHbQCZ$]W<lFLk+VO8I/(G::2_0CR*X#6BFni@t$h
+:)aq(`T+56$t`-SPK;i=\!R9s"Ts?B@*j-d-5?`45$s/CCKtgt=F^bCkd4eP)3.2HdA[7l6Q_F^A)K,b
+JDuW"]\]ij>fL>2Kg2H`H,Sif3eL/PM'bWZ7miCk(sY^K`ck(Q;^NYCqN?P2P"3].p$FZF>Fn`.ebPaR
+a]Dg!.$\""VTgMc(f6.`j!i(I\m94*Hc>.?HbNboaG(.n"W+TkPV!-s-P_QZ@r]!4j7aj`SRen,];,K$
+r-go(O>nd+q#,o?'9(9=>s/aU6t1.LXC47$AjGC]kkp$!n9I1=-Y9Yk.4US*,;RqW\mmF^bN?'qbCSU[
+S^/[iaUEWB*M6-"e7q,es%9-:.C=<c.\R6KeLG]VQ"$dsX4F>Zb5H4q?EmT`G&&\(a_Ij)D78bY_W,[6
+.+XB^l&AOuRS9o/lg=gRQ<#lF[#@0n'8j?UnQ>.,+iNPi!6Zi"rUKr[!#<u%oFh-&$&(_)OP"@F+VBQ!
+ifR?M7N2G\5pK7ZjF0$2O!fg_V:8gK.@!@Gdb/`V@4bur>pTTii^Z"j:8Ch!o_*huOi^ZuQA_I48Yo>L
+PhL7DRes'`gWha3$@c0N1>6W$c$mK;Yup?'X#6KrBsZ=SFU5Z,pMdWAT244J)4p!lQ;eU!dCC16W*nlR
+7,p'$=iF3WGarA0GrAo917;<_gG&\W^S#O:,Q82ZKYjF$fAlQD%u3OsE@@nX0,0@6UG9jFH8Qh*aCFci
+/<WdRPf+_ca_\Oq0SDNZ07r`uHiP[pV_bm5np`ircY.D-,moQ$UXH*j1dZbe"fTqNF\8_R@g]8;X(Tr*
+/sAu5;*\]X"+A8^X@t-fbABkj9=Rg@VkqqTms)Lqm8DQk3:rMJ=VMZ'/]SB1`*nk^1[8D5pjBfJR7sbf
+09q&Oi(p9s((CM"6=4T<qmZW-:IF+r#aA@=(Q$.@al<^;I//jpA1rcbQ;&`k8n@KA";VXJQqV*j#OL#Y
+242,70/p\ng96L_@h^3Y\JiDS^EHE'9]cQ_2^9/]8u3$")QVD('tVq04L&\NCfK\*1<22?5HRtuAZ>]J
+\6NoQ2s^$SGIlW`f:1mirHc7dE&[\1(C>l5ic*PO7P>dA^YJB_4Jl12k]T34j$RRo!*;r^Tb)HB1)CFS
+6m8fPHqGn'Mo=X(K`aX>*fnAf1+=3+9)k*t,r2GNZ<HgF5!iiR,[)u]R\,cpa].hX4I4>B10M8!M%D/.
+QW,G?17Lt08mMqI\L?gQUK/eNV!r3=W33-N1MY]9Licf[SBi#%ZJ09+gb#_!S^QhID7A?P/)4QtdW7S@
+08pqW$\lRY*q*oO-P)-U]ro\NC[WbNbN9oXa:o*gG=f)*"a'A`(CGmaiR&KY9\bS8^>ffme7&"jO%5ft
+)&-)+&;eN*&LgDF<@sM0j`;9#34bo14J)%%h!TGNIDI<C2sh(Q7AE`DYPM6OR8'SD?^*U26D[\^<U+^q
+[;)sNY?,NTb8#KH@Bs&&ese7oX%p-.mM?girVB,J/Z)GQFlrLH^L!c#K`aZ(Ku7?h(n=V[)2Lp8g:,i@
+j<e534s)H`j8K8dK#+,KkY*HB%#2ZnnGiSq4VEW?ij"<PC+UE_Ptt&Nm#":YP0'F2M+jpN.<E)W_aA1Q
+1EDJ"-M(o=,j_s4.[l=IX/YO^I(nh:LU@_cf6&AS/NMP=EAacH#):*<L!&n4f;nTQ%>r+!ZIu>(VYdg$
+Cn0%NAcrb>mrWn^Y4mk!h<TI&hlle_e`uBeZIe=TLZU%1b&U^'q$<t1(rN.5ZMB:Yjokj=5b@FgZlSLM
+7PMU]FS%aA&;`hbOa*C./K0R;j3cN_E^^TAQ;e/Z6V[4LI*1QVa]uhs0nRU2:V"C6FZZ//VpkJ=re3_6
+;/"HllgajDV:)?-qK58s;lE\G<Ed@J[8sG2CULbHL;@B'fkH[t7AeUNTqYL<)#TC]EO^pd9%0e3OI9.W
+euUeCrKcW_@5)p"&rgSY6Dmu+,U3:I@T6VW#_`B^T`0MY+L#NA+qk<;_]c83EN*+A/#T+]=JT+V(lcMp
+Z)Hr5@b?1P,dM,HU)aYkb9aHloR:9iR7F!*;psq+3h=SEZfu<.K.iqG+HInFjEtrM9e!D0H?aCJ=KbkF
+=nD'f>('I&[Hd^5G0"Z$Q8Ij.U+A,Z/"Nj>6g!EL\\;DeCVA`upV#H'/a$];"&PFA=tWmZ,85sRj"\(1
+IO4BEalMoWHL&-Bn9Ts$$EsP:4U6YW+]-g%4r4fb)j-(<e6Xj)NCMe;f^mrbp3Sr5:K)(1*>40#AWjTE
+GVET*):8j<ZDje2@CTJMLKec8n=WUV/]Rt,[bu?fg[<d,3h&pC\fG];e)IQ4NkOb$Qc%Z=@Bi9DG$!ds
+d/C@:Xd7^Wro%k->jdptC\@L<]\Y;CgZAG/J\PTs(d'\m&VS,3nT^R9595m+jR9Q_[U1`hJ&%^r8,KFD
+pB28]+9K-#)\7]l,&o$47P>HO((\U.6UfN/ON='B8M$<+-##9.W5T]HTQj]N%BB+X6.%*NcDPa*m.u2p
+=KgKlROhX%(o,'*`tai578TXP?aWM.>-D&.dOTF>8pI@^>s@Uu9.cUXr3Y1[G0<lthcQjQcKR5]EkQ[Q
+(so>hZeb:kZ9GL;8'W%aLrA;E\)VclM0Z8D9dl;8j"C(V4lB-r,SggoHa[/(^]@_(%>Viq&NH"U,8Z5,
++iXWtp$!Q[87YLV,aM.PPY,KW-_o6u07-B#B4R2E1H14e,>iN&0o#Ls:gXnr*6%:tO?DRl3^L.h_OXY=
+2)r-GoX\,-)p``GjnE,d=DV"ceWo`<Zp(SbX%fbQ6(h:d2_#d+\TYL:X`do#Jbaf25B'^`p(n0mJ)YHM
+]Oj)5Kmpcj=Y,S//X=OF+-5%?$4-fd_BA?H1bo^RKu9W>#b4(/&rT1&nYjZOruR6B,VgegP"M$@21PjP
+oVu%EQHUZH.<O!ISjk.IE[UMMHTn(K-o<Co&rT5SdO@#PiDfH\RoC_W)6HN2SmjLH'F?>YQT]oP/2f!d
+o#jt<eY^jHe)oD&\(iShX.@]&qn(O"2lkd*qgQ<:RB9Oe%'lP5<A?:=\aak<I(leNGMU^-QF=LM%u:o0
+#l&b_i<CPOp]+Ak6XfKJKMEg.Lo6S5G75ZU*J?SO&fD).8L813?#`EJW`^+'b2UWWH\piAH-PLcLQ(Y9
+nt"+`1YNQRJOQ9FV\3,^iJQQ[e)f*tJp?(0@DQ:`3`FGgoWM?^P"24R(;d"Lm,9_rO\WB&5&M/Qh9P6\
+]3R'+H_&j]I(qkK\-q.&pA2X3YEp50#3,Ef4ttW)_sR8bb<L%Z#P8?."+S.[n;'aN(CYr2?]Wie7NiD%
+`?Oh3bZZk@NQ7g"#ipk-,EU"mnnCd`<t^20V=P"PaJsPl!".uT]]O2pT$JeU\d[fJM.+6ZP_r0bQV=:*
+WV$UX8d<UW]-l)X"_+rEY1?OkF@-P'14rQbOW.#pdepQ.X-NR9^o2Qa^+T/<c0G%N]=r4Y$j5f#KRMg]
+fSiQU(Q:AM=SF<=76CZ'W#H30"1e40IDK8eGXLU-pkD.BnG%Z+,nl-G*:ElIF[uK_Vk]C<m!_AHOsc1/
+($jRQop/6^deSR4XP7j<j:cgGk"@b*7na17lc+VIU/>UR8e]4)n9<>qeG=#7QV"!cWm5f]\56g<:Fjo+
+"SFlo7PNg8#G%`oCURF60/I&hK3tlZ"/[q;8[@W9_QVSgoHEr6K&LZeVp$4rLrEhrf_cdVood>T1>'([
+!VleJ_'#r648KTtKu.3dk^5Q3&rFOMce%5!0c,eh,B;qsJib-:aJ?+54H<>ePtE?Cl"n4>16+e8ZY@)3
+EYC+*!!RK:qLLl(d3s*O'dA7dEP/#fl?u!o;Q%@r[;*BaZW"!X.H]]4(5kbZfW;MS4cMQ+/>sQV\$\hL
+%^*]"&6L6Ids8Tk%ni8'!s=.j4g;FT^)%FU_nIk8m!^h`P0(GD\SSV?!;h=4i/h%SndlWm.=_SDoJRd$
+Ld^6"=H$LbH<ien;:tL&5p:VHhXXf*g/02^9')4mFM,hP?pu:28[LG]=\q.bD[3BCJFoO3k`dHc*g'!.
+[[e(WXBM/lW(!)Tf)ral=a*p4Q.kn[_-sFr?5?a"d2p3);sfm]TsYZQT[993>;b:-ApE1WLoHq?gOKDB
+e1B1GSmNn.^*G\nFFis&O^tbYVp7pW!.;SS:T)DL"UKZC+`M[B(**.!7&"ZlPPQpLN5hW4aR"3P+HX?F
+O4bM=8LB\E-$"9IWa.0Bbbd0fK\C&tRa*:%WU/bs-BQTQF@n,'Nr+t>$L-h]2OR==e1,S:XZ0R#<l_7`
+b3aL:-*Z%'G"XEU`F$"(SF3kj+L[uC<N;B9XjZZZWhE@mlV/GN)R;e@QYXk_$<0/@?MM`[gE2Erj"^"=
+PM[gTJ3BQ$GU+$o#D>Dc0XtXJoacjH@SM%3ZiF0'7H6+Ye93hoNQ>U!jC8Yn-\t,uE0ra'"SRGk@$:>]
+ea#/a:(YP0A9pZeT21fTLBGt`o;#8u</6_sSOo_:)_QFG!j+\g<GMe<.f%n-YZP^B4!g3;@p6*@Q)eJ&
+gK6A.fMr8o_X-a(?>io'"m"<n?sE$]KVKH,2j_@RnD%9NnFr6knkYZc="Tc)5T_YG_s-ghK#-BkaBUJ;
+rJ/<5d3tM_.i+&_,1$&>E]F#H6f\jT%$F+-O\-n)R67KR/=4NA1?k%?B/Z4(-BkDSG'cEFcmUWgqiU"@
+/#T?<RRJ]q9W->(1npu6FW%72.lF8i6G$R-_e_4]*%o!5XkFtT<9lT9;Q*g&2[c1jl5_UZ+&BB-U4jPn
+==fdhXq(_94YC'NXBXEuNlU393@og?/!e4eTFZ8]%L2]\6"&',9BI)'A2o)CFS&$M&rK-;d?q"Q-uML.
+iK'@**X)k$]ql@.XKG\XQV6HRZmp3b(lh(_dq&m*W:QWDW"^-X`ed'W;<[AdPE']DVbQFjg40U;TVXVR
+Q($6@\QsC1lkThKNlbk=38C[16((YL[o;\e"(E^0n%2_nef30-_/j!hDCfs`NTl/79-lQaZdqtGJP*2Q
+r)QT-om1+Z:^='/#6]@dT^RZRh=CAh59]P&KD$YkMT)=[Ls0Tm)1T]%nd+j[q%Jo^jKaV)W_G%/b@P_Y
+N5B3\R`qYX8\F>04If3D&]tOi/Kpk'^]eiQ,*b`re#B_^AP/7-0e+SoMTf6O>cu\ZYo=.0a(2L/X>Tk9
+C+T+,5/RRN2*Rp8\_XEtMl#^)WEcoLEJc>_^Lb%6ml4dMl#?mHj0ACgN]%E4b2or)=9IC_\mr68"a'AX
+'*s:Z@?C7h7MK]/0]5fP]Ab[@N^mT_=TjHC,EbW/dW_4Y<@U>5=`ESh6=DQCX.!rE_npOXS\+(6q?7%9
+_/7EY<-aHMNCnjBOUL>X7\oCN<GJ\j`FcFDY#fDhqZ5(a_kl%#(2@<'fSX':C/1g``oV9@</kRVrM%[+
+G<=o)2jC0#,C/6%cV+6`jah\>E#@qB1BWKVAMB7eX9%hmI)-nDBB165$@bDdYioU@pCW2",-UdS@P\p]
+5@9MNoQEGCONAa\BcN^;.$_rOZC-*G@4mql-?Emci^FTQcR5slfNc:i!#<u48i7BF8u0ob'^@`eGi,,n
+-a9Va@^B6u_CN%ZrIVprZ.UZ#]02iMZ#!>&o\46"hf?23/YnT9g8dDr?D#cK*QIDd^m,F'LSc:0MT+U1
+03irn,Eg111:_5,joED?!".uS,T7$qKgK40LiaWjMd\cCO]SVj0c>n_,E^TJIR,*%8E>q:*/[FD:,:dI
+ph[BBS6!"fo3&E2EB0Rbh6Yf*d=Br<9B_Q(2%GZN!L?[n`fl,0;5m?kQ!)o(gK1GX(bN<fIZ%U0_i8>`
+o:jWHF5$"^b>#_.ARAQ@9if`2iH][\?5L)0NrJUb]OU^eh<+;d`&o(.lsmX%n&XS[R7ro&*rpPu*Y0)=
+)<C@5]ch;rCYBj*Lq_keaK,"erf"jlEQIKm1B3HWUiK$Wp%]Dg8`__L>e3ohQHWq3.BLs91Ru^f;i0<+
+HU+0!V31U+)NPpo+W(1\\pBiAVc5-g.]l1D:_&lC%<h?WOW'/1XEI5gN[neMg9#PAD7THU\D44\9<G^C
+E*1X@'l2Y%qgcCgYNb1j=k@,e@]6_>FqYsK]p0+$LdkT%R".;l:cK]F%0qPQ@8BF)2B<<a6t)-YU>_!f
+!#<u1R+uF:+-/s&Z8ggN(;br$APi^q&d8W/9O:L4Ut+E_S08P^W<AAQ4eAPdN>H^QN:!E=BiKk!2P!TH
+0H3strDn>JW`CB7UdFpK8Y]C(<+gWFc"F?0S;q5aTZjC:ghPFje;h&PF'`cd]B/_3J&#@XQUIR9RnT\V
+?+,Y#/_KH63q=.>N_^kaahSq"a'8r&"*Hog0"=;%"RL<M*U`ZD8_ifn]V@,^gYP!fO1uqq-g[!h-BlRo
+d]$KRs"9Y^-8R%8njt^-9rBe(gtmB=T2-j,.Ld#A7\S5n[#/-=Rn9O'AX+a9;QEitVj8ob!F7inY?,N5
+.h.ZXB!J7d"sl%PL>f1*/i%\edd)(ghCgW3h=CGl^Ygd^R/?1OI)9>;lW\M,)eI&mnbF_r;]p$LZ(MW[
+'D`"=K0eH-QrFD0rI.,n&HDi;4VN^l,12drDD*#g'b<rmP`A<]P=ajKR6/\s/XK,m',ctlLu41^UQ]uQ
+E7g(Vbb``ZCoU%rUJ]k^RT$qg9;^-6M7-COEE/L*eSPP.DRf&:=6o:d'ogaTZRhI1MP[IsD6$m<i%iH+
+R*orcY8<\YigG4=d]aQ-l-UQi[Ti8=Ho\/;]lN0(%SW0U.@"o7ndkn$+aO,=VkC8=1a3_CL8T\o<C:c=
+j`W^+DWo9Gf'87+U[eX`M9tL/3TRJk1niGGQ9$>?ksV[Y/W\"bnd/j\/F7Q+SeMF#$11-.;4hrcjXQTj
+VUFA0#PC]e;h*>tonq".qY[9nCR+2pK#_6(fW<Xs4fZtIZs0YUqea45Ek:%Dp)9dmpO'^4YA\X&loJWU
+6QnFJ4t7S2:D]*Ck'LCe;lF9.Pir5?"Ts?B@*j-d$24g^6Xao3KLR0]MF=2dGf2osq0Y\BdHKA2misJ.
+=.fW+H;Q/Vb2q()KX,/BRET9,H*j@Y>>Vo%Y@m5,K`7]CB[h>s-Ab'_6>$s8Kg&O:4K[HTHGsL(=ErG(
+<VlrS^Kl*:XO__eVTuYZ\#NAqNPO2)@+oF`HL&<<H`UQ0fDGg?rIDan&;dhi^>i$a.bX7&K<$;^aguNG
+G=2JZ!eJ.Q/(Up)Y+C<`iD@UC3[5)j`$1<lXAmc.?ot-gkBqkJn<(g<Z=tN9K\_SUjfrNIZ=,@BU">;R
+]]$mlS5*]ql0F@C]U7(m`Daq8`8l!TgskL=6-i;I3F%hA[8sJ1En'E^k<4F7;mBEj2(F6E^uht-+E"6-
+H0''m>oqU1`SpE7I:"Y2bPhP@K#-C&phW,='8j]B?]Wu[595j-jKc<9^/=t0I_R"%8/rBW#DGI;OI0i:
+*>+)qiUL$7=t(8I7,UqpoR9(LO\"N4-(AEF=&2G"EiET`>qqYhjqC=K<:mb"Xda5FS)O0/Thss;=tB$'
+8Yo<,<8)IYRe`p^lBPPBiiuXg<pQ$k]mde+Yr!BeM63@\2)ZZ29\,u0cK]YS="U*0NDF5W?LLe1MOgY6
+P"4E^>W*Z9+JVbO[[_L2<)bu^hAKS,?SMP*5bN'TN#E33Gs\29BN.#7&;[umO[qglK\ZVCe'Y,TDEAu%
+aJ70Sl*1r<JkDU)a_\B@0UU(]F%N.8DX<n<h5E0Z,"!Z=cmT3s;`W;tFAf)[[lldE:oLH3NER>0Y<f8?
+X&XZfAO+IR3+e?>/?0!;F1VS[F]E>:=L_EbAs>@H`H]&*Dg/Yoo)F6S)GnVhQ5W4_3NSWBp=kcPj`7me
+/lsiu/!kcHSBb4N&dJSl\Ql:.6llQnE]E%g3)iVk!e\AL&[ra''d%J-,YlH+\kMXY4XEm<A)^bjQp2on
+l(ll02k3WU;n:uFqYYfgkVNV](5YPTdV..174t-*W)G0FqOL*T=0#A:[CRpo]jJ!GCfWVDK[blfJ-tQ,
+<O14n\6JB%l_VVeF1-Z.C(gpdI\KuR>`OT0b705o@W>MZgZol@a1cRs4Jl13PF"NV&1ALVmfnE]+Y]j"
+)=7o[`"#?3+98R9MT+T&Ltl_r3&do_&h+fW/ur^,,;Q5lZ9'NM)AR1We*ZrhS'EA,g"c.F5+g.K1ah@m
+="^5i8r&\D_OF;ue1*<<NDcfXX1YJjWnh^->-$2R.qTH<O[lb*V+/C%!SqY&gb(MZD:7`n]=T^TX52mh
+I_WIu-m[7_c"WoL<@l`c1E2@p\[!hmSl7&?>tQ4CFRT>8"G+Bt&9q.k**lF6;N*K=rMlc!1e5RYHl>!O
+Ni.k-Q2@jY-$IDdd[=%J=Y5r/;/@*Ic94%=c)-\MdA7>cEDPd.$58/N6?#dA1hp"rdY;&QC(lCo+L[q.
+V:]VhRrQI.EB,#!3sBf>A$3>Cp3HOif55M*..irs!oDk.ddIlb".o;P^Ik)"(Tn5=Kmhq;\<ln@s,G'/
+neiF52\uCA^G.DIj7W9NJjA7uLcd-r%"uN,E9N6I-P)*QU<uNEC,6ig8"al/%#Od*P0'NjM+jo>qL+aX
+X8i9,4YiI"k-KoWl>8YRcY%=`nBfgj3[@hmKtD31hfh8`o`r`6Vc9\HWc*d>C:*`<f;nTQ%>qspZIthX
+MbU%bjE?+_C)RN_k+52F)D=1slLa__\m94SEHOclTAd#\<J'nY.`UMRq!:Gu,s3Xu<pp:r_?C$n5oq_)
+*$,gaGsc#ephS/$'8f4fE<sJ)(C5RD==q;h>s0?naJ=uE1o<nrOrG!,#B[r>1R^BPdoj'?FZ+BgB@H$D
+#(Je/d9TM964#KhPY3<%g1k%mb]D<>eTWTW[9K`C/'^3[Kj;3'e1(*;Ed<&OCUgLtq[4.)fs=jrW\ou4
+Ma!ZU-B>!.YjRW_?#\AR4kgQ^2'NjEk9Yl>iQ>_:)19@'_#f1V:s6'D>s/II6=FisCdK!PLW"^SPlY^t
+[n*IN9=?'N[+fOZjK`D;M8J88\>?>&'8BoRR()2H3P=3`heu:0Zg%@-K0l.gV621/+koV7;]aHOh*Lj7
+IaoOjBDl;G>-6C,[>4)=WF<#5XL:bbNmhUJ=tOp`D8OtH\(pC19>0'NFhQP0cg%A0"+[@Z0Xtp_,85cY
+^7T&6X!T9YLudQ@9YO[1ScBM`:e2QA&1oai:2(J!h2(!8]q4\KZsGI)MnS/5f^sVY+F?Z9Z<9#U;(7a)
+'MR^Q^'ufM6,<`4$]3$mGu!O`3V<:75rg1BP6mc%NCfNRcg/X55+tiQ<9f`P[6g-KX]Aik6d"6D@Bir$
+0,ld?cTJU1kOP&N^$0FE>\(;??/=UO>-M4rb!l<=">uoTm`[Jj&W+J9*E_*?3tmWrjRS^DZ_&rPF?lL4
+,g.#)=&2.+:mbKK)\@`OP7!%SOtPjT`S?J5l\[nLON<^1VOTgr-^;PS'$4t$?<ocIj\gnn/C&rU.b>,!
+CIu7YAiEWQQ>lKQYF8@`-cE&#\DD;<h2^"%XeACVethH(6M<1rNQ5:E.1:mV/W^lIlcRJ`D/cW45m=Xr
+R*;PAW\4%02=CE5<uo]t#!4E@hSeEY:#'N**o"cEEd:-o>:GP^2dC;\9GQFiHGX#c\)]FD%t?uSnMm=F
+/Jj@6i\0K\nfJp5a5g,9,_A`8PK@AK\Q$"90:#9Xdi"t,D).VRj)__h5(,YMctHB>,o2J/>;4hVj&35a
+=&2c[2%#ULWE6(MC=T?'DS9>W"q4+6l<TY)D7\Tt]4JG,DgP`,="$eom<?3LD\#M$^#8DjR+1g*jqQg8
+@D$S^]N`Q"O1maoN9;5q/RZH2!!RK9;7>h>_BCV3>Oi^CLVtAk(eb6!'oTlf&STC/2]aFiQObMbP">2.
+asAfeUp=1sQcpN".>6,V17QQ9o,4(4>:Op2BId*kE]$=HdGrVQ=s8:YVn-V#.\0#U<iS2qeYbd+]3D=;
+Cc3d_SH>0fdVUgs)IZCaEEjK-.t`\rG&Ub@2f%7>=LVsIWE-P#HOAZJiGgiRRdHl$a5HM*/=E%;]lgq0
+%_#rUf`QE0T`>/*H5-jB_dX2PPWC4-6n_g8R+%JGjDr:Nn^f"Ja!Hp?glZ177O]mT7-4!mK[+-dR);5/
+eIp8Scu%+m%B:(RLtJI[BbZl@/qhqt;r&0*6b2M_I+@,^Qh>4q?*@>r()n!K[f1`j.lN;KVV,ao>-8Xq
+NP=Ls\m=`JS$hPOHbWp,(X*WFbD!iBlSt@qo,3P.A+CK2hG5Scah8b"#JsJ=e/'$gTE;]N'+9L]+n4]S
+2CB&n7&$rB]LW60:`C!_-GsuWp6*OhZAD8T="/GgV=P"Pb$O\.c)1)4$H8t^Mbg%*(/oY?7&&(81l%>G
+?RZs6ee?brC4(4s1*9MRc"a^mY1K`I.K*!k<';i\Ep7/8=!j+omIq!J^%$3Uh6*(PCmJ3WV*('f-LHQn
+;`,a8Y)H#G(Q?AoZ2"f4RjX0:jg+;V"-s)l5c*+`!kN[i$A?:Td+F"+4I/o$S2#9+Ji+L-7iV!M!jQXi
+LW$!oG`-TB/!`esEqripkd$FEU,,rjhK9G;Q^!J!_hlo2FjXmI2S4uj2Ps&?BSH&TV!+g=lIABn=jH04
+<i]6@0rY_tV:fL)C2KQm9JrNqD4?6uYB+Ga>$$'ieZ!PJet)R0Xp+KNIUQU9GQ&s)MoK7Hf_ebjr;D(/
+Eg^aF!W)_C^n?cK/0YT3K0pe9fN^H^&;e<aYpctW0,fei,8"#TJc-dTaX"0*,RO8rQ-1JZfA+5Q0mubC
+ZY?2fmeBtiga8gi#TR,J!".uU/KTmBV:)?MRXHrb:8l\mFD;GJ/?*>HCUN?%K#;'%4RBLl4dG,D[Fq[J
+RpEkkn[X^@$Q?->nj>DgS_*%R!TAXG477#+?&$$rBjNO%CX!/VmW^m,o4Q?X!;V12i/h$i*YA^4!".uS
+A3(Y?M*tg8#dc^mH<e-nOkB;T5k^=2hXXadSdP[T5+clKFKSCoHq@Z8#FsUd_J[<OnQFrP.V_@)>kD)T
+*g'$hd9Q=$ALaA8En'B79!qsF=fifElq.ES_)t@>R8+,IT$_.gg?k3\Ej9N/YMA<ff%o/fg21-MGG`i%
+!IdhEff)P5f+3_AUt!W"V)?LkVDDCMr&.k3!&^KPm\hZT%-`G^SIikXSf\D!+r?mR\p>kCMaeq2W9e+\
+*0<[d1.`IS73=c@=:Jt[;I7e=ZmKi`SCt5.E6b.Q$1$;oqk1];DsAkPO%?(pWH?:",)ZAK^F44cPu=ed
+XOV*/MWJTb@'A4`ek6I<a(D^4/TuJXVO^M]>cr0P*SR=e]\]i9\deK/qS9gaGYB_/%eY03f5-3T*Bqb"
++'2l+qN=K"J,fr@kS+X7"b]2#:hXAd)[eJGfC&Bc`T7np4QB;KggWDgN'(WK3?,h0-^1^cXlsl8(Cj':
+g$\+#e_`<U8`L=Qj48V?FM%VX[1'Vg8#&@K$FZ_lSPQ1`C/m<k8s:p0;BTO<dcKq)HWY)b4!fcupO$.Z
+:TJ'7pMYLcDHAorb1gWX=mT)MXDMdjDUn&T3%:g<]lRXf\@cE4(Q!3CZ;+IJ="NCU5TF_j'G:Q/E5E`X
+,Q_8+!%Xt@nJHpO.hmo[e&bT?-,CX`a<St*)gY"$P;f<f`OeGg)4+#A%B5lFZSn;u-R0j6Wad]@:T-)U
+_$K&)E4DRd2^L5Jjeo96D2K&,X"H9((XB&:Ek>OtfISos7?Yf.6n`;@WZ>9rCUV5JAX*;0'"_kc)QbOE
+7f(BEZS4>hMdm,:FlFHeVnOn]Ndg%2fdHbt/!eB@+:n5]%LE;j5G-9Rj7X2rKu7@2plmfg&W4Ndd?qji
+0--$BUQP?dL.NMO8DgXc<#-&tQU<)2VrZ-;24D8B':759o0&^AkHBaX%Z*WL:>\e/)o5pqDkIb[Z;K:k
+""^AN"a'EL[p#q9ldd!ANko82<t)$=o>]I#[p'mi)jS_5Ed-@.(Rrmbpg6:i/@ZW^BH1;T\=ASKjt@Ts
+\NI/.9U"'WPr>Ah:]LN%4T^4#i38#".Lcf<N=Cd.bXs5sMT)=[LpSKJ$]W3#AOFo-m3Ik:V".U"WUVNu
+^?+qkjN;*lRa%]A3E+c"4J'3`lXgfR59-EF+Jtr$ouTmIe#AT;,F56,W7@m^lH>1+>ctSA%LVTT`o'*.
+fQ;B*WYh"!Z<R#\rQ;rqZ<_?,/'>,7d'V3&CfX2+[=lE*E;5Ae*?Ln`?a9=:n-lUq>-AiF8-=GI"+`F>
+b14[+!*;r_iNUCF7NiG#`D&mWl_66#N^mU,aOGr5+cEO5;-?#Y.4S*u9PS'p/UWj_18^#+Wg/c.A5<hq
+7QO75`h?6XBf-P=4K;ns)/U^s7AWppeQI$<<G&8UCKFn`f:@We@t%Qf[WhDAeGls]D:\T<`oV'F5@9_'
+^"W"']jG\:qrRtYJ\kgafITK.'8OP:EL?Z17icfaj_^<b_u]f<JNmPHBB16M$%9]5;!6%h,8#;l,-Q7(
+@P\p]4eo9<X@='(KXtHM<:\#48inVT"a'CJ@5""m-?EmcibLQDV%i:jI0,#iTt@81)Ee.[8u9ucY3'Lo
+_uhQh-WOln`8HYa4"IJfrH6dcThsTHB;M<fC6#upCr[i.GB14=QOHq(9(RABh_2H2`WG<V.NXp7bW[40
++,XBuc`%U/,Edf!iUI/k?3'\F^n-TgX3'MqGXBu?(>&ViSqoe/0fZO@0bfU8bp[_pMErD+8DJ5g*1g"R
+EQDZGW=+Gh0Q9_@%N2(u^jf!2ipjP&p3N$'18Zi&K8O(iQ;ZcNe]UR95H.GBbVhgg[omQKgGR^XI_+!C
+28c:;/Ol^Q[8bEWV<r-->&H8<D;1h3m<ENJ((Ar'VPb(b+r@Cu2BC,#F(0-VbZg\]O28#<q-'1;kl=jD
+gC;a;)@m'k_OIdLj>j[\Cpog-QHN_efP@nKbuj:051,Iu,]&;f)G\G>[,l7N<4V0GI*A4H8+bL731S9l
+F33eFIlVtm+1*LD%Z<lQd\t[<9fA>5W73;=qQ3Al<3+TN29Nma[nN8nXE47ZRa5H;:o9Q%CshurR9Zn5
+MlY_'GeDkhf?<RSl[Z`W0,I^-lORr_gRjDT>Eke*>Q>,qm%.9-Q@JrBl0&fo#6fcHiD=(S9YR<@\=G89
+UfK&`MS!@q\E%ec+-7M+/3$<Y9.,:p=Y861[Tt#74=3iaUXj9@HVRo=Z,++^.$I!]&lT,HI/9X:BiMZT
+2P!F5d&L%^@8QU,SCVIU\$YS9pO$(M2EN32q.I'<D""jflIeb74tLW/gY-K9]M0`6)3e-7^hm%cQmaD[
+%(gLgEDAW+P9#_(3:V7;<`]pmbWm-Z-l`j-"$`Va5Q\NC(Cc*dU+lqD4Zo*21E=f?4E<M)O2rQH"liW0
+'pD66N)ik[]%h0]jt3R&dBb`I:+%GH]*;1]MGL0)_!-\Jb\+=qc'bZhZIl#%gJ*p,OcMi$eg/8"3q:0q
+YINpO9-'#3j`7mV:0?&Ob\BO!CA01\0i55j6(@9(o60i`^W]o'3d)-S3Lhts/PKA=)U6=.E\'nR)_0.V
+i*[%N'?UUVK0LLikYqHu%>R=1&K$a-)[_'Z?]WjXC,6fi7q<4R'RiOqP"F`_R4PL</<rk?')@d'Beb`=
+V\>KJmWgjH:ZrJdh$s$GK2LMZMH)7s9rC.S%pG5nWE#uu*n9It*fBfffAC8<$U=\n:K_N-CIPDVD7&'b
+QLmdtPjQ(gh3XV]l.:?shJ]nD'<;DoD`L-qjX%qbDR:#dM^M7q$'fX@DX[mQ$/l#4_4Ile9A10UL838#
+!!-@g&rK*:Z&$&-/KBXub:3_VJ_p9eae\Ka9WCqcQH!F>\U;OX<';jBF,A-*m1#Z#h\6=?$AU3]5:H/\
+CZ\7cVGa?l#K6<%oQiXbY=FeuipX%cS^,CcaaVm1bUiI$WML*;ESIVhpEduFF18Z^pP[;P_gK2U>SmkA
+q7qMR0^UY99Q;niB@q4lb58XqPfi(X()R+tJCso;e'M2Z)A*@26X_G+6SYn)MDo"lG3!5B)f3Q)bf4^#
+**lE/+nB>83`;PC.G4$EKZ7KQRS91[H+R3#TjgXWd\q/Z$G(0'@[)1-*Q(Ni31MhW'9]/+6n`3DH3Ib!
+X^!\eebI%![b@uh>7oUPHIZ\t2;5M4Q,T;8AR/EiFtMgBHa_FoNr0">"T6,$E6nGO-P_QZ@r^0!A+fYP
+alKaqI'`qNr-lGSO>nd8%gmqV+Y_PR3[52m_r@pLZr/OqN5m.TkOa?n,*BtmZ=s^["T4P.-*PA=_=KFM
+^*^1!]]&6=HI!tFf;/N26D;dT;sHL0m5CB]-:n@s6i^:a<2u3EX^\J;X&gf#iYfjKm'4.g[VI\!dqZ;E
+>rM"K]&MsE.%,5D]l(KJ;mRJ<l]o35@s0r<Y7*Q(NqK3n*puN[^^s^HhCH(*^01N.5UP0&a>=qM$&(_)
+J-*<.*>""E@Z`XW8hgo-*g\NnoR9(LHcY9/M)49jqNX8+O2p%To_FbGVDC4ghJW"4]dJk$o?$(`GWXa2
+=*(e%lufmRM\YP].iF8pC6<R0*I-Xb\=AR_omXR7Yup@Y-QSf*ijDs[2S37leQQtFcma]$<i()?VcCu%
+o?MW4H=-0*q?+VIM-@,fQ]-&^*m/-)/Ii2qHSGM<^mf:4bSguDKUbnTYQ8#m%Z!L30h@g<,oDH'%gt;.
+H9WKe8>FFD%#R[/5,?g#=Nk)U0Sc).X/=t3DZjoBS#tr@IX^4Jd$up[8f`13QVse;'k6!jghtBkPF*S4
+%bHBSg9nqkH)4oQZg;M_.k],h['HfW<c"@`iHF"Jf14rUqfmTsTD-OrqYu)]i37F'oC_p(`*r0qb[*@G
+ON-@$q(/[I09^oN+0X<2&dJSn6/bXRA0r6'LI>S`3.+aQ(5bALdCA7\4WfbV@urYpnkCKr59FpTbdLdO
+QqUiX2mh-$2k3"n;n:uRjZe":BCn-ImHI-29kdS;_.`bY!#<u5)P'L"=0#A:[CX5#^>X,oCfWJ`QH\O!
+=fh=TA[0><Es`>uRdJ\6>uWBo:2At"d-AD.0M^sZ_[S\t;J*6tA)'C^\m=l,baii0@T,N5cZdk/$O27#
++Y]i[!3VoJ_r8uKS4Y:DMo5sXV9@RS*fnA`ngPO>nFq<%T/'PJiUltobGGpJN1o\\HHmRqVjkfhnT[jc
+cKAuJf'9$ASM[6-0jqY/`?Pt0ND_<B6n_fj="S..>ckQ<2Cergb@Rg-/C&!AZ-dHc3b\jVdithj]@9df
+(:9,!IZQ^j%p@B/kD!3FgXg7I:)qMm2slW!RtE3JbI:jgf'@%Z"bO0k$q<TX#$Fb&$L-c-8g>"-7:Qot
+n0#04>d,+5G-b@@,\tM4Eg]n*qNG:*j&68KAgV1XY$4hl6m8edS^(W)B&dmE7;pSu-tV2Z@l1)^;p)M[
+5).jc2Cf5?dn7-pAht<*(.F4HA[=/Z%,4]Efj&5JmM1Jq'ti\@4)YX6e*d#0^H\q5r"]eLKu7?h(n;WF
+qY\*<Z+0^t7k'PCAFf3plgaiRJjA7uLcd-r%"uN,E9N6I-P)*QU<uNEC,6iY^SC?+%#RP#P/nc/L_K>\
+/=!s2n#;6-B/G!1T(@`=l?;fk]]\nlN=(F0U=#q3MB)bb9V=$Uc0ta>4]8:ZlEuM_C9:aBVjFJsgRcGr
+ZIms`M`%K[BQGS%m/$Ct[rY=Wc>+3%@D?Zf\hEKa$b$?/_S!,E\_GjT3.%Zl9tRQ#l'/@#e&rR1@Jp:[
+6"&&0lm<GTKYJ\G!kN\$&r=Kcd9+=b2%qG\QS3UeL$\JY4lgNa,MGX1HTiM^GLPgJ0q$7_O13oaAM09?
+,`amRb(T>1d9Y&O6a>69FZJ7FC3;tjY?`uZn[QhM[2ChG(TrYuVT!&N=_uYZ;lS5[[Q?(dl\3=8F/$<\
+BN4:M[og@Ee12laic@/L5&f.gFM:$h`][B3<sA%==bs@$mHXlUd,onhi3!>IIM1CQ2]H_ubX&JcCRJ"7
+J,rq=(l_!pETlb@31`8Y=3ZKD:/`QV2<Cr`['?^_C:,C*8V:-pKj;[Z;q_)'2J5@Z-8P:r\g9t4`$GkI
+m6S9Z1a,q"$2"M/=ALDIXP&e;UsWk]m&XDQ%ar5%g/r0<HT'm3\]^\+a?+spH?7sa=6F`-kCS'>+*_Gd
++oR:Jj"\(1IR>?Cal@@ofB+7Wr-lCg:e2QA&I4"UTobXX/fbO[7,dZ<PZfLPNCIE?M"GR=rfKb4P$'W5
+;'pk:i/c!%^0LN&9]%X/ZefZpSNUVH8bDuC6$Q5iNqtURh+=G?l',p/5)2\)K8Z``!F7iiXO\n%g?!dm
+@BD'sNE8!.bA"<:gt%fBP2UDk>T@rcC"6d$YuiY\g;%+5V)P.#aHZ9:0W8S1Pt^8mXe;1b[$.NPRX&0=
+C+%RA<"a&6=?`n'"a'Al*=[eBU+o2l=sk,@OUd:NoQi_EON67a8*$+7-[j.4'$./_17fs:QS2F@dHpRQ
+^#'?Gle1ejI(iquVpjdcq3=.C</9N%OSGNpkHA%,enju)4DSjBlajgtYe)H(Rk:&SBNQo+ZMSILhOZVL
+Qk&EkId_NohOVshm<.AlGeENj9"l3Z4e9q2l/lio@4tJ/gG50t>)Pk#5%%27`"hYEHGW_l<r`6'Sqf]W
+nJJ&s/J:i2(_*B:Fj2"J86do.r0=f?Cs$<eV5j3\'oYg5;"87n;U]?fgF\93Y#<ng8uIm+h#X\0C73GL
+M4DR=9o,4!CNbs$W75P0)RKh[V7.hU[i<TSl[m>p6a%sRqdhfBUfT:=2`;,qHZre&=80=r-)H*T[iBWP
+l_WEmH"(*I\4bB_p4C"#GrOkcqj2dt+4'-J&dnnr_BCV3>Ts=MI_Qu0#a@e+(5g*UOf5p11E;IrUbUOB
+Jk7/Las?PW1pU%3O$o\j.@eh%2O[%30aHe1HTZ`'+&jW4&rQFY]r<Yg>qtS=GuPh".\"/Pm]4nh26,JL
+gKo&*#3P#d!3Vp!g$I:J?)lXn\(VS_[\K/RjLa7gGH9JUqgQ<;="G]+ZJf]<i\://2DZ#+`T+6a$sOaF
+l'ot+&',Foo`]_/hXHl=/-&aI6XfKJKMEg.LrJ?W6dk*4oo?a-mq9jr$Mf7phf$!inl5d?^8::dPN#(<
+HbF&&8^kt0np&L;'H.@ig?kV3?&ls2/sP[-Yo@[R`*0!;M]37E(R4d*?$T3s%lr+eEFlIChU%V%*n`B<
+6#IJXJfR&#X&SO&-$&OfE0T8L(C?>W5maj"(p47\/u]=_YF=lqPE.-Nb;]#(#4)Z*"DpGo0SiCJY'O9%
+$L-c%7NiD%_uaN3)SpC;KJjs9#2C*(+Hab"/Z;(7&m@H#U<tu[_IjR=):4:b`9FN4DDrMOq?qkihf6/r
+<+cSua\8QM;!Z6!b%jqU`06'ilL)*hY1D3@>74'D6#X>NmgDe>f(lbgmI/5Vp?-P/5Haa=_uBCV^#-$g
+$k<XMKYZFdYKNLb&W4Tg1&/DA4!g!1jg)FQ"7c6dJO(Dt=@=2F#)5HQYdedE+VTXM@Spg7?6'-.7q9re
+oS,dZP"B1]pZ/2O.XfKOc^BI*nM>O:?F+ppdWG&O4=AVPFU!NdU/>3\H:+j#8Yo?k<;0*TH>cl8$L-i`
+@]rq;<pS;:"_D;ZC,i<GG7CG!i3lhVQMYre"M1bgC\M&PhXu'+?>m<bp'1VF1a6%B=_+sN21*UiGkq6O
+-%`nnCF)?t!HRm\4^`2@bN86jID2CofOOIHqhW1aE9Oqho_O6T*qAF#IKoIk4W\W81mR4pGs%ZO$"Lta
+n<pp0o/?2kdJteqVfUPPqL_&,cfh^qC,(JbHbl\"ML@YV#^f+60rTJ'-P<H3.e&8TG!(OU1MBa&-(<'$
+Bt<R&qRq42@&:PSX+i-VdqHGJe&q@<;9+9,\/YtU4*)%h`O;6fQGu!2P/f5CD'9LW!2ff3e%ju.LmiEg
+*7:h:ZC-`nA[NIS<nq"3)/VgsD92?u5p;;RNlsC#H;>uA8u302FL=5E6EZgl<ssl%j.&*lN[a"OFQ/ui
+S8K6%a`T/29BgL(3`SAN>1D03<aB#ekH-j^O*^Ec_#:N&XHm'@rm>Gf>4%X1FhZgS[Qe,b/$77eH+[JO
+pY46pq1$4gE0q%l%hFB4@e!RU:-TVXa&oX8>dduk!.R8,E(DMtqZqkZfrfCR4c9eZX4N?oe62A[Hq'^t
+a0^-X+F6SM;FcD/:@=@YATGgj\mI+4bbf97XP(oZE&_*QK%b_T=&2X@<#QbqMb'R?W,5#1FhpnQe6DT<
+SPlXmA@#J?1<f`]8#=ihFt5-S\tB]SPr>[SXA!8,#0]\d%GJpJZX,(=LF]4bqnU2n1$>p#kjcU6?-^Z1
+hJmh^hW[Hrdc*IcJ3I<NVpjc$qgCch0Se]YpC2Pc@F44c+r(oH`aFq<e)ELaO@W^+)&(RpoTQspcWLA&
+HuW8=$L-f>dUtG-:$5GhiFr5'NC+nOkTf4/&:IF?;$^,64SX8&AC">J<TR;,<_Xurr8r92YY;q=,rC@J
+q6X=B<k<[5VRU*F/2d7ZbuhGg2fDF6j))0V^c!kUQG+.=K#-Gd/S;V'K#VN_gK?WXD_7/i5T=Yhj:VUM
+JjLE9fN^/E%Ycq%0]qmFk-4n$e'X!$AiCcka<Qim8f`0:E]DiPWEYBdi0VY7&NF3m$G);>V\?$<i@LX*
+Y\5U,*5UH#HI<mWVsQ5=:8cSk2(G.pX&c:P.M(h#D>O1-=6nEF*K&$KZe6oGCJD+dDRE_$[i9b<lZBbo
+ml,%4iVQlW?n9RI*YSp9_r1#DXBLm*gB!U>'=@9Tm'^4U?k,->%IXIQ4^ejl;p#sILHFK*k``G'l\dg!
+%[ba_d2d;Kj:5l;Q:Qj.0u*s7oVP\>Q:p>g)/RT#9ffAG':IA7^HJ2JW"%Gq%Yf4!0;]CSPpVnS";]Jj
+UY=B6S7*rb%+]2WY<%e+UCO5T^#rs[4^O1NZT5,O:op,j'I*GZ=\r%2=.@1f'VT2+i=P128_mg:aIG5X
+eaAc`]h4.EFg[Lqp3Sr0&-p,/o(dYshf#GTl1kaB^Rq^^HpT1XID;NFfW8ZY'njFI:T)\('dSH'?SZmh
+Q1U/:["&=%oYP/oRE_V8M59>H>>VibmhkDW%h+I_,Vgbmig0>9]kQprMo"ECGL`87LKgb+kcV@`N\HlH
+8N32CD"A>"<KQp_dpD[U`"M5:\C2n8gWS8h`Gf!3e!p31C<^QQE:&Co)7%o7i`b!3^,$dm`8_d'Vupb@
+fn)LtXggb*[0UWY+jJYm7O$]H7%t8a_g0!9N^j5lAO$6uSrlSiE`kf%<@4"M;!Z.1`PF@!9d29g`"B79
+CX5]<<Q(b;6D@*98``SCWCq50?.AV^7JTl3<F>EF`FcM^Y#fDhqZV_`<I[5?O4uOdcY9gkmFJ=l[c;;:
+?#H!US`]<c]O('Yg]d9QJ&1&[2G?Red:TB<ES12D7])JO2(5gm1]X\M/0@r/VE9M#$@9T2OQVioi=^?'
+*O06^@FZ9<`uPcT4Fta$Elf;aB,mUM\nQeTW\=P_@%Nc\-8TA+hJ/WZX4bc)r;jZ"Tspu&g-$Ui8o$<=
+5r/)HF&JN.-UE@dOV43nZPh"W]n*:pCfq]XC+FU,j,Z5FNoutLm;dU1+*VAZiVe(>3$'Aeipq5DWSm'G
++R+k\ms$s#puc6U5j+:j>WHO>+opAK!".uS,T7$qKgK40LiaU@=\pg*D<I,)iqA?q*tNVViU\4@8De?p
+e<T\(IQljka]u8I0pt^HZO&IK:FMAtV,,.ug"u:I#`Qp)>Ws)sV*RerL(&e-++)N&O'8m7k80&h*\Rb>
+^"i"[3p_lb1Rc\N[5_D#qf@/7L0`6l(K`Xj^8,a/?.#_Eg-:/)<2t0-Zdj$6E*Y2_Qn"qIb\X^+m>SAa
+-NIsJRkQ6A$*Ms7_HRSM;edBcD8`/caK/8hh2K@CdE([#38fn>S+9,aL/''O.KBWooWhaSQcu<_8VGaE
+LL*O4O]LNlY<Zi!RT)b9)4sGTTU)oE[5OX7VPM^8=!_#,=F8VkQ,iQCs'W(`XEI5gRa5ZSg8pS&oC_nW
+\(kj;/$77gF1g>4=,Yo2qgcCgYP:3i'+]i9iGj+$Ah*OlaOdUs)kD%'R".CD:cK^4/?3Fb$L-bR1)CCU
+6fLr+T]"\28ZCDr#90r0+*^=^dPl!-f-b[_>k5F8RU"p@32TD>ZZQ&-@0"J##`MZ.5Dd]Z8&`)pN8UL0
+>P,L:HCWfi<*PVE@X3eqT29;piplh^b\+=f2E&76X(Q0N>'@M.?+4aJb9UugS^m+OI9p<ba7]0(qL-*e
+BN>:H%9on_QAnC82H__S;JJ,`h2S_mZ+p>CFS#nH"+nB4n>J0!&tT=E<+tA,/\9h]4J#=bUXA5tHTb^H
+LV/K3q3/Oh13^s>>5EZ]jms@Cb$-EF:$2$2gt#[dROjg8piR2c7>AV'W<OT\i:2$@*R<hb;;1;X]%o6A
+4`SYOEEF1r-LHr%Ao1\>c$$qJ)SMp$.*sh$fs)X2hB)Ej'TVj8^YZ-^>T2RYi4.2i0N@nNO_/E5g@f?3
+9-Dm024tDG'4M7$J\[aOQJ=(&%>R:)D:k(I]bPJ)iiVFWDE-R88)t9F%#b0f:J#*fBgf+(/X4H?#*^n2
+2\:R!)H2rLm?]tHce-__4UfD_=j&-)l:!=1%PF^/Wofeeiq.\"hpn1Erjc=<=6p\A'opCIZWJ<Qa6fbU
+C:7@6f,JSPiH2V9D\mcNgA-$.hXB):"qLZe_-sR7lUAP9r-d,QGo,%(YEd.=T25dB$3p>-Q;dhc\p>"t
+KgR$Qk_qDI&;cUrlXV2VPcS.Jg'pOcW^c07adS3$qWW[b8>t321_T!`>D,D=Z\c?[-8RM/g!(;eJqlag
+2sBmgm4+GqDH!I5\]drq$ot(aXbt;6[p3_#R^NEkM5=af2!Z`N>F*k,[_/a2CQ%WCr49X\n*A6_s*T2X
+?\<u_`he?g7#AraURN%Y`j`5Fk2U5)>cq6a[5\54!*=_;+E1FN*Yem2#Y^,,0ptod1TI13BWPMt'bd"c
+ES1285pMF"%>s01!IBu01u0e)S)s59R6DtDH+_FApmo`..J@j9'+CS^BLIKIaaV6G\`qC3K8-2ZW])EP
+Wl&;Qf<.!3e],2NGg7_.<`CS<'%3@9-5eI@KA,D\\m94*Hc=Rsp:*7e$s*V9"_rW7e8/mUC:;]0j'),Q
+b@.T6Cc6&Gf$"0(!c:4G:hJI*'+/VE+],'.6,+%g2k1In]NrDnECV6K)!$7d!%XtCE`jZV;^dpQjg&A_
+'m0Xr2.irs]..j?SZlb5jqRr@`A4)eP,WQ/O%Q4k!QES3pu8S/SsNGL[8sJ7XOes;lJ6p#AOA/>9fH#M
+dqZ;F/[jtlqVqI&5Ak[LV:tNc^"r.dX7c&`K#$>!(i168$])d]Z+-<Q1Ehds>O?Y?j733II6c\/-en2(
+#_KqO:c%BFQ2iG5U/=IO<\YDM7AH!4lu"s0O@\F&=VR;q2`@^>/Cq.R@540Dk)J'#Ec@dT`+5$UnSnE8
+Cs_C*MDZH8e>5"$N>cq&Vbs0J.ZTCm_Q`a96K'TOoD6:3J(X+Gp04,:4gdj_CcQm[E85;8kd649VGVWO
+?L;s[e8.Na<&9u'=-aleM6&epmgN^>h!T?t*P#F=Yl=\s0n9FLoF_T:K>O<9a@&')Sgb\GB[m2"DSKhk
+g20<S<N@-T1YM.1Wp,n/:9]U'<KogW%@BMDabE16D`E*hVfTuHqL&"0c5-mj"Nlc[Ju$n4<l8O>fr2>/
+FW,U5X&GrT>BRs9H+@=efW5P:.sfNTDq_=2$Z3GlE4F\.=%fTWmc1se>)hf85*LJO)A&sH[MbKh@PJ^8
+ghQ-r]?%3sClGHTSnEQs<r`<5H3je-_;S4XA0N$%LVmR530[Gg(Q'Sk`RQ2M_X`2tA5YE5Q;&NP8medB
+m&jPDQV;!)3IKCh2O[A';jl_+I64(IBG<KB(5#,O;CL%_4Z36gW'@,^fA0K-qL2I\:TEI;]WPR"8LJ)N
+B$D*t`[qt<<OU?]1SIlE(6`%3GJ#jf9tTNPrI;UA)n7Ysj_8Xk"q1i.@m-jFa>PeV#0ofEf??JucmFth
+UBYBu+O(\'0t@d7`#[5QXAS^-IRYEaVt>!/*fnA%O5d/'F9!hhV"0pAW`q$@b2tIS@O6:0DDnCERG2%p
+!c(SF/U;H\@76m<WAIda,+2'#e0P9Nio/2GF&f7NC=Qdq?ED'r/l]]]QjtaIl87g4W$YhJgT<=0S[)[:
+;5_t38>YkAp:n<13%Q*`s+Yl/*r'O1iJQR$A0hO>)\o[2bN5B+L<L+3"bJX:%Aqls[1.mM+qV3;Ft"/`
+\"aE-e8<#BE6%"A#lK\!j-*'qmR^B[b:R;4)k[8DH=\q$c"@]8eCo1*1E`"-.MCToYbNc6$d)BhR+%s&
+)pW2\XV/C=cY%BHeRl?oY?'u^gBE-*R:\\N(7S=,fkc.Bhlk)f`ohBR?1-=6XmY_,]jG^pr"])8J\p@7
+fUPDa%unP<Z'bEb[jdTLgY^?_lj<t"IR0XrGMFX)c#XcM$m6F!5QE=4U9SsM@Q,3c`aeP\"F<E\OiaCs
+Ja'^KW*-GG;[J@oB/H(%VXk[_fmM/0asY8pisK]]CXJUcMG%-=e>BUPm0\hFT$j&eC@8[VcF3MN_;EfO
+$i\1WYh3#NG80o*-]iofC'J02X%B'lRe45:kY,Pe>:9."%Kcrc_Vh0kH!?=Fil:"nolgU5-Ji\&ZH_#(
+Fh6@[0UV5oU#fqf/#T)&k\NF/&W/t#d5\d>0cQ*B@k$Ebq0(A-3hEX&6eYN6Q:kf;a]-8k071D[db-tG
+MVsLbkHOTINJuP,[Mo[!]b6SuUUI/H\qNVM:kD\ONU"Jo^K[jB*#82WL;`)W=^6,o/Z.'5F'EM)p+pH5
+*kB7K#IRa8oW>hZn'#SM<s<&UiEfW3M7FJ@]&R[qq=[/rOidk:8nZ'Co)+!R+L#NA+oMas^E9]$F>b3R
+LrCPMBUiBZ(lcP1Z'bH05ou-0,][T5U.Zr!b+fN)I)9A"KhW`;a5l6$3.4RB:1oGA7aMqiQ(S2iHB1Xn
+;Q7%GI4h9iWDk?iC9:o,;`h(EWg5GM_V)3&XL;m`B#AAkg+@L6;5FW2X48hs,:]7]e8*bk\)tC,"+b5r
+)H^U3+eae31g7EOmQo0^G@_iKBAR(trII2+OB==P"T<d9aX:Z(!3VoL7%uCqZrSmqNC;-mQ4m^mer_iN
+Osr5Y!g[34j)LJt^0NIZbiTR1Ph'T9;mG)@g%0'hg7^Eo1g2_eYp=,,RZ0e+<guftVUXruiO)fJS(?`P
+g=4?FH<`%(:"QM=d:dl1hY,]H]%:r4>OAVP[GCG"[osRV7f@f;&P4C<XbP+>NJF6*Bf'Q,DLXpD:Rg$B
+Z[X\0E'U(6(b?:,j+P:CE0hh1b7KK?ic.DEorJ-DVkYuVe8dbpON1mO_YNFq\!4/ZD/!fHaR5G/AoFZL
+no"DrU(e%C"Hl2;T[5*.qCN&67&/2*8u:!^s%oZDWc]-N=o/&denZ##m;fsGYh,sW$QY\ZBX1gCp:F&)
+heosYDKcJbb3NuG?E\Rrj]_\7SD^F]GMX8LLL[[H#ILfc:hWkWko!0c*!TPr-jbYdM@D2S@'Q/;BOap[
+eVHR2c'Y;-/Ji4m@^2<\@BUc5$V^ti!F7i7PKBX6J/Mo`<]mK#X<rm4/KL?Og@<;76)rD,1oOA7"&:?(
+UcPJN.V%>*qku_o:[4cWV#>aC?WFQ[S`"BSYee</*3N:SPhKs)PS.8Q&tMFn=#c?t4Mi-Y<OTO$UAJ]?
+?uQrErYEm5:_\rU77u*tg249nETkSP(tECe)XV^T&dJPT2.7&`<"Z/@JOCFA`N(iBKj97gWZV=J4WKMQ
+A+D&WP!LFWalK_r_21j*7kiSSk8Vuf2Ohrte#D-nHMF,GkVMtNk)2^(dO6bmV(nk"F%0,LMO^\=VcbdE
+%@YaT]%Lo.X=_%)Ks]XAg+<cg>C,#\\(hr>/"P,LiOcV'2`k5e]7+QugNRiLQO;ro]!3gKPCOud;H5#'
+.6o#_TM-cl$jP2jcNSPZhXHlm/f=SC6f7DMS(7.Q8MU?YocO7;SrQ=9Z2#)g8Ka3fjRQGAY#R'<bN4TB
+!mS+bRn`&Vpj;]/rLQf_ZhbC@M*Rh4kk&%I/sT/,e*3,)F[i?/X&Q,7>0UB]>+F42()mrW+(_cG/JagT
+0rj#PV3ObB1)YU%2_4#LR4'2dTGsA#V=XiF!1%#l($qfE6)rPW2DP`3Q9hb*b;D'e#,DR+"DgAn0SiCP
+(C#W&+Y@qs9rQTM0cDS9)aZ>"NCOlr(8G&',`&khZ=us<*<qd$A<8.5:1lDH2WjEfbHc<_T"ZT@\dS(a
+7&!LbDgG(-QL^obWU2%=M3u\/10L`V6SYmcAMoikL8tK:dpTFa9X\_3>pP#+R^,S&''.STZ^P[\$Tdk(
+?*Dq>V=Q9Z]k(Ui2s+Xk`m_%J=`"r?4f7/9\D"'`"/2mPFLBk`W&,\.eSR>cNL)_$Y2s?)>\s\?M4E"5
+1KmNH@n"&eDn)=CG9j$(.r\-co%*tm7l##->Ktacg.*EWcY'Qk"LZ-7U,Q<%'k6-tIS-ieVkpn>`2<SM
+e(%X8>-V;6=&ZtG3iK]B?D:Bbeb^Z0np.ni[ekcpm;ojEDU3[Iiq7YGhf%-0ecuA1^"j`sGD7EuMf#q.
+Or!X8Rb;4-)_>#h!Na.J1tX?kPSp:;AMfkfk0%>@&SsA"%Aqoe0bA00j/pu2H:$MOaBR(Nqgq`rE6BQ5
+f+c)$g6o>1XU2U;F!#;1kH:f]Y(K&a;&g&n4"[,]K/D-E2=c#\X@f?hF[[3g5cRd6(@,P\)4]&h\h($(
+45SE`[D-R^l[/WkDgu#0[qiVSd-Q+gglFParr%A`i39^24qeN_`8`RslrHIRlZYM\)/GMO!<%@2?r0B6
+((ge*6(sC-Cb?_?Ld^4l=Hlu<(QCmoObiXI595hVi,@j9r_Y,09')5hFM:m)ImG2QagBoE#F\@oO/_a)
+JFfHkg?qta$*pa?[2#a.P-&WJ@BpfQ`d:jt=_u[TNJdCWY@4Y;X4A'"IB@3ug=hkI>?9!gZ<,cqbI)6P
+H*Q.A2qGCNqes;T/_7Q-*rBQbi:3)PmQJ[SG%BH4=p*K,!.@&hDl>2K%eYLfiGRjpXrcb^\KYnsX*QDQ
+N4*55M!JA2er[tK9j'$-6R?Kh,r00r;I7h>baMI"K\;tWBXCqV7Z;bugn;/jE>L`#f'oKP?E\Zjih$IS
+e>]Wq[9AniKtQ8Ba,PD.n:nQG[S&3@aR$:FX_sVFXjq9ugobOaI3-i'UYY;q.hfYrk&`[gNMf,%MVh[D
+S-tiS"dn:d\)#@8Mpe'fJ3DgdQc'XK#CJe1:q/nNnG.l(U/<l)<\40-7,i1kbM#)NO?=d`aWmNRk*.i1
+:+#jh^tkA9Rn]<HdBM5kc=XD+`6r2LRC6=A2WJed0Q+A!<4Z>GSD\A9C/VX<M8r]!<1EQl7;]eAF4aa+
+3gCn(f!I689H.HlgoS"8mRnLnp?]u82=FN-:%dCnH/N#=3)iX-LOMIm=L\8g*KS9PE`kN%="Tc_5TfJD
+*"iV`K"n!4fAlQ@%>I6E0aO:5.h[b/,4VVUE\SVpa5aH3*/[B4PK>*`BhYfo$%G8'1F\jB#;;Rl+g\0'
+iV`VG^?@4r)pX?/UUk.l>$HTIhl!qu/\7E`X&c8Z.lF3;Ek>PY<ibV2[?7M%C0E0SVR:TZ=1?s;2_,W#
+eRlGM0(t4Zo((>EhQMo3]kP07ET/!@Vg^AdNhO/Cfdq3qMXu()+:cI+U'Tk53+39k;fW`0LGiTNGa(q)
+'oOqZ&U;N#0cb"!@o:gY=fE]]8_S3Q4%Z2!QV->@8=V]L$?*I&&4]+!Gk.IiBFfD&ie[H+53WcJjXu`g
+UHY;-)O1p(p8_3W'q3Us\QuC?-e94ONTFNR4PlBn<N<B,TfqV+#Ku,iE4=Z[odUX/N;9@.l1c5555tGU
+iUIbOjX-lnXOq0Gk?^m/Q(0iX&-iSg^>EfoRo"o6A[)Y[_kD&5Cbd?iCVnfp`k-6!g2=s(OpE:X]\nB$
+,jlODW`8#E\L$ZHN65\oRa%_Xf,J%>aI]QtlY6k8Da[l.Qdga9.@3_B;kYsj"O_&KWk)s<LK/)tm&mtd
+mn4&F`r!'V/FVn!Wmq'WgTC2XNQUF+]%sO`Mp86tr-mNVfA$94",+HuY]tOJ,8Z6Wic4b;L-$WEalTg2
+L]d>FrII6WE*,LL'aBCZ@Bd7`7NiFo^S9'L`+CkGN^mU,q#";a,EbW*cq!Ei<;2\A--l==Wat4[32Xsr
+_fg.VSi161q>4WT6_I5RPZgKbY=iWZ>1ED&/[&!GdMjd<`EI[lD-![d3`Rf+:o;o^elJWEeS8gQD0DA4
+rc$b`3F-iSK>$;lH!akopN?_hK6-!VG]s?=k<*V5//0TT50h]a=n9*sPQ@f7CI&l#BKQV7eS2oEY]t7.
+*<L#q)_ksc@DNk&7ia>IFFiBpHH@6!B@NXL.Xk#:ZKZbR<AKue+**4Ml16s,^*g8Or;qU<U!KWWM<!^f
+-BgTlZ:C\;k43iJBs26_mU9;$f.1nkh(D7kGhF>Pk?Xe/C3*T!<p8"`]lK&j)cpg^>4U?_7@OaelrsF7
+Cc,VF(7#u8d"4,ZGinmO]l:G?S8LHd;?5Zq^tb#Q1R6,FF1Iu@[l^/.%s14uNb7Ts\B/8:(6R-8I8Hh?
+X-LiXjIM2XB1gm@f$qCL0nQq[EApOf-OYRCgo`%EJ\pB5\/Y'D$\g.sV*&IQ>'&i!r2Do\Q!16fZ!"20
+l]p2sI_fHt=R7nHlgajb[+[*4gL\+NEOT2U(H]%UnT;HMmrt8_rr%D^i:%RW()IR<[Qe-M9QiW@<lnn=
+f".(20`ZO8ShNZF):8_16C\V,oJsGnD8_o@7a,$h(lZJ(&]iI.37r#fRaObX<_k$'7cUc;`)9qrM)OK.
+=NnK\+HX\*Zc9ADIar/ZRZpDqQ<rIE\ERmWCSm]gW59Phf/tM'iN0p:%GL0k59,eCjL-N(qLI,&8Ym2Z
+qbl/s[9TW9q_Y<)%W=>1F]WGV#k3.'?B8a*eaW?\^9MV#DEAr%aQ0XP9WhSPqg^lfDoa1=o_NsL?Oq@m
+g$J<U4C->n>HQEAN'uLJ392g_!eJ00Z8j1r7g5,L@.1#3[N,m=4=3q(X0'],E_]k<[f#g35Aj;%<&Vu:
+NCTd@ktS&227Gti[MmCkX#6ElA(Fct[WQble8D`7D?g8l`o:sJD,*/TjiM7XgTC2h4eg*VDc)q3[LMnC
+ZWSfDb124]CpdG"f?;`t4e5&]\6K\k4Or2QNBeN2-YsCB#'3*N:o=,@^>*TaiUHQqBtY:$`Z27]<,pk<
+HH70@-fgEe-@\W60DSkY>:u8d-8R*@dVCb-5@9RfeE1s=T$SjL.K'a/7&///1g40/R7a@+.J505;PR6k
+eZ1Qbg\(M(YLkB]fhIXQ.?dM;Ose/qg@)M^mOijV.E(/V\*kp'gMZlA^YgdTS/r=OK>?C6R"j00ZIm4*
+ni86J4gC0mj^8Ob'Fk?$K0eG_\5Xdk#&Zfe;&GNA%0VSI,7SnH=ub&n8(qu#r+W>:DTUZHQOL"8/XK(7
+%Jc6Z]+8dJTTVk,mWfnH:ZM&h'aB@ROu6oIG-rNZ,c+"F'Y+@#Us`r,g(G0kOhG%A3Lm7]A$+b\GWai$
+-`*s3om4=>%uZA*l#jR$D\nndlM17k5;3oo((UKF_dW'PS5p^>L;H.3:RB&Zkk06aXY9uq[FjY`3F"7m
+qglKBL:X)I(lRB#r//6unVG+a2Z.tnU2PgoM<cFC]Nrs@A?"$/F3C8[84/*E1i?$W;hiN]G<DEk-gdnn
+@BeFT2WtU9gMs\rD7,i"Ao1+o_dP0a99o0aN5]85/+"hp<NT'&2/MYLUJB9QC"R5Zp4G![aL\UC9GQj_
+G.>8h="B!]$%g!#ZC+CUF%2W)E&l_aGuM!)mWQ77:Da2alL]A<*\S=^[G'tj3o*Pd6_2<ZEO_ag(B]*%
+)fN4?c5?aZaQJ^QSZaJ0g/Rs85:+Y?KZ3sIRS@DCH,Sif4.]5\dlE?Zq#-m`.!/W]*gK3l;JEMLF[i''
+Vq#N^C8G7E=ftdUe[k^&_.0`QBTLd;rmbem>37U'h8/[XHsL(lLQ!]$lZL;hmQ:Vj"Q43,>I]&2H+/^O
+2R1p.c:91Ab%$p/Ht38e!c5[qY\6+-'+0FZgG$\nC*O@B2W@Rn'65lINQ,Fi8E4_>&r+8lnnC0d;V%,T
+i3?sSC-=>7_;t*q9V,$1S[G:Mk,din4dAjB1WdlcP=h$6kKOol0p]sn1>-KdMc$G%DDte&B.K8"m<6+t
+cKC,%hXIm7D78VU_W,7=h(EmjF3a@K]tJ?fHi=';JplT3YKT0T'8j_:E)2h?61'*BhHk*c)m02,Fh(n>
+f(4$gfP@mgNL4d=+R+_F@ZP3/i\;=0`LbCXo?KVjOZTA!fec:KkES%RNYune@,75/k)H@I3cR0N:1hu+
+eC&n5D)Wl&`n_,c7Vt%,bpJWCNDWt\euMfFm<6'MYultIHTI\EBNXV;q^mr*@V8ltCpm7_NlJ3Q(i2:)
+c'*EbhV*2+94EejE&b(`7kCB*mYX,:cW@hF+S9un,**$dZ6]Km3LnAr/!7jWEPYna2`%0Lm>/DaDcj(*
+0)U[CUN+?PH9WO6aJ<iJ/=K?_PfR48a6^*;/XO\Y1J*8RB/c:)-Zc9Rk'oLd:T-*B*?'W&U=*`IWbjM`
+5C^]7<D'AsWuR)4lVVuojm;\e]Uhn8Fd^ipF5!=*4)9T.E,XO$[moK4[s5MD0,MXalMl%=2fDeKeai@d
+`8\$rS8LD1ON?Lf\?%jMo7;EN>HPsl't4F#6/bP:A1e_PLc-GS#c(KPfnhU2OdOoqY9/_CA*nOUIB=lZ
+alQF2@p2e_PY%`-3Mb5?+co3_noh'6V*ATh=U^$H*K7sKZC*:9lZp5%F&ZF_[o9]gm&S\eeMg^,]]ZLZ
+*3MdVNPska=Y.">A!YqhYW;$pLJ?@0m^tXM:HRUfr:[p6E&Zs\dg^\M]Q%#NI9sO.W4AE93)llMd:g<5
+n0XA3Ym,0a*>#,j1#EIc6m=>+S%72fKfU4DV]9]m*cK+=Os\\@ZR1mY,r2G^OgNl0bU,+=m*]SlQcPY[
+=aOkh#&6sPbk?)iL;R<#(NcM0)2-:I1><7=X+A"AN^=m&C'.2$?=hb?2B)0ITk8m5W!u9R@SL^3:1gd9
+qhj\XF2ZpZVnMWnIXU,r3%O%Fl\<)8hDhHm7hkL3@BqOk'BT%UIc_a`kS+L2s+<Vr&=?EL)%D?giXm##
+p%\KC7A@&3e7L]XO%/1"f`[=(-'670P)2#m=Y#h2V@qR@^1B0j:$*$:eF%TFKL$_V\eF@c7!u\>cW?U\
+jR&j,.Lqo2SuCeP39q%mdseg`Y?0Je(?LRu@;ab7ef+Li]k4J")tn%lDWu;T[]^L5c0k7O^Ktjr*#6c`
+AA_O;\45<9Z&Qd]neg]l$LrSg?LdLh]3VZEJO&.TL9rE>#)+q.OU-%i+Uj4H+qTLQC(1H/66i_sX%B&5
+A]^=`Gs`a8cY#%Ac3FH"b;=:bSC;2qREXc5:RlM3%16Y'R*fMFBp3hVhkee61eK>`ND6*+B?j"7S]pH'
+];tW5"0pSIFZS?"H)$M?ic)Arc.:^n1tdX@md`i*9(pcK[]f?1gu</6_VqCk\c[tp9Q.C[mECRi-JH%B
+ZMB:YAd$h>6"$h96m`Q$L-o?CQFoYg'8eYVbrEXMV&O,*j,rQs8Z:0S5oVE<lZ'r'E4K562[%,OeRqTZ
+F*;*UTf\8l-dt(#;6;*[2;6<46Y[OoK0`_Kq.#-+;g6bueT]PTq-1"'CX9TrL;dZ+='rC_7AeU?Zp1\D
+gNCL8F1PXpf6bL!om=D[DNEE2T*'V[@;qT]*[_DS`+&8hgkIU2O3-I'R=)@BqYYfXTTD,a+qG$56Qn/9
+>WO)@M8S>X.'ul*(Os2lchREi6R%Z7,dM,HU/ND!a.r+Dj6gCQHd*UM-]>ERlukGG;s-RMcU)YL*->g&
++hpWg;^kH7og53EW&L_U\n,?W>,sUJ'h\Ej[plVq/5<0.TsJL@g9%eah4i;,\D8)?B!pTqHG-^>XaC$K
+m+Ac*0Xtp7$NYdj26hDL`Wkmn^Z':#CfY!FfRZ<GD4!.$%g-U`+AdkM@BS0s2-MRIK/t^0A[8'>euVHN
++`FjEc5AI17c&)U)m.]P]sfV394h*_UN*b!RnVS]g$J-@6'f^KPLf&WOQE<!SF1SWREJEI3,&it>n+6s
+D*]@#3;n-'@Bd\=d!EpU>2Zelm?X^kOhBPF=l_05Fl)Y6]No3;4$@0[eA4RW0nsa.&W(11g0!)C?QfZa
+;B.<ZZa&6bFuj#K81Sure:b0%CoD/1QOmguRS=QU=t\Ec[NfdZltSH3NOBbmVUK-M->^fbXiYAoaR#;-
+-?#lano"JtcC`S-m.L6@TZu\B8fR2Z25IsXoZD#.m80]Z.5Z8)%XU7<euNr9m<ZNTYh%^8ap"*QB!g8D
+G'e)+h/'RUXuB"-g?3[khCj)RmH4Fr^gF<*9HG,VDL]t`=NkYE+-<$rW@qnbdGj\H4<:TF>HQE>F2D1d
+\7@>9%u<UnEAnS3_&&&"@dY)o@Q>Nl87YUXdt,7]PY)n#[cFl&/oAg:;`UUbD)IeXB/<#aoqO``crnjV
+I2/SKC/S6B\n(K8fVh`;of@e-X];@O>4md'G,\<>eRpa_`K$X(ZHfRQ]/86efPNN]e!@UKX$(4PVJVXl
+p.HaHakP)6oWhlZ\D+/elRk*EDJRKO\?'!(jYC^=)f<%DFpQrB_AfVU>@nfaCW%.=."bhOenW1a&NHOk
+Yo\tDUbXA=N^"YK8`Z$o>A=<oJ[Zs^(irSid@7J?/@jR,EmA>mg5S"\3P@n%dN%nW9;U##Vpm.jG6Lkr
+4CM8,oqi1<NF$4!)HJ8nVG/+h2&`om<KXN;D+^Obq3.-0mCU%"072I9qYItb0=WCQisU4O^#%DC?7kK'
+a51-@/=XO,n&r>9%d4T5i<=MChU%V=/boj*6f7DNPYNYBI_T6OpZtL0'otlG&fCOU0)UmSjH>ofW_k:5
+94egYPeLcbRSDqnRB5gr4Io8]'D`F>M*[l[+7TXP/t#G3;sFrBg[4Y/I(g`l3"r^K?#nQP<Yl4)a(;Hb
+>kXLAY1%6/\LnX:PD[D'E89mu.k?Y<jLsGhGFQk-_1fd8S+r<;0,WKbA(u8EekNK9aL:ZD#0T=;aF_6r
+E/&H`V$r*d+n5hs4f]9Q259Vsb\Ai`NlL+Af#3G,f9&Xo%@Kni9e)IPV=P"OC1el]b?K%Bj)MN`T"!JA
+k3WA,4e5=pD5PP2;^\B`.?`pa8tO_87j@MI`.h&6XO^pEpq2d+@?=UWdV1"R=(mfAAe^+jiobEZ7N(rV
+1E,u/^;:b)*"5/*._3ioPMAfT%k<=MQl-(I8SaR5Y&a=D!s+MdBL,h+G0D8?$\guP/SKeXWmlnoU((_I
+AfV@t7q2!:lX@CMElhU-GC67G.sT6DEqbg<AM]cJB%)#u^"kbn:L,dN70Uq'U,hG_W^Q7106t7qcanc"
+V#IAYlIC4"B!hMce=Vf5ja+aKX]]JkHIYpDCTc<,f%YiJhf?6^mak[^de.gthJ\bXp'1DH^gSp!>XfeM
+L;m\B\*I%h-'QJ_EnPi)!W<(N^u'*D]HQMHG=*A^k8Ze(&oY`5XsgoF1?FM+UTs%;OuFS*`al@m"DUd]
+Oio#5R<4lMieTSV:)U_(E>"hP,-C,,G(W"t2/'(;3sLkdV6Xg:l?c-te#CkINCplnZWa*2CDG"RHA^:Y
+fdr,04e],qCtgOBl[?)!Ek&Q\[qi\-[sGYmYIA,giO%?V2Hq#!]oB&CC=QL)-CnKZe@Jt)GYAkK!823I
+?r0>9@L!-S2B^AT]3VZQKuDs?.%EaW)3%,Em:c-@.3+I;ipp2.2A[a+9&Rt)F)#,9R5Wf`=gZ#Pd[`/V
+N(NUJJNdO=)/T^::6=#&;VIAgdn-<3B@PV"=sGN$`iUr\N#M9h_-CES/<&=@4tAC+g>!IuFh6/[R6d_a
+M7(@nCN!PI2g\bY!9:mUn;a"pZOr&5@NB^KFue*8a^L_mN4*("!->\YDFc;rbm8C-ST)Vk3TCZs`1IW3
+jB;?sIn$2Oq!<;k+HXV&cab<\q"p(BATGlpp%]Gl9BJ$%SD%O6Ra,O:WU02*4.sou<!jWaMb'R?W:[Yq
+17q=?dqX"#D-F,FXOaFpb.MUH09SNV:NsG(l"Gi6SJK6d\\@!@2stP6o6J5uEOd'.2_6,s#J]2ed&7Wg
+s+SDNYdce@.iS],_6)=f.uQ'FJ2j2s(aKj4#AHM,0X]t"(;XQM=n+D?<N-dL`a\=+b]Ts*NlWGB\@bh>
++cJp[Xa+Hc>qBbbAb,!%enj$0:1mL[eFn;SDGXPZ2Tog?gRbiX%<eL@UsWj4)6DD#9q'A/1i#tB.qu`S
+DRXEklMGnP6D1e:%@^:2L>/l>-^:%Teo*O;94le%<UTfC]jKp2C`V+:L7_aao@nZpdm:4ID=P&H<Jd&N
+5T!0A,S?:GB0mM5VPGrI%V`j);(.r+UDA_V)Gp^.=ut>t[cB%9)hpuGPIY6WH!?_A/sEgc;^V^r7c/+/
+,Vu=QIX9[`:`AsU*=dVPT!kUMl<KUkj/:%7/m2IXWp$M7*As`pEk:S?].>ifFcso:Zb3Cn>?fh8pp\!*
+0?]jYlMeEP+8;hlo)!mN?8+>hc2S0+]>%^>>ZN3gNlL-7R4Ne_,F$C5TF]Z7p&tSM_-mn"<#QV\L;Mos
+(kbX+'o>AROa,Af3>dfHj71e*NX#KH5NNNG<3B@UQV6HS)3iE\.?dKh'6mICo_EkthToi8`e`uV3ZS]S
+/!7kHEB,J4[j.0^jf;D:c=]:TZUf/Jkqn__VNC&K3is0a?*;XjYM8I])Vo#e=1_c''fr`[`mhaWYRA)Z
+!JJY61bfG%;cagea($$tm#tSUQ-&(VYQhF:Ws"$jTTCQA*Z#,t6_Q4?'4*%#Cdk)gG0F\[*/uj$XYuqK
+T$V,UR;A`f-<D^/bF.r-'32X!D7Eg\#7TI0i,?qGmIp2"\D3N3B_70,EO=JtdqOfQK4VGiW^ggsMTokA
+(p:hn[CGU)a&\0uXRt48+h_]f;kU5HM]V$!]!8F/`b"D.HtcrVGR/@g$PA1rj7[5).Y0dR3:ZEAMk;A]
+F1Igo(^$&@")pP1OEShoXUAj\=toZ'7@b*(`F@'d`+>baN\t=kGlqeLhNC00%Ojc:<9]]0jj)P3\n(8u
+4D)o"_pWZhHI$6QkIh(QpnBrcc`0A'PtQST?e"pfp&@sj;r?+t`FcM^Y#VOQqR(@^s0+^pPhS?id;--o
+D)V9&_VK4C>jg2o`RaX)]jG]Eqq_PUK"td`fN^lZ'o0HSCj>l47jXAAASQAb1]dCKIR'ND\'s=LonC'8
+:D\+=eIlp`S?=4YNPOFi7iSS]o6%RuD9$/7)'!Z_+ca]Ln[AY;b;+1a+qEd`iS-D9cR+[=708*.Tt0Bo
+C-<=\k+k$!/?4$qU;NtZfhD7S9![!L[B$EUrIVprYVn&@$JSV%@'86&er+rnWH,LQmC-lEZH6^^[9APO
+qb<K1A76>AFuC4t:Lpe7XNQf%[ut\i>VV!QOoXQ`31M[("+e2nKf>LGf).D:h/5.q;&HZ8-JE=Vic2Kg
+D7(OL8#1.8'V7YEPtKdDflL&!e!WlJNENX"<u@)kA(.C;@ODqb:ug!T]1JaEA[7^tH?DB7;5Q+:F]N?b
+T37tsAkb:l<Nfhrb2^jgo6q82[5mW?f1!*lEOIi8&W(R$nQBMT=`kKS4ct<1?Q#58e`!?3Q,TEa$WE)>
+l,c"BNpO*i0`ZL7T!1a9g(*n2^7fJ4Cb>;VLqb-R8?>P_(lZJ0Ds6Nd59Q'/UiK$XRSP>rb%%`toC_nr
+QqQQt8Y"LG31A-)o;V*IIlj=LW)O*E)N..\;Q06!9er>9W7,L($DbsI=KL)SFis'.>9/[A+g77`_;=U%
+\m5dn'8=$RDDiFCG+24%dCcfRbhMG<Q[llWY]rho)ZtM#hHDLICPNttaLnfs*36P%OaoM6E&U`3%0gpk
+@8Nja2B:q:6(H=\`)W-?@n'qo[WHYg+)/f"OuXaj9dc.D>7Gjg[Tb5G8YslrUpablS4VG@\KpTjeWMb!
+m,i(<QUYOAR5)-e24i0-[2Nm2;g,8$E4?mJ3otCe?`^ag<]_OW^LqK;XVSN3=hA?c>]&(RZYo-`]O"g/
+]<cD2HZ!2/2jV`*%>MUSD:]b;HKa2)jDGb`[H:62bWm%b-:AH,#%YRg:oG$ZRgs(!)A+<\;6:UM`Z&op
+oPqbiF%@;a-WH5[-BU>/EiA#E/CnIX+UjY^d>'WLbnuOS4#2-0T=&>eL<QpA7W[!'Ni-_KhbJGr*gJ+\
+;=R\f^?[Gph/^,3Ion6[(]BN?B!^2C2QL,hgMXLU/iL<VJbo:nh6.WAc1:UX]jNM')u^3QKYua<3,DV?
+(QQMr0psSA:Eu+Ije*.)lh1JbJ\bb+GZ5S!$&6=Ud27O3%/u/Lit7[.DE/_u8)t:#'TPa/Mb3"@a],D6
+/UGUs1DalPcS]`;g_6"7mBo)n2B(s`X&=c&UGSqA7\q!#8u5H)<>q,W[oINMhGoo5DR/hWfB-u&AW>;Q
+F]n(6]0!"@D6)FI(=u9Wc#mjYl:i5J8u5:W:oJU9"qLph_dW$OG.oUEMoT>u)'!fA.@%bXBWq]18YXRF
+1YL"I9Hg#3B=+B"=GpUjf5*mFZ%i.,^>X$$S+3HTJk$cAa.pp/97au$PKTfN3K/O"1i,'S/NM&>XZW)]
+ArXh'$ATk"`Z)8l"Wj!IU.hQ8)EdjIfP+)hCpmh.O^)BtR'm@n)S!k"=fY6;.mb<*Lp^mFH"2QOFECfZ
+GDAP^dc\@"Rn]d)Z'U,PiKs=np*kWQYVC*U]4Cb-jN??80'EDJh!otZ+O=^gjqRZH59\DJlp`9"MFCnB
+Gf3W7(lh*rdJ3p"73dseAC>`kM>I.+b9_2^KYD"MRS7>"3OIpg4.FQ/;sEA[.m]n+.+A#](6_7b;e_Km
+>t1A_W(,l+HGsL(>E?e)d.huCo_>^Y*m\%Y)<g\#4K[30,K8V_\m6?NHc-6GmCkWbc>3T8"PU^O0[<ol
+n_7uh4`-6AbR)sdau]+HI(TL1!eIr@Y\-'A_$Y(t)c5\@66d(Y72k].XC<s7NQ,J5LtmQ\)NI=VdV1gH
+Y:#Q,A[89lAlg[Ia!5F]]Rd+'PKp!Z7`7HugnD1rE5q3]P=hQH)t`;&6,ulDeLFR3*%A^#E7Se]8c),s
+c`sgXXW'BSInHKbXf_<i_N/`Jh'eM6<;t1jAR?:@jphIp_SNJG\)nnO'$/%uEOVpZ:=VqE\?`82]:&`^
+F#b5#2Zt/1$#7?1d+1TJM%PRuif%!G/hk\42<0\[oF]10OZVWb3A]5_q3=/*O3)LWr@rfGk*$VRdW%:<
+:?Rhoo_sD-Thss;=q'+orI-tF<6AK)ThhXdWg+L):9@[#<pKA3eU"c&Ia."R3rPYfBs:e.(<]^diGZ82
+Y*U*0cC6_e?LO68p&>%`_-lbSbVgOT8s`0mDle&[o-epsZAs=>*Ph_p^msmaHl;/SHGZ?d7uTIa&;[r-
+E@@<Z0,TPcSZ\pWU-@_$\Kl&A.tUPFDp"Qt`n\,40Pnt1D2G@IXZ1(@RZkk[qL:P@ce=U%/F%3*T[G92
+agB?*en_\W<(YPFSCs@=k#5m25//dg2f*Mk$^qB8F4m@,8LoY<E48H/o&eb"Y0su>RQ&F=:B,OBf\<ks
+S?i`^_;_P5b\`)sHt]gkCeUl?0#<&l==bjF&e)j71>tq5@o=<!Lc6MPkbE_](Q5b49pk!%W6p\_A5()j
+Q(KF<8m9ZOgpSitQo_*>l(c77p7+<Z:V#NZI/]d'kYsSh(6(h[;IB&'AN$)TW)RM33i,lZ=/XKI<,-dQ
+q*)"6X;3l4QG[@@=tJ6oAZjj(\6Ei/q]0:2FM(lI="ECpqg6(cE#:\9(BoQ1>3](roktk3aCK<o4Jl13
+PGUSen0dQ7nHO3S*:Tj?0uFKT3Si(1Uf$FnMEN"XW8&RXmtj,sZ7-cF9+lD?,qc`4VHW2MbT[O2S!Igu
+EB*,8k6l`c5&O19<$oj%YsrNW.5[?m0rIc]<%6'Q@of:(X48-=W\ne"8#/#BbpJWDX^%T()`A%u;OLBs
+eu]D4o6JG8QTC[4R>`V.IWJ5&/m6AW_Vi>jgUO:Q-HD-\<@nZmS^G-,T4/oPkS+L5!cC<Y:mT<WY7556
+g//W59q<#UZeBDdCL.e0KZDhEf#3S,erqt&&\-V=].ItpgliOBc.b+"c/)BcXR5O@I8Aab([V\17=W_L
+'Ui#SR8'SXku:aUp%^tTeLK+<`GVkbX]MQgq\=k-@'`u%p/gWRV,3uB.(61AVWhd+>jh>j`N%kq[o+l'
+X;0n)J\p@7fUPDa%unP6YPB0(:FVRPAb-H<r!EZ3K#+,LLeI:Sp4g2QmWaYA-JjWi@d[pQW]'4(_qiW6
+$d(sbP/uK8LP2[/.!WgEmeH_&B'l&3STBQ[l8LhJ3[aG64-kW\U;bnB3_P%=9Pr7J2$V#kY>hO0WpO!5
+<N+EJf:'*:[8*sTBsa;pp3!@)d^IZ[Xk)NX^><`d.F#<MC@QS,[qO0U/E1X8_7Jg7\^RD$)0A8[&K&_]
+L?3D7gi6EuH*IHc6!>se.nQcLJ[QLop?Y5_'8f4fc3V?c]c2r#j3\Y/4gb`5a]]=#Co11XQ9ndGq%R8Q
+jI/+VcH3u<FRu(eB?uG;l@f)05A8C.74%t,VGh3YqLqD8;lWfr0A#;(ZWO>2CR+bPL:q'#=R=UC7?Z26
+[G#HcfCT!(9V^E\[sM]Kh0ZeA03?oI.]ZF]@;m%\7N3"r`FEnTr*Dl6M7?safmL^=rrRbf+L#NA+qk<;
+_]c8JHpS,;M8(7<BY1i2jc-`ZXdJul6R$><)cCA8Fi,\g\Qn^g<5I6CN4YYpB9_Cs3h/<FZY+p)K0Q$V
+*V2ld,&&g/]-\#c9gR0)QT=/f3kVH/i2sJhXiB+55@SFeA<KLt=fU"e1g2I8CGD/rA[?9VCJ08dk&WOp
+%[U\7!pt/**Nn`BZ.A5`@-1Rm(+UTpFORNPqKnq:l#aKW:fg%+%d.jm*,W3,<ZohI1h)RoP>X*cNA]aU
+R.Pg7+bqu1P$'Sa:u7I.>>_9(2IOIk04p-AZMJO[SMV^VpC.$4m\)bAO'4@%OSbk=.?E2(rh32g<9f`P
+[9g+@X]F_*lLX]E:9`A%<a-lAa(_k`XVSNk[c)&5>OH\SV;CTb]&)llbLQ=fJ%!t$e]Pl=rJA>LYo(,s
+2^+.%A+Fma^)Jd,J&%^r81YYi#_^'gE6)iV*tX7HTMO4@mOn3l]OPi8l\[m\OL:m$.4[_[cBPZsD&I/T
+Usk^=k&$NeIW"8;\n>p6lb7ifGeBtn3\/X>8>K)=<#T$pK(,_bl?,^W_;/4b]3TR"<I2D#F?*Td7ie#5
+iGc:H%JK2"[;]q>g<BhK3L+i!1"a^>m'WN1D)nhAf4@"1o:sb!eN1]3*q$-l13kfr::TV?4!7?Y;m"X9
+FLiI][i@96gho"/9h;$S/Jj:%)R6f9?*`."6lV-=,aGbbBXF4%8RggeYa?u=9<"_lM(33uVbjia\pX1D
+4t'4<,P$fmUf(n[qIMRU:T.6-<B?sWX]MON?a%N;DS'/W=DSa6rKbE7Z<?QqRq8>MCU`&9(H[o5j*/(@
+0%ZTSmJ?g`?siZ_ee\XJ^#F"`X@=i`NQ>T_e>sEe/XO[H+7LZu&dnnr_BCV3>V[6.LVI:O\=;2%nr(,T
+/stCR3o?",j=P'b:.ilsZ_]4`>d9\LB?V9X-G7bngQ/i(XuAc=ffjXW,4?n]&rT5S]dYe9SMH[0VpMA<
+)OnI@m>SZJY1Hs"Gis-M*0KI^@`pH<12SR#,8#OD?ns>mG0=U*j`7m^NiJSbj\2K-l#01:qO'[C45L]R
+Kh^B'XB'*(f4F6]k.A03%Q>&XaTZ`Oh%5oGWRU-R\mV[1geFCU@)^^EQ%X!g*F?e>EYclZ,41RVjU[bX
+nlYjW5NWUsPg3u#Rn`&ZRFLYM4b$8bYK:noK0uD2BbX0>*g]Hq;sDgND,-d(WE!^KHIZ30=g$?Aef$+=
+aSqdak&q,4IbA2=g?mK2L!JRu\QuA&CF,_NID9.Y(`X;%#lh3Vjc@I5/b+gIA)<UiL/(G0LUpa[#<SKq
+"E-Sq0S[4hV$q%TRILK'8XgEM1Z=<A;dHjPE(?F]#=OF),^IM'ZA5fe="KZ[-1=p2b$QoM9dWbNS&O=T
+S^1Uq(OZVDlug+6n`L!SXO^o;)!fn5g8;DcXr'hj)`"kOC,FZ\#4$9=hiBa%%JMrPb3O2]SZ_-ln_iu2
+:0qidPa_2hTAF6<3\1T]iIY1dOf3=jSB,'tQMC]U8SODpjd=_W"&9!WJi]RN-puu.qh@=DchN/_,nl/)
+@aTG=Ai1Nf7q1rO"82I"OiX>]Gr2Bk/!N[Q;V?`;AM0EFB!XM)k&EJPcY$2@jSj3CU-GF&GeF<H5c.AW
+FR!^,V,=6l.b-SmqM@bG=)6@`"bt!+Z:-1I)'e_&C40;p:PZ?sl#V)T?+5#PjiMk$3#e4Xc3:2"Bjk0>
+G'55JLM+DkGS\JL-$sZ=>qYK^!TO6-5p"Bd45LVCKu5(<k^5]@n;4^8Xa%G]K"tL/,HJ?PAV.d]Y@O]5
+4I(62Q*R6ffm?%pd@&6+/I$U]SN:?.)"Zu2$$ejAd2%sXSKViBO07+Lju#J3c&9!b'k]sDhcbZHX09\C
+rki3MfdsRI4egD?[G*:Al[=KcEdkbF[nF-[ms;Y(0,Ns1rqh5^i39^24qeN_`8`RslrHImOiQOcpF#S3
+!<.I4i/h%t*X_jp^S+KF>W*`9M*n"ufAnD7(5t`C;:s*A3?XARA<Jr0MGY[aalQFRAA2,"QV=7i3OI@W
++Fuf:'A<$WJO,u+k`f7.*g'$j;X'9Wh*(uLMa&;E]!L\+pT6SoO"0b4_!A6cm#ESPHI1?Q2(ae,F$AQ&
+BjBB$<n6$DH$%p!pY+ZY[=N\^n<M&&*ta'O@duE*^+JjMa]G'.]X$u\!*I%'0Lab7HO+(IR;g0)3Md:C
+_jW./X>-$^N3T-sW9egk`K7C$D!<HJ:>;#CASu3tY$UUb]d@ZSX7C0gInlX-amAkR5bQK&F@n,'O%?(p
+W)KVcp%\K`e7o^JX\u?$XOX@OMVWTj@'3V4p,`_HcXsQ;D0ChKWnUFG:9GB0Xh*tC]Nq^"bME$fJA0r[
+pae$0qb>#WnT`8q4!0R*jKa&'4Z7;IJ3P-:W$C.-on5H$:AA>!*9N&:,#.j-FtFDH\789Yj0h)AO?Opc
+R3W[<p680\1.TP#odl;#Al@h+n^f^/:/qt<ipM3BTL>:^#;gGGl(h&0EU%&Afh\GB*AHYV8sN1q40)-a
+j3kUkP"d&plQqhrB=(iZ<kDqOh/Bf.DHAorf'R.V^L*&VeaiH_^gHS4lm;rFK>V/<(q`$k'op:DnlZs0
+6S4MF^`SWhlj=%$K#/Z"W&-7C%>D]o0aO:5.h[b/,4VVUE\SVpa5aH3*/[B4PK>*`BhYfHrg1hU1AC^p
+CGq[--SqaWnp<QmcmU_#*>49"UXCNr-hIlSr-gip05@!%WpQju.kZ/&Wk.W%eR!0@)s5<<Zb7qC]3CTT
+l*n?D0<:Ylb5&C#*uA^Ne\-E5?kXA'Q4^0P[c/:0/6e/S?$0=WQV)*QT9d[^+:m)iq?[+R5p+He<%]$t
+LI:&5(mIcE'oPN@&XZfHqYYn7UTsV/L.NMO8EB>E7'9NAPfr0P$$=1$1Rh(9'3WQ9FZl<lkB%U7$@tR>
+;/$_:<?@JuVGla0)Jflq<NAG2<LVHU\QuC?lkUNS.J[P&g"r$]Krs0JGMCt5(Tl!.q0ZK)=-jZhWI8Ph
+h&%*5QO*M;@IY,"UQ68)a!WVLm#t'jji]Y?&-g>bT*/pqS</Mj.J!st6_ElSN(PH3MT)=[Ls0Tm*0/(7
+nd,_.*<(E%+0oTKSl72*bGA,DCrTg;Ra!2N3R$3"31\BnZjGh$Im]mV..h7K(7.Rh;Q7&2I7g&0W7>X*
+C<^4s=0B[kYM05<^EeqEXS.QHWn2'qgS2!/lg!X)]"@Culc[0=otJ<c0?aga#4'.6E9o\[',K?B]Q*]_
+jHCg2H=L/pL]ZOSYC\Lec.GCL']4X$@E_8p/gT,-3b$E;_sTA\N^mIHq#lF@,EbW/dWn6X<@aA.A^^C%
+Fo)#bbiZ6'[,u?iS'P_Gl/_ht6)%1(e2f`.O\;NLBf,Zt6CguR<9i!``E'<HX]K;'qV?n>@^&u$eltS+
+eRtXAj-'k)`oV9Q?#J8@`1d!RHXC)<pN?`!K6^m4(jk*cq&"Ff1!A@(Rj>#V6l:q(_u]0*I_d+FB1*o4
+$=Q:F9\.]Z`=d+.)Gt)t@>Pn87j<reCk:stIRtZCfDM@A.[A1'ZKZbR@ksIs-F7F!ibJI`^L*'oo_*c$
+T[>/%C)n@R8>Xb6[$lCuTh_Q:.WoKk@]NY4euQ4$rGKMZYuiQ#CFu:&C9uX]2TpN[j))?^/se)jipUHL
+h_2I\c3"0#_;K6p8)rbFoYnGI\EA<-"SI1S0^r`363-Ih^t-k4*$%f]?,GN:=(FJc&UMCN&QW.BPo5=q
+>RhVB@R//"0dM^'1K%'0Prn)gM0&5qrg?"5P?G9LEB0RbkEFTkrddA/;!=-8Poc&ZIm7;I\)fB:rM\62
+'j?l+WE63&CR'eMDSKJ]=R9'm%A([TZW_43]61.4D7J?g='MNXkBX[GY8=hDpAoZX?gr:[-6E\R_W'f^
+giXDVOi_.s'R/D?-NJJ)TPfQ9Sdt"<^tm<rCZZ]8LqY'NaK'22bD`[cCe3kY52_OA?&iVL8l!BjZXn!Q
+CPH0QR'gOBRB1Of).g6hE-FE%k7N-WBQ*`!)NRFbd]%?2D*":cW77hi9!)9kriFK(ce%7g]j7hoX>W]T
+R`B'Hg+@KKD5Q3,\6H*p9:aeuGe2aJ0:0T<oma]i?Z2qZmgj`_h=4U+?99*f`al@M4H<>nQ@M1AYLjO%
+#6fcHiD=2u-6!>J6t-`fHr_O/MFHQ&R,h^>)ir$M&igWur?mh%AQ$'+r_EK\9P.3`Ut0BAS5*]qW#PF$
+5C$(2'K6I9\OUJaB^Nh\2:kWM<*rWah,WiDG?/C[(:A:a?Z4S%<]7p^Q"OX]>.1m,[_gq-[Ma9HrRHIC
+B&6bD[r(g(J#^6?QoU,6GDF+GEEKkc2][t"^u*Q[Um!;TbJ54'a6X->"+nB4n>J0!'+KZ5U+lqD4t@8'
+]q2E;&VS"R(5i:Ri95,<)A1+0;Q.76.4pHNVDAOK^2#Kn9d]J2bjoa;S^6K+$69J36)2gV'P^>tQVOAV
++`HY8ri9)#egiVXh/^,6YLTXkkKT.PAp.>t<i4EPX_qk./^7npdEQiY?66SRea`B_]fg9Dk?\f/jMT^k
+9h\bm)VN0?1-#!N2_)VdYFl9bo+hV[K/]J6Lf;"BmWuPfO,0"f./\uf@hG("DE/\da5dirr,tXXO[pc2
+R8g=l/XK,m',d%[Bf(ga?]g2hicRDU:Zlg;oa67;UJY_>8lZq!8Z#GNeJ`:"TfGKjbQWSbR2/Rk*sh(_
+M#=nb+,GS:(PBQa;QAL=f,CL.iH)V:D\l'shY2<0?glVdmLK>O_-q=#Hr_1(M4R<$\K$o1>o\gB+)hIl
+$0;;56(H;Vr$f)`D*set#7O2M'R%HeOba\(nJmS&j6p+Y^..@M\Rb,"99*'2QF:Al.>p)s1h]UPX]D3:
+\D*=Yj\CRuS_37N];!Ui9?rkIHH)_`\rB;W<3"KKonW3Sqcp7)X7bZSMST4r=fh=T9rcf][bIqY$]W<S
+rI.g#f3>rRo6e2XYBTm3!saFpi,JHb7N3#"`T+4+$uOZ/LI*Q?K\-Au3YP^AJk<ka3>-*<$,iPbe4'63
+I`16N8@2t`)iMaH;<[(i73Rgb,gn\8Q9P+l5$P>cCrH]:RN9\oBsH=h4&aI2DRX/NKdrfhB[f(+(6M7d
+;e\)bAO;qbW`896.`GGp=05P;YNl;i`FH2VCt<r%VU]Ij>A\@^S+6:M\ijrVlbf=dhnD!ec$T]jZJ<;V
+E7_!L[hS@X4C6\7c:9/Tb$D=+GE`-hnohhhct;Vf[gIi,+\g%*/[F&G2OdF.X(As#DR\Bfk7iKh,'(dF
+nn1Uld->a7ATEW$\^p(h5ol![Hb&/+GWd+/3U=rTom/cmcWA$?meN]nWNXHm6D4:V^Zr#f]iG)6Io^?m
+lMZ=P@^4T;[VI,\q,=\)D0G5^_V&t=h!R*o^"W(#^"tE/X6p&hK"k_J#io_H@Zr+Ddm97V+?Z&R"d'"n
+ke[<O'K9E\fAlQ6#_U!&OLTB^+Us7Fi_`gR?7-VK7\^FfngZn30,Fp?@KF!_;aHsI$<2;!C7?oYP9puX
+ppaHV&dG*sOjN63Gs%[<\hmlW*2QPIP_sT9T1u7`l;_#I?E%&-<bmu3okM<KX?WeIq_atmBsh.3QJ6Pr
+iGlD4Cldc@h=5c9hVED-*W??#Cgbta<h:>(M8`nm%@h3FZJ][\gppKe?/Yd.4<C^s]G^)BJj!FZa-8Uf
+n979kO[hfBb8>4gS+4MjH+P2[2k1LP.uD.%NCo^==Y"N!g6g*[%G(H'9cB6U>][q2q9;0t3F+8(6abY7
+GIu\W(Q6,noQe;]mt\g:oiQXnX)H/HmJ1+lfW7m'/XcWP[(i_dRr,aoE4F]+G,Os)q.73Eml/GGqXoBQ
+i,ABA/e\bJ`8Rt'N*\RbON(h9aM_7&@$6$R=_XPG`=O(b*J2@b=F=F+'=VFHfAlQR(5g)k;4-ER4WBI&
+A.gm:Q:!$_8g:AT@AM:(17-BYZJ-s/?["-C%s?N6GSk\/#&Y0L1!$dK4]fM@_Y?OO=dVrrU9IlR'l$c\
+27YSb<F;q3CUQ;.P/V">=m]7*AZ"3t[p3ee4+5]AA:IompUfP\rI;UjE*,4L(Cc/<?fKI'j72`%H=U<l
+2a16XQY\o+%<dXuTZq+*R1,BK'o9e:0Gk2jlLg,GBu(cA(B^5Rk&s99dO1!9kpC`!*qH5IZ<Hsgar[j$
+UX!X5S'>Pd3O?kSn"74*/rCU6MWCP\*7Uu?1!8OS\10)QRqA^%Cpk8t3nnMahJTgWmHE#NNoQ/JWD898
+VV>s03h9$4>HQFAG$X;!q<Q%50pOoZ3%*Ppq1cf%YrJZ\1Dc"jj>&_HSgF72Ic[45fB_u2"G+Bt&9q.m
+)$u&7iR&Kq:*14-7A>ohe7L]XO$XHBjANrD94b!;M^1i13-P\'9jtk_YYO)F7q6Q7`9qb2NBWsfVL8m:
+F#fa"L,?IMZIr:ihQ)amh0'Q]0*A;p;2"^c/Jecu''X58@5!q+L18k>$t=4Y8@<F%@1ZoQK0bKdeFI[/
+^0g'U$haf3K>V*%(gKfX'og4CnTbrrq^DKfAb-H<r!EZ3K#+,LLeK97%#2Znn;$X-q\4ItT'pm0ei)u@
+]:Fu&>G=UKEk*/"#5_u9f5!6INHpFNU<mDTR*8#=%@#"Gc'YTpF#C'fD,HePLDuAsl))NBNp;TrV!Y23
+l7WLf`jYNB]rUU[%>j[eZ.U?4HPLue)gPY_Y553,eT>lgSC`N2l,.n58mC][p%nIB]f<6_k3a\/N5[_p
+)$]`,^O)ff0+M(dS^-A?3h7ndCUN11HGa)$pZ+dhrea-RYP?%J2&h%a+0W`OIR>6?8S"!0*2ZF[PY1&c
+fn?YB0:C$rP=OBlp=GldB?>H$;M:@1;/"I*73OH[7T2q`@\Uso<b*RHWt\sX3-u=59u>;&Zqt<h)&(SI
+>%K^0[TV)$qgsF]F1PXpCAYnDo_3\qk4<Bleb\uc]pb=7!aNZP09?EkA1>lo^.XDh.T!2I^oIsV<^I%K
+lr]Q@(rdd$H3tkAM7MWKLq?,3N/a-]"Z?.8`qN_lP3?Be@T)iD]cXGum(-UYR*?t!Bp@Um3Le<lZcW.5
+K0Gu*.!02U,)JpedciU2I6+,tWRND_.]m0`>+iX2YPS3L_d]n(/@K=WU=3kbgF]l!lhY$BIU+Re]=Zne
+p:\/22s5&ZbiWrU0WhuL?P=;j1GPu$HOYSC@q?MdL-@d$a^N!;/-YnKI(`i>(N?<h/eYjLYSkhh`*Kb(
+CptXKf^sU)h/50IN^k=Rdctqdjc;ECemS6?9]$Ld[+].HSPJ@3\"ru]6$CW2'NZk,`CY$sg_AI`I\A$K
+a.%3RbA+'3Vbu6PWq?PS5C-#\G$!drqe:Q6m?ZAqq>1#rgo`Rt[FP'LZehjogSOo<JA5K2Qom87&V\0^
+n;t':R)ibgPmJipZ"YWe65Peu3#i\?#)'i:E-Q1F,_@ZsOeu/GYh%6*)HhsH6Qo9;@4;VB,^GLnIkDn*
+"_7YTUj"YZ%E9#8N35Ar'?:6M&A3HO'Fok,6-.,:2],FA6NL;>2All78;&9H=n;?8^L*&Uh0->8Yh1Ie
+(Q6D9BN//r-\JsK[T=?*"Z)jod)%\3S4!^*pd&kY%5O-!2Th[\l</q;"p)_(PE::TZ?]-H9q@Z%(sF;g
+&ra^&?O7,eZ>(F#rI-t?&L`T5/JX45,>i^@AiUro87Sqc"Hl2"PY't7Bk4)F/!iqA'01HkAN#uOk>Rf0
+NVu(kctHB>,o2J1Uf(o+\n*dj:T.6+;+K[:pJlZ+?S@2Hh<af\]dur<Q'L0<G$8/E[hFV8hRGH_%<e;m
+Tm(1W=q(;ihYDP2ZPf+r'.o<d@k_!Mp#>@^\&^,O9/Y!^(;F9C(ec8E&X`i7ZC+E&K0?ONDT!LA-PTG$
+(3M[/0'M)23u`Cb*`=A]P"R!E7icWJ4L*-`Qcg^3-R@*S2Jl2-o;UM*ZJ2"rS+B,pVMcF>dN91$h(ee%
+VnX=<lBCq@;P9D9-5.hi`]"hG9kL.teELR*SBdFY<MnAc[bNHhj(YsaD)`KZp;>;?qKP+DDtk!^h!B2N
+@MS[7N\P[:JM<H//=ocjOAY-_"%X%:!-;[#9WpncmI7k(4r;'aJ<D&gLrEg)(sG61pg/a9_<D?dGTDqO
+jR6+,Q0Q$tb(VK;i18r?'0K=3Vcq.uhc0ka.H%f1*YqYG6>4hM5iu/R(WcZ_E9n9)(kN!Ei&Kq'>HZOC
+";."`H8?'9_]`FdXY4O#gY#XD(!S1M2]GJdld1ke+s.;L,`8i`KISMc7)e.V9YsC)S-kq-)2oo14,2;t
+"@.6cQ4UK(TlmYO[O;fGQgk=Y8gb=1`M.0^a_\1ZFtSPd,oMA?,^I%oDqF%C;_+,+-1^;Z[V%:_9W#.Q
+]]s>rSBkhhl4!fM5GHN'e4MkRP>%cNWH@uR6Dm_]bhps,]kY#]Y1K`J$Or!6A?sm_eVRPEqYP]TT9ff+
+jmdG?4mqcCc/n29^>@_-2l6o>n9<i^m`\=r(?EKFEUF6nIjWoe[[R#J"&5T>B/>sWa@%>9aCDGV&G>Vm
+JA,AFU<Il"&i@Ld7q54^.i!mLA$TSU3C?B5.tY*rD+::8ADin:B$Qg^Wc[Eq9q8@)"OY$AU,OLF\jL(o
+fk`PcP_oQsd8P8>?F>"-AbfPZ^E9l8lf%:,1DpTm<%3*SVCsZgV=j\8^:mD[Qg,NDipV0,?-F,No)V6d
+?71[=UmZL'O=mKZ`UsQp^7%HVdcb`L!?cqH,*-<R);)<B2jN?5F)dSCCGD%_L.JCP/JsJeNCG+;]Za;b
+.o"=/+e?E\1q/f@[dre>0K1rBVYR41^qMfg=6EWu"Rb8X*h5n[j,o4KEj:^$AjRB\b!e?/Lt>9[+R*Pb
+X(aL[4XT?),b3*.MiEm[E%t3AV>:Xs\N[<"#?Cnng9jZn<Cnt*M&'/eTh6bE!Au-L,pU_=FCEgZM)c,D
+k5jQL!,s0MMaX;=3.=[LNl_DIYm>Y1*K>b_@>LFe0GBc[A$]lgChG7,%#$ueN2A9`P_J5I5YTO##Th1J
+<.V\;Va-"RaY;aL7O9gV8]HWDrfKdK;X'G"61U\F8/NE7!Jpf&3+5kFYK-$R^L"-HlrI="T#kZP>&BS;
+FfOD;\D-FQ>G^3>H+RCd(VBA7!IV^jn9>p"*t=(5^Tj$iG!@.4a^jt1>dduo!.VeWE(DMu%g[j*Tb#c@
+neVO\7%]T4X6qVXMS<FNLtgnTp3OfOY;n,@g?`t)SBbatM8\@l2quU1X(H8"S@%Hr.I?l)dV,tcCs"7l
+O%!Y9WGI;V*h:9HZWXBLK0>aQBJ^X6[e.tb?uT5L(/$69^tc<AgG>=7<OZpegmsd%V:kNdLI5F0f7Up!
+L-6@pX0E>oFr#HZ"`JPa\a[9D^"7hJQtJ"<J1h!XFl7!@#(jZ6E%!h+GT26&+n(5Un2h>B`LdOboPQ_)
+'##1ABbZ\Y-]q"HnsL&cnA#d^`G]o"`Tk5Yc,XmFo@\daHSEPPFt#<:a"'=+-3q.6f(WdHh[K\BiM_BV
+[F&oYb"_Nb:-RG_=5/^<qf8e\DM?:(d_1)jQhM6lp!n#'Y+L_cU[cF-IQ4Egq[76fqeW"a9k54-Uj@Ep
+cB!]oZ094]5TS&=PFZYaD6(_DobcA4QPHS6+r';*2N9Tuc\;G![&=TlP/7BS+?6#W"qekjU+k:t2?ui?
+d_KQZIN('XL.4L;5iu2UU.leQq<U#L7Ko+b;@(?O/m$OEodZM1X&c:NQSkP;[']U8M+m%%H904IIQqZB
+Rmj@3Cq&-d2X?XFkB=Gn/siWPmdkh@hlo&p*Wl_#_W!9EX>VjJNQ'q`3=MItrKaNs+:n5]%LE;k6/`BB
+<%]$tLI:&5(mIcE'oP?7d?rF$1Am1shf#IrmI9mta^5Qm;q>(BH+]`08T_[Onp%fR%ek=\g?j&Eh/95+
+VM+5V3ZRdY1Qfc=D`:m[VTWDNenVOZbgq\8SCMA^/'UPsNkEnV=kWM7D69LKCKoR1(JW09Fd,*tO5%SF
+f^*dTNs2FBaAD#%MHm2*>DZZ;_[;q/Hl/V*kZNc`:^*ekf!Z:(<e?,eU"KTmXi2pS^nonu'YIL6VipCG
+oNmD]Z0;7bm_=n+?OQs/U/\l@4sdN1Er8]dRS;g`nQ__i4-U,L!sc^HB_Z!F?OS[F+Fa)pOe41FCZUd_
+I'X6bQ>sn9d6'U]L^2C7')QOAhei#Gn\h5P3>Ja<1=>m]?,'Z\lam5jrH0crMlVi^aK2eJhegltmBi"'
+[F#M.JbeZW4$6XMa9/i'??<9,/bP5@Wi7#E;o9p89N%u[M%ce[nhAc84dX$__O*a.8dH0Q@+&`T(e5MH
+Lr3%d$tV/]b^i.oLa7d4"dt8.,69>FD(5Z"AjEY0ll'$$!bp.%/5.?&2Cd&L`FcM^Y#fBRB#0G?=*_!i
+7e8&p")EA#+1BpP]&@_@?#DTJV7la)\)/giS-AorGer<WR!^e>$]Dr50j*4c5:)?4A9,4CZiU%%IR'Qf
+3%Q6a$A1\h0\BVk,7o^Liigu+@K.7*a!7kQr.79[Oi\lSBfr+g.[A1'ZKZbF0`@!TVQ]3rhDYUe59Fsg
+o_>I_O]XW[m?)q0Z*_%r-I6U@,"l*=d8qID"ES[i9JP`IY,AC=o!"HTPifi3g,_[5W0Xj%=^;*&hBD
+XIdO-L6tPP,8i<dAZ(4K"V@)nTbB4\plu,MUn\R0np+(_63*\l1t5u8WfTj);i-uYTegsr-?-#=mR;Ys
+cE\-F<e?*9fM_-B$=4+&;pBP:HETbUAalhi^D4I"'03/BD)n$m-A'q:h1.2P%-Rd`]**$G@1OFG1(3'"
+8pmoO:R5./o$0,,RKl@39_eI"Tc\-9HgSD4IQ1;Fa!.e`k#suT9@rL7M#DM&+0Oa+ooj^93nSXFji(qO
+<^*#<#Kpg4phM)1XV;GfPlNnX=N8rJr5@JrPhM##.k*eH?)7`T`&OSQH4_ArU!qtN0Pr9C$m`'6@#,@B
+%tVZ]^bC^)"d'"1.AY7($R(I[6t*;baAa"CM'3O06m-n3Kp"q;b-;-`:8#]Q@4783=F\o&Fis)t^KP@(
+N92>-fml"?)%#M"C\@K$\(kj;/$77gF1g>$[Kl^+s+%oBmP!n_)Y&Tr@PN,/DC6NbaCDM99V,H7R".CC
+YLjO%#6fcHiD=2u-6!>J6t-`fHr_O/MFHQ&R,h]S++M@B;E6"g9dc/tAQ$'L[TtPR9P.3`Ut0BAS5*S_
+kSt30r-cq!'K;j'ipq@Vkt^MR[[g*94DIYqV%)r\IF$hJQUQ#IAhBm@@mq!r.%i_X<%$&XJG:3`++q^8
+"jHl_<?QoDj="d<)H7hH2k/M82R5aV<s\<lq'I7o-,`KAfSuDn&jR@M0e6O)->fc9c37mLcE\-Ff#!c"
+jAPPSMOplr>M4BSH`uK#(W-5S,SirTZ9`So@/+,gjl9F[#]BEGNuncs)s*)QI'QAJQ<Aq4c8RqU#A;LZ
+rq^E)+)Rg;mCo*>30b#p.`M2I?,'[(2s\#;rHGT?Y6Kudfk@ZoSSU7>TlU$N/"]Q?)r\5oHSn[H(4$;@
+a?-t87b7Fs_UMU#=\9kfnLQY#+s6s:iTs6u2[@[K+ORj'(,;">7=lXITKWSn7f^CcfGI'rK#iR)"H#Pk
+"d$_hP&U=U?7-*g,X>e.Se4)OJuI.+@7GSN.Zjg1OMG+qUHduWRT1u.9r'6g#?,&Bn@fJP$`):cD>O0Z
+f5('F"cgQ5YhAB(g3'QerjQ,!2]FWsd;up*D\l'shY2<0?glVdILca=\6pu"S45.6MT4[2fc.W=fp0`l
+o+20)$3p]c_4^:R9I^heL;T_T#`MA''T0l(nVBj72Z8ZVT99KhL-6fB`oQUOlgd+fPs8;J!g,U0<@3`"
+KjhN^XtqmM-aWDIChl*MR`e&sfp$B%1(2DT!=A,.)F0\,a?q(5&nhNFc(O^6bUB&G##pB9ii*,&=JA1K
+P^%b6Q4UB$_D\uq9]&kWSBE'CX_]G1Y!juifW")J'g5X8a1D=TprVVdfiS6jnA-!X`ik+.h=/<'4rC(S
+b8ciDA<gLQ_\;.%DgaGPn"uNSo[lSrgM'14JNj!OWh5;_U\33PI_/_nf6]OSnnHD'e*$&5V)W)%*K4Xk
+V0MiW/71"%45IE:H*n70eli7(`&fq[L8Luh^<9E<Q`5QD\JR.uT*7d7E/=F%%NGi7F!3@e=X&M+,N*i$
+Fq#[U_1Z7$/;Q+$@ki5`JHTEg/!:&>Jij#q=!7XhUsOtBZ4oZp!pPoQ@:4j"QqJ]VUg`p7J&`e=kkp#n
+rK3OZWl1Tbm(aO%841t@_>=(lbiVhq]\7EaS^&R&)>sV'rdR/rFD97uP=VOr.?piL6D%/R<@Tk0Po>9?
+U![P=b5HY(?*;`E[;.p#d:Tc://C<iEj]quh(H0P^#JX0^#(KPli$tgK#-A[m^HE*AVrre%qhZZnG%;p
++:lNaq=Xf@6(h%F,QYF-BH%Bb:r-i+CbHfg`M>f`\>i.=(^]3N@9?'A/;4SqTP<W$%m_&LLr3V//9D=L
+c_8=@-pGF=#[*#3)dQ2cDlX#dAWWV8[1k]h,,^Un=S6#/?H_kSh1.2,0Lfu8&CS3NHn`UeL+*`*a!JH&
+-$RNd`;+$c+&)jTl)9,\2A&`ni`5^1:d5q7\)X#orH5=dY3&+EhTpY`Ra:/d?S)7n^KsW)j1V&^G-TqB
+Q0[PQZ?s'FcSiXOhU"_Q)$fm;puL%0R@/qqiqYK)<hdW+j7'l)E"a=P@H2oD0P)Vc94W"(9RmX#%`+r\
+\1iq$"qcU*Z67G^:T%.mA20/kPWK8>8]'J#lkibH",oXPJ\8&t5T#*oj)AErHjHWHA<?S231@LpmrutB
+qYtq?@#QDKMrB1;>UPIuXD@(kqL61$\LaUR/!tiO+0X<2&dJSn6/Sm@A2YG=LdY]L#P;%+(PKdO;5iPf
+4WBI&A.gm:Q:!$^`F%"QA@>bsQqV*j3Mb5C2k3WU;n:u_I6XB$BN.#<_G);?8=sgugZ@r#H+`!oR\O>n
+_Q5.98+ZQO_Hnf&`SuJP$sm3dMN!5HWL0+_2AF"5@b=ZfAd]mp@AOk633bl,f?#`T/NP+kWC3lM@%GNJ
+'g!2ja+EMWoNsiemoB/-m_Kf*(dj(r%".hZOWQ,p>NM#LI'X5WQ>sb5d6'U]L^2C;'`2bo?Z$#Tn]7e\
+3Yp&n>64TgA3XAdpZor$rctp7m<@U0VYkWo?Z*;.l-R%h\<\d;g6(7B9KJStQP0f&fNXi5MPCOS3`]=W
+aJn4heK/`GT?Mm3JRCBI-\[J3E1'g_&LNOSjH757N]..SL;:Gm/;Q+%j71e&;$:>9/.u=lU6uEF8fRni
+j=kk,Oq9JbJk(FV<=3=G,`VnJ1&*/E2NpK@'XWki-%F%u&t(iH=IGKca$Y#rXLe.6%136T)SUIpIQqJp
+$2k'b6_dJW'O!o)R8'SXl4SmF:6ehSeYtEPeRl?oY?'u^gBDJlri"N;(7S=,fkn3&mM?h-cKTJ`?1/T!
+eaE6]^0#=i3u/=1p3OE@\<NjA\m-fo7)BQjoM/C1#"pWO(b!*g"WE7a'<u@%KJJ7E7hEgrp`!>0"3^>0
+Kq+eK2H9g6'"h3.>)Q\PZ&?kS1O?80mrf9<m_g9_=QHs7,c^ZOQsVE)Hg.2II5K:]VSXYQgI]-7$2<J>
+<;^eh+0MI3p"795]:#kSMb3d9C-Nak2rhTEqfX`e:6lRPb.2gWQ*1t?J^i%<\Ceklb3\Q@<uMn^o$Y2s
+9i)s&W:QCm!+urb90qbBR%P9KP!Xk#&4E$N#SKW-dQ$#!7iOkUUg^JYLbk#\,@Ieoa:MAsM@-.f)&R#m
+-B>pHJ8o[m&2OuO-M"B7oNhlu9Yk7b\14.7L<sQgBUhaA-rX&Dp+8^s;bkk920,ZaP/pQ<*p^&9)"Lra
+fjCr'm@Md?[9IL6qd%4tEjS(!f6bL!om=D[Df=tH#6b%:iGKKJVC)t6_rG`=lt/EXJ\Pc:fmL^=rrRbf
++L#NA+qk<;_]c8JHpT%jM8^[DBY7e1)NDc^Z0;*SqYYf`Ulm_hU/*8&9-l@H>e4E!RD3*)Qd\EEJ";Zk
+j2$h]6;AVXMIZ-I=Fpl5&jceCGXU[s$6W#NA>.4(VEfp&khumq3$i>hKh_er\^Io(]@V[:Rf%@%@1_;^
+;H)\?<.)!pn!7t(o[#Z`RV1g4>nHmM,[YE\j71'aIQ:F>a%GUsr,j]#Nn-;^grtF-?Z+G)mF]R03gd++
+1@aYh=hG\GB3Rqaj("h</&UC)@W#R%N!go19gXOY,S$S[!M!24/dRET!7?%S(FtULADuH3QobP8`o,9)
+fGRHh&Ve*4TIbmTXB(-e+A"PA+=iTY'_#CsOprlP6,fQP4MXMo)9LhNBi$'t/VMI4+K?j<'MY,b.:_$"
+iaa;L8`VWm(k>U7P0F14H@6G,/@nlVa(j[IHT2caATsookl#rp@PKj,;D/fE`FEnDj@T@oON=5<8M$<+
+.$HllEli./=WNmLVGZTZdVgq3c)4E1A>XiAT[9WZ8hCsB8>O\5FNSG]T2;K9Wc^q9;K4e"egkgam+'Wo
+8m$nF63tY7+XN/c`1as`RQC\<83l2),TphMKTAR[Z8gPV;'1FkA8$g]S.miFin"OQ@d73Xh@%a6eV6VF
+4d`&^]-Ou`At%U.o:tQGI!ml6O1*1kp=r<Tg^4kXNE5psXIjBae+(r'IQH,B[p'aBl=.rhDg*\uki#^X
+)eu9T9g%HI,TBDK'00ZG@&Zi#,dCWCLF"3@j4"[>@!"#X9a*6@I$PU#&OM0`pdCK2#SKW-i],R.D7A8U
+_dHUYBlt;FLgqQ!1jgDoOMmq\Qn41Q"^=8\_9aU)4TuRV+HjhT&mZ_I!@AFU.*t`n*"&@Fd;U"X14rJZ
+n7n3_%Tssl.^XIaJ=@^jeDZ_IXB_l"(=!-%)2Q.<HG(B'fAlR;24@7;1PsoDHTIcp+7q$'&rT5SdO@#Q
+>r%68Im<2j)MLAU5HE*\'FNZ2]32>`C:)_9P07IDg+>4`?*`4&\(iSp/"P,SG.ZT_[;,ql\U;0LYW(7A
+\_QXB@KtjiJGa4,,n<4/@A"a+3!L()"5n08N"@e0!_7k+=W2,d.*plVZ8bV#:5[cJJWkdu4*<03DY<fW
+k/Jr8R7:i$0];b?*T'RJ"6m%HIC>;7[d%`'iDDeoC:DZS@et/K.*JVGmI97D4e-;3PC6p/D(8gC,l<F_
+PA@?uN7F?PJ>G(R;T5IN,b1&]&<LM/WRSR02&-6@!aoiM7LKq:+Yn$/,"`i-aQ%5R*,H&'A$Mh<YUkSd
+"V=."!*M^E,qG,]j>!#AMDPBu#=,"kll&P="Gro3d56A!NJYbEnMp;Y,9MpKjC.hjQpV^Ta[8tJ5]g?_
+%ufVU!J%=@2&HWHZO&2>CGH`c-3`ccqYYfk.Fd("8u#@a<N:1fX^V67Y1K`J$Or!6A?smip4rP@rE-MZ
+XnA0C]&dn=^TBGQc0G%N^>H-h$k<XMKYl]Ppl%ru(Q>`WY'CD07d6/Zjf5GM"(ec?/!Yf4;"6Ag(F'AS
+Ud:@rOuNZ1#Jf?@'Hh';K[1t&\iAId;4kdBFEjdFS/F1a,I[`uM!/-.h5h7T`K4h\ZHc6XH0ObH6,"8Y
+Vo*'mphhG9/`dZ-^o2W?<NgTR^$+<S]UOf1K5"<NC8dZ(jO8C5OD:sqN0StIHDEBud`&Tq+J+]X&C<nO
+_:ZIR23gRa&nlBq8.65h@8_pZ,#'*]8OJSe!0/uBOiG2X/053i)M/8?J8%,t,qG,]K[J^GPWTM<`o8^d
+TKFY:#R+\".;5qb1Drl!6^c%F1/gm^ZXnOCB0)TbVlL^5iEnKDWi3#14/S2>IQqOgg1<=?:oVq/[48R^
+Y?-5*/%+[@K#;'&fdsRI4egD2Ip4M5l[?Y1Ek0q3p<-Iqo6S+-0=U9H!s=.ki@qcX4sL_u`Sk[AWm3r9
+P/lYS3D@.j!;q;\?r*-,jWb'N%0cqI^ke.5"VHK>JiMC"8fWIUA,pmsO:a@7_T0P"Bc_4).*r$,Z9Vg;
+:C`gCJh(\K;/n53Y''iBfZ#n_R0SM"3<8S_+l5p]Hc`:QGdZ!r-H^bpf2+P4WV9=_4QU1P>RZ:L?%@cE
+/W\+5=ik]W1TJl7V!8YcO?8R9-F(tN_D*q``9&h"I(2`W(!*(hR04j3*e[+;Y_6[3!$dK>UiEUo$4DH:
+LkBZnoPQ0,OiBa3BS8br%[]one22G^+D]&hDRX-3m.YtD+0qkVY$3THbb`c[N7MW"SB`L'H0jgE.t>pE
+F@n,'O%?(pWH?:"3hK6Ie>dX`X]ho1XOaFpb3aMi@'J:bG"XEUP5_i7m;pH^!oIn*bj@>ZoX1H=+cqL(
+JKT''4UdImTP-_!(ebs&MSq3*I$>=''a!R)!-K2uJ-aWEd:0X'2I30#/7f,BTWB_&<^nFii7-XjS=E7t
+bE7[4Ej:_/7QMj8a@8-l#hJSb)VJMmRZ#ZG0kbuDWm7ZA$*@O#0IW&pFKtb2ME-cZ`f\Zq^bI\]70YMl
+KXsbc('pUcW=17R+,#KG^kjI[%j[/9`,W":fE\_bLEdB2,S14chG$J'6FQgS^cpXO\*NS]Ku;lS(q`m.
+'9C.D1"dPD:G%aR5Td2Mlj=%$K#/Z"W&-7:s+eN:0drPi.i+&_,;H.PE]Y>'a<WMi*0NrAPKG1,WEc`5
+/sjd/1F\hsrAK>H@<7:\l?bO`cR9Ik`7b)/6W+-K;3;!%,UX*'`,V^qN]%(SLEPT4r$#2d"H3JfWN`B@
+4;WY6@p#9MFr.(g,DB#HL9jL9f4hP&"[ZL)WXPu*ENPV52m\f_9M+3-Yrf5@a(>[SjLeA0TF3U0R95\-
+-rEEdZ2gJV4-@m%dJ<"K3&m7Z-DI`?aAEP9a^O2N*&:P<Ko0CPR6Z-3-4[lqTu]'N2?]3K5dD6b5T1%7
+75P^T%F7Il^E9h/9d5isVGl`%)KeZG;l`o6'h["_[ook8kn!Y+Nlbk==mZuo<Nb"l[p/8:)jS_5Fh:rJ
+(RrtCq0g"bn/*,\%gds->$opO"a:iBa&fP]*)$,-M7HNQO9VIVYZNE3KAiP$oL;OqJr&Gp5pUCY-4[lr
+&bnbu71'jQ@<4.k3,gF):IZKg#h1IqS;-8qd02@W,H+H"jYAZgX%='SV57?h\O%pK&gbL@34>DH'p@c)
+MFdS<73)ZT1N<QmB-!NO,=?He?t_"s$tU"gI$c!-&]7%X+C(j2$H>D/d!7<e$AO0=_iXYH4;\BXJgd]n
+c/eJF^E9uPL-HoIalTg2L]d>FrII6WE*,LL'aBCZ@Bd7`7NiG#`F;\XUg>nrN^b8@\GUM9,EYQ.13k.>
+9duB#jjL,][UUtY9kKT7SE=ZLS5/7rg'$u#5G?G;P^526M_KRnT5&\&k]/TsM8TPEpl(k0#*O`AP$mVq
+>6pKb5siC%/6sNU9P!Y_Uo5Ir(.AHpn@8+$)B[3KUa`g$M)c,ELJfT]mRP5/&Z9Y9.-a8hS4JGlF9$oB
+2%Pa[@G0;Q2`MUC7`*6Vc;PDoas&V:0Kr\d#0R-G_,Q(%.?FSl&b%?G57*GW+s?r.0Gk1OO!fRtU2p3]
+5A,&jjSFKoU!Mr0.Q%j"8u0ob'^AsfRo$*6WjNbY;R'9(f.2"/eUkDAYLoqb90J<aB!keoG3a"^flFRW
+mPdePg@KI#hCk4rmK3E?^L8fQkEF$MRDk3,6\-YA3(b8!8q[bD63'.P'F2G%R04^7+bbh"E633d*&&$n
+k!Flcc;PCG91%*aG[bbKN=NrOZ/E\_4W-aFZ-hXR3Kt!`Z=B;QBQ,S_UOrY?=B9$n(lAA=q(Op8,R-mE
+:n_-K&1`kE71p/^F>=F3!auZPKKt3q3NS:nj7^`2ZeB8^]61.4D7J?g='MNXkBX[GY8=hDpAoZX?gr:[
+-6E\R_W()&bZ6YGO3(n;R2iA*/HC77+0[.=%LWPp_P#8s9K![sLr:KVpoI(>'T9u+1!%:Z2]n($,]Y=b
+L/0(Z8Yn2a>e3ohQHWq3.BLs9*d>6Q$-DE[P"6,hK4E<-Pb^YZ('pUC\I9T]+Ts6&6I?c,>pT^a"OR73
+Ua7f2`<N'HXOpYl)bWO#EGT*&/e"m-.r`MZ0/]%!VNRmT`$R4&`$Q+1FM:BUQUr>ui?U0Y,7-oYd6Npa
+)h8%,^uB_V;$V<Wh@J5up)+?p_r=N1Ud?XHMoB0<\C>[X+-&l:dMX<j9d5fnAMSO1[TP8Kb[o6PK[+El
+S4tA0H/.P-5G(bbZoS@'Kghe7ku;D/-C[Z+<,*./I9*1FMS<F.Q;r%pFup2S6\,f!3]@n48jm)r@$2ih
+&jrMd=CUJ2/Wp3Ii`LTD9b3W5iZfmC7V4*+E<9'!9MLK[@a(Y\&X]:71;F4u!sq(\>:#/aUlg2gAg\,p
+K4.$<9W8e&7N>:'j6cX?O%8*5)'"6$,*PSDnu5<g;(e-Wjg,8`b%i`$bpO0=bjosASPU]@)>so#7&/,n
+1hp#7QVOF-.?uB2:8:dheZ1Q2h.!ouY1P8u.eStBA[0pj2.r,pk/Fg)/g\BnCdK6TMT#W_J?VX;+Uh+8
+!PtkG3&;;hL2sfFdT@A*M^(??cO_id']9'\!CUC-.L_-o!KaZd,8?!Q@F3qKSkg^UisRiqRQ14n^E9`f
+$hd(:O\+VsM);)4/!il*'%r5XAMooNk&Zrtl>\nX:M:Ea'`NkRU/C.(ROp.S9Vk[&'`+(UWDT\FlID?B
+DQd?J=0%V`'o'h<ZWQSf>=G^F4c_fJY1I_ikc26+Y6e_?8SX>'UlPVR!N9sX09"-:@<m6l.kD<$`?Gk<
+W'L`R#]Kg#iWcK9[,CAmA$u%,ID9-MfR-.3&rOXPnMn`r2&M=nUTt0dME`>IaX$Fk9U8a.Q:e![$%0m$
+1mlO"F(rkXG;l,=Vpicd$A1a>;5eS_/L$NRVUB2Nb(VmO<2nEJ<JmnjY?I)HlfB=9/FmU*.FEh`iWtd*
+3=nsJ0u96W0JAX/KlU;:FuC(m7076$?FsIZf'rH.7N3#"`T+4+$uSQWP02lAq)AKLqYYn1+E1FN*Yem6
+6=I+.F@IDeLW*_"BV\rl)3.02dCB*t5pML`A28EUU.m)&9'+L#KXNGTRLr(X`mVAGcqt,akV4Oa`Z-Xp
+Ju%A`/9Wi_&?3r9KYD"rWE!OfC8G7E=ftdUe[k^&_.0`QCc6VdU<RD\>4'nAKsp#[\Qs*>H_'<dHG!SE
+ml-`_b[2d-Q"!cdA3-5C##7U;O]6oA,7Qo50k:8BI"B%>O4Z!)%1%[)Ts0o31*I-``?K;8P[Z-\MoMNs
+aS]pC*g&u=EbR)!8LfqHjYFr*\mm=[bU/N&XQ".ZRnkCfg"cFV5bZNfZmmpGO%Q4s.2;&Q5+>BJ_4)0L
+JY8n$<sTXW@/=!h)E&;H71o#KL,/pm#!p^(SBUnZ_5^RONT-p_]ABa#bPgl3I_fDGG\euW$&ZX[nMnaA
+4!Ta,j>*'F2IZZ=3gJLCnDas/+\J9B7\Yu8S3."<#%2I2j>J4p#Tf$cU\4E\O@Z0&3Ad%!,aCs_Eg^IP
+>qqYhjqC=Neo<X>9rF2Cm-]9fTMXhD=qqs48#9*tP_sT9T1u7`l;_#I?E%&-<bmu3okM<KYh/5B>:#l]
+BsV!F(;!b=i2&pZh$Xe3&M>8#SO5l`Qq3l6M2]7rEPP*r'a_CTQKrEPfoa<cZ5Gd5="s](^L*'N,Rt1f
+K>O;.a@nK.%Z&%IE;6M,/JO,_UG9j.H8cq+a<YdT/;?qGPY%],a]uDW0UBpoo-pchD_mp.Vc/H-qKkK!
+:nO\>3Y@7F/@lT?VE/6US32PNj^=KEHk%A16"Fu6,X`^_Y,l^_r=7"aZeDM3b>#FsDReISG5JDam<#ts
+Y;aYDqY,KRi%TC,/dDo?`'p:/GJYd=IW;J[cBXKBS=b<<'SkW*fX;JE&:rnNW%Jnk(Q(Rn8>GkQrJO,h
+nX/BT4W9DPA23loQ:WHdb%/r"7'9fIQqJc(q4,H=2k*QSZan$FFZlBnkYpam#)bjD;J?iV4Z8R#VGlb[
+)Pod&;leGa'tVq=ZX9k;/(PWVDTmDdQ6-Ln$`.M`C+0:cj=ki\@ga(Yi;u!o(do6ma5\l4A?Jp\5$q>`
+*]Cuu`aggW*2ZL`P0?05YK,u:#m5dr+Rl<d1(t+N_kJjkS3AG9Ma\i[W6B9:*f\5#Z3_M.9-KM@,naoc
+Z<&ZD9I7"_I*-4]S':%OC"2-d5+F,O.b(GGm^rt?(;cBcUeJ<hL_6N"_2t#q-4[kf6's'\2[>((iE#o?
+Ilt'jXY\^;U=j:igb&7NFjf;m\_XGJMr!7eHG<f?pacmg!J\GLn@4E^an5CW+OEX!$I"V,?AIGKouNuF
+XV3E%iZuY$2JjoHMBh&!(hsG9!JR7ei]]@#IQq>j#lKEK,EkZp&m7o"<@sM0j`;;]b$d)q9kP,2eD>C0
+SknP!)=7ob7%mIl'REatR7X:(l.$]+:7kOc<N;=1eRl?oY?'u^gBEVVA['kSQA[VtSC+eeN[9Itpd4^^
+$/R2+;jCf>Ag]u]6h#'_>RD5PJFY\P(.9$ka<OO7'S\o"4Pl/)lgaiRJjA7uLcd-r%"uN,E9N6I-P)*Q
+U<uNEC,6ig8#()!m"._OP/q2)8OT"G/="DT;[I9[?S\(p-M'7Ag3#BGc_n,VjU-K)T[>1[C/#J18>]:a
+ZBT)]'ZX,gT'O28h0pl"Y6@[TR%^CP'!%,1j:RJ)?R1:2,Cj26AdTcB5p?m0@:+D\;t'AF%Jp<Z_;VW.
+N$^%cMo=X1q!=#"-]lJ]ZFPbnnbW385p1,K6lm'IL-f=Q\9(1`'8OP9;.ub32&VED,LO%!FuJ$:-rVNq
+_Yd+W'0Xt,\#T($lrsg$$@stg*$@]i!sVY:7%-1AOTo4!(sEIS)2Ce:U-mJpooR^7'mUO+X]hf,lda_n
+ElDCjfPHk#25\Q4Zs,+_gP*B'DRs(j[l_"[nU%n*Dcc8drrmtj?ng4q4A#8CIA)b$#(j(jpKe&2$isl>
+m_9LM=/*0Ei)8B3$(&ag$<6.+2AF"s63oQ22?f3I@(=Q':*L,n,d5h[p.m-%8u8i8I'-s3R7nrKBrp<.
+3h+FX1WfRkK0>pT.$Q25,*,?k;^jQW>rn`WWRL.?.^`0X>--=+($aV(]3qnrXL9'2P0mmKgF[U7<PmL1
+\(miqX1DRF?@4C.:PJkHr[YfN7;he>V802H0iJ-!l0($H/;4H75^=CN2[0iu@(7=%N]7<*7mfb)4o5)*
+`+!^7Ug>VjMT4ZgaOGB!+-B'hOr5g29du<!jRUu'\lg\S9P0Ip[*ESIS5/6Gg!'G@5bCkdPWCZ/O[Z(n
+ku?AJ5*o-E<2pZo[8sP3X]=\0Rc?TIW)'/EbOKB,Hm3ql"a7LpZ0]1>]N7Ft.`>*+:5IE@!9*F_(+taO
+"HgJRN&?5R8>AF)"DSo,'Zod@;m*Y2I_Qu/-mT91#_U!ed)\m=(Cl8>,&m=Y8hCa8`hP90`-O?aNlWJd
+.4g3L,a:ls1<Ee4<A9`_Ab.@PdVgq3c)4Ksh"l@_Sku?W3Xl^_7\nFGFGaVfVbg6g;3$pWjm]nm^)-po
+fWMnoHS:(k2;kIZZ4o-[6:H2?4G>QpN'sn$0QmmM%7+MjSau`*!fmOOdc##DlGV.kFKB%8+-+G&Ed8(j
+9.QB[5@9K('G:WSKL+QnBOiG/$\q,Z&NG/=,o2A,j&)3)@QbZka(,fC'UD*6P"I"JR:NI+.[Wk@1AR0c
+BfDI*B%*`t(&%KPXXHg7.RDk%)SR#=f>@Si9rHI?'aM>J<qK^USP)gI=\L,G,=DgtBOK1`#a>S0dP0/d
+6lCUD[juU.$pY^9$Y=@*.fDHE:N07V-3jp2_d[U&]KS7hNlGT"=WF;+/X+An+-5%?$4-fd_BA?H1bo^R
+Ku9W>#b4(/&rT1&nYjZP0cl=pj0At2MG#+VaX%R69X7_PPtW;rQc%p[2G^3uCBVJ1lF[co(SUT@!*;R`
+;/#TG])5V&?OGY*_,I=J-u>mdbLDo5/9D=?b/#j<#TcJT!m$!U9rs:2"l"T=;4nn`2$jqP_fQ4cqVT'3
+Ab+Ud'*j9.@PG<^4t@S2a5ZYLm$:!dQHJ>4&(g.<"U'Cm@1[Z_)Arj9_VrlZKMEU(M++/$Ggp=c(lq/H
+n_"&*74"&;jH>?VVHGF98u<6SN4rj\RRA5nQd]u"b@RuFM^;Q;:6nnUbRS3orU.<,^),d1_Z3b:WmrTL
+B=e"Ap0S0`X3k.jF=MA``=8(tR=LM5Vb]Ub_/q/4,QnF+Y\=qh$R-"qGK^Nj"@F%.#ie`HoO8[U$Np]U
+OeGaQ;REbA#;cb^qgLb;d!+h'(C5c4U!Ul.8g>%+7A=dHXC=+,NlGT!aTQoW,a$3E;Mcs%:F_[R-1\U*
+\n*R`c).h(V!;k[SBiSSl4!BA5b_)R[#.!rND-.sBlrV:`T$G_-';qAH$tFA/[lK@\$GX"pKe&2$fMKP
+J1J%^=9=st`o1rbYJiG/9@\>;Gcl`1[BQ4=XqNYA@Q!.95+k&ncfQ@LOI-S-O+F*O!8&&T)8P1+@Akdj
+$A?:;_a$U4%RCs7#GVjOi*[K>$,_On_9MQGI(s$LfefF!.@*Tfd]%o.@kX6EAs7M1k&!/L:?U*["S.72
+U!RJ;H8R%-9;GK8<8*$iV,"$iC:-+1B!GR@f5"COjaP0WZ</[/4$AnWCUIA`2Z%&_5+bTS'BQ.'gar2)
+hUbi:i+;Dj%cHid9K"71Mo4R]bFn13BH2"B"&1WM!&DA^"dQ#?U/^+a4r8e4@V@<o5m7lji.<r>0,]^<
+UTqo8e.+tf!JnWY.26@t-4U$mE=chk14Ht[ZUqOTD`XE7-PPb"rd-o(d&=;i4VElHUsgc7l;RA@;Q81r
+[;*BaZWaK_/%+[@K#;'&fdsRI4egD?[G*:Al[?Y1Ek1!Y[qi\:Wlr)^0<G'J7g"?Wi>U?\`Z_mMDrVhi
+k3bLQ@5&jc"f6fS!*rSMbE+LEXXO='5iAlV,U*a*Ld@:T,3#"3>>ZUQ.?kuQ*df=XNWb!>R"/p(%ZCQ7
+Ti@1-+qDPdJV\P].h.F@+fXQ!HU"3#BTri\rc/ndL-hctBsl&[ER`b9<o%&b=_cOA<S!.XT4)>6flgRU
+.a_t<>4%X1FhZgSA6e#Q\)[2NG^eMQQ^d[9s*_[jn5l7e*ta@K@e#i@G!@.4a^jt1>dduo!!#9WE(DMu
+%g[j*TlA(h3Zeoh`1h6BXBI7oN5hW4aR"4;+HX[?E_.gN:FMILSC5IDnbXr+9BJ$%SD%O6Ra,O:()6Up
+5bQK&F@n,'O%?(pWH?:"3hK6Ie>dX`X]ho1XOaFpb3aMi@'J:bG"N,PcGd/r/So3>'nL>6gob_qMYcd_
+?sVC9S'CC$GeW+?GX_k&LP<9InFm[[3VN;tcE_N8XR@g,J3RDEa:o6l"b]2#:hXAd)[hEh@M(SI<[AN=
+7H774jC17kO2kcD3>@cH-^%(Id[=XK>q247Ahs1HenI(2c=YP)`9r%:TMHt7qAfcs8#&sq[(8[]Pte2U
+l;[&F7]TIg<biG]]lpeiY#jsj)^U*\A$aj*(;!STdr2["/_:r<cL#Yb?#MZKeb8fg^#3h]/-ZUoKu@CS
+=F=F&)3;gKEOe2d;^I^Q5Td2Mlj=%$K#/Z"W&-7C%>D]o0aO:5.h[b/,4VVUE\SVpa5aH3*/[B4PK>*`
+BhYg6/sT*VZPe/5CG_O)k;-i%icdSXcmP&,r=4HJUX?%t>$W>?8uC)eodY)^UK+;DX#5dj?FsCE="Etp
+%?eP>Z.\KPMd<@;Bt)hL(@-t.kB=CB0"7=`lMGtDhXEJj('=er_W!8:X?J9NN5sta38C)m.?_j9+:lNY
+p&tSM_-mn"<#QV\L;Mos(kbX+'o>5L+9~>
+grestore
+grestore
+gsave
+0 0 0 setrgbcolor
+219 3225 1893 1 rectfill
+610 1425 moveto
+/Times-Bold-iso1252 findfont 83 -83 matrix scale makefont setfont
+<4F7267616E69736174696F6E206465206C6120706C6174652D666F726D6520>
+show
+1063 1521 moveto
+<50404C20>
+show
+981 1618 moveto
+<4345412D454446>
+show
+showpage
+grestore grestore
+%%PageTrailer
+
+%%Page: 1 1
+%%PageBoundingBox: 18 18 594 774
+%%BeginSetup
+%
+%%BeginFeature: *PageSize Letter
+<</PageSize [612 792] /ImagingBBox null>> setpagedevice
+%%EndFeature
+%%EndSetup
+%%BeginPageSetup
+%
+gsave
+[0.24 0 0 -0.24 18 774] concat
+gsave
+%%EndPageSetup
+/Times-BoldItalic-iso1252 /Times-BoldItalic ISO1252Encoding psp_definefont
+/Helvetica-BoldOblique-iso1252 /Helvetica-BoldOblique ISO1252Encoding psp_definefont
+/Helvetica-iso1252 /Helvetica ISO1252Encoding psp_definefont
+/Times-Roman-iso1252 /Times-Roman ISO1252Encoding psp_definefont
+220 273 moveto
+0 0 0 setrgbcolor
+/Times-BoldItalic-iso1252 findfont 58 -58 matrix scale makefont setfont
+<486973746F7269717565>
+show
+334 431 moveto
+/Helvetica-BoldOblique-iso1252 findfont 42 -42 matrix scale makefont setfont
+<44617465>
+show
+583 431 moveto
+<56657273696F6E>
+show
+1207 431 moveto
+<4465736372697074696F6E>
+show
+1953 431 moveto
+<417574686F72>
+show
+242 486 moveto
+/Helvetica-iso1252 findfont 42 -42 matrix scale makefont setfont
+<32352066E976726965722032303033>
+show
+633 481 moveto
+<302E31>
+show
+804 485 moveto
+/Helvetica-iso1252 findfont 46 -46 matrix scale makefont setfont
+<4F7267616E69736174696F6E2064657320736F7572636573>
+show
+1964 481 moveto
+/Helvetica-iso1252 findfont 42 -42 matrix scale makefont setfont
+<4A2E20526F79>
+show
+254 539 moveto
+<3133206D6172732032303033>
+show
+633 534 moveto
+<302E32>
+show
+804 538 moveto
+/Helvetica-iso1252 findfont 46 -46 matrix scale makefont setfont
+<4F7267616E69736174696F6E206465206C27656E7669726F6E6E656D656E742064652064E97665
+6C6F7070656D656E74>
+show
+1964 534 moveto
+/Helvetica-iso1252 findfont 42 -42 matrix scale makefont setfont
+<4A2E20526F79>
+show
+254 592 moveto
+<3237206D6172732032303033>
+show
+633 587 moveto
+<302E33>
+show
+804 591 moveto
+/Helvetica-iso1252 findfont 46 -46 matrix scale makefont setfont
+<4F7267616E69736174696F6E206465206C27656E7669726F6E6E656D656E742064652064E97665
+6C6F7070656D656E74>
+show
+1964 587 moveto
+/Helvetica-iso1252 findfont 42 -42 matrix scale makefont setfont
+<4A2E20526F79>
+show
+262 645 moveto
+<313620617672696C2032303033>
+show
+633 640 moveto
+<302E34>
+show
+804 644 moveto
+/Helvetica-iso1252 findfont 46 -46 matrix scale makefont setfont
+<4F7267616E69736174696F6E206465206C27656E7669726F6E6E656D656E742064652064E97665
+6C6F7070656D656E74>
+show
+1964 640 moveto
+/Helvetica-iso1252 findfont 42 -42 matrix scale makefont setfont
+<4A2E20526F79>
+show
+1188 2982 moveto
+/Times-Roman-iso1252 findfont 50 -50 matrix scale makefont setfont
+<32>
+show
+221 441 1956 1 rectfill
+543 392 1 263 rectfill
+781 392 1 263 rectfill
+1869 392 1 263 rectfill
+221 494 1956 1 rectfill
+221 547 1956 1 rectfill
+221 600 1956 1 rectfill
+221 2845 1959 1 rectfill
+221 2933 1959 1 rectfill
+221 392 1 263 rectfill
+221 392 1956 1 rectfill
+2176 392 1 263 rectfill
+221 654 1956 1 rectfill
+showpage
+grestore grestore
+%%PageTrailer
+
+%%Page: 2 2
+%%PageBoundingBox: 18 18 594 774
+%%BeginSetup
+%
+%%EndSetup
+%%BeginPageSetup
+%
+gsave
+[0.24 0 0 -0.24 18 774] concat
+gsave
+%%EndPageSetup
+%!PS-AdobeFont-1.0-2.0
+%%Creator: SunTypeTools-TT 1.0 gelf
+%%Title: OpenSymbolHSet1
+%%CreationDate:
+%%Pages: 0
+%%EndComments
+%%BeginResource: font OpenSymbolHSet1
+% Original font name: OpenSymbol
+30 dict begin
+/PaintType 0 def
+/FontType 3 def
+/StrokeWidth 0 def
+/FontName /OpenSymbolHSet1 def
+/XUID [103 0 0 16#8D049593 1 16#37A9EF96 16#52678846] def
+/FontMatrix [.001 0 0 .001 0 0] def
+/FontBBox [-179 -313 1083 917] def
+/Encoding 256 array def
+ 0 1 255 {Encoding exch /.notdef put} for
+ Encoding 149 /glyph0 put
+/CharProcs 2 dict def
+ CharProcs begin
+ /.notdef {} def
+ /glyph0 {
+ 356 0 36 223 297 483 setcachedevice
+ 169 223 moveto
+ 134 223 103 236 76 261 curveto
+ 50 286 36 317 36 353 curveto
+ 36 389 49 420 76 445 curveto
+ 102 470 133 483 169 483 curveto
+ 204 483 235 471 260 445 curveto
+ 285 420 297 389 297 353 curveto
+ 297 318 285 287 260 261 curveto
+ 236 236 206 223 169 223 curveto
+ closepath
+ fill
+ } bind def
+ end
+/BuildGlyph {
+ exch /CharProcs get exch
+ 2 copy known not
+ {pop /.notdef} if
+ get exec
+} bind def
+/BuildChar {
+ 1 index /Encoding get exch get
+ 1 index /BuildGlyph get exec
+} bind def
+currentdict end
+/OpenSymbolHSet1 exch definefont pop
+%%EndResource
+/Helvetica-BoldOblique-iso1252 /Helvetica-BoldOblique ISO1252Encoding psp_definefont
+/Times-Roman-iso1252 /Times-Roman ISO1252Encoding psp_definefont
+/Times-Italic-iso1252 /Times-Italic ISO1252Encoding psp_definefont
+220 318 moveto
+0 0 0 setrgbcolor
+/OpenSymbolHSet1 findfont 38 -38 matrix scale makefont setfont
+<95>
+show
+279 318 moveto
+/Helvetica-BoldOblique-iso1252 findfont 50 -50 matrix scale makefont setfont
+<496E74726F64756374696F6E20>
+show
+279 428 moveto
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<4C276F626A656374696620646520636520646F63756D656E74206573742064652064E966696E69
+72206C276F7267616E69736174696F6E206574206C612067657374696F6E20646520636F6E666967
+75726174696F6E206465206C6120706C6174652D666F726D652050414C204345412D>
+show
+279 475 moveto
+<4544462E>
+show
+381 475 moveto
+<43656C6C652D6369>
+show
+526 475 moveto
+<7365>
+show
+574 475 moveto
+<62617365>
+show
+661 475 moveto
+<657373656E7469656C6C656D656E74>
+show
+931 475 moveto
+<737572>
+show
+995 475 moveto
+<6365>
+show
+1045 475 moveto
+<717569>
+show
+1111 475 moveto
+<61>
+show
+1142 475 moveto
+<E974E9>
+show
+1204 475 moveto
+<64E966696E69>
+show
+1314 475 moveto
+<706F7572>
+show
+1404 475 moveto
+<6C61>
+show
+1446 475 moveto
+<706C6174652D666F726D65>
+show
+1654 475 moveto
+/Times-Italic-iso1252 findfont 42 -42 matrix scale makefont setfont
+<53616C6F6D65>
+show
+1789 475 moveto
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<5B315D2C>
+show
+1861 475 moveto
+<6D616973>
+show
+1953 475 moveto
+<646F6974>
+show
+2031 475 moveto
+<732761646170746572>
+show
+279 522 moveto
+<617578206E6F7576656C6C65732065786967656E636573206170706F7274E9657320706172206C
+652066757475722064E976656C6F7070656D656E74206465206C6120706C6174652D666F726D6520>
+show
+1630 522 moveto
+/Times-Italic-iso1252 findfont 42 -42 matrix scale makefont setfont
+<53616C6F6D6532>
+show
+1774 522 moveto
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<2E20>
+show
+279 616 moveto
+<456E>
+show
+348 616 moveto
+<65666665742C>
+show
+458 616 moveto
+<7369>
+show
+508 616 moveto
+<6C276F7267616E69736174696F6E>
+show
+759 616 moveto
+<6465>
+show
+821 616 moveto
+<6C61>
+show
+873 616 moveto
+<706C6174652D666F726D65>
+show
+1092 616 moveto
+/Times-Italic-iso1252 findfont 42 -42 matrix scale makefont setfont
+<53616C6F6D65>
+show
+1237 616 moveto
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<6175746F726973616974>
+show
+1416 616 moveto
+<6C61>
+show
+1469 616 moveto
+<706F73736962696C6974E9>
+show
+1664 616 moveto
+<6465>
+show
+1726 616 moveto
+<67E9726572>
+show
+1835 616 moveto
+<6465>
+show
+1897 616 moveto
+<6D616E69E87265>
+show
+2055 616 moveto
+<676C6F62616C65>
+show
+279 663 moveto
+<6C27656E73656D626C65>
+show
+479 663 moveto
+<646573>
+show
+556 663 moveto
+<736F75726365732C>
+show
+715 663 moveto
+<696C>
+show
+760 663 moveto
+<6E27656E>
+show
+850 663 moveto
+<73657261>
+show
+940 663 moveto
+<706173>
+show
+1017 663 moveto
+<6465>
+show
+1080 663 moveto
+<6DEA6D65>
+show
+1204 663 moveto
+<64616E73>
+show
+1303 663 moveto
+<6C65>
+show
+1355 663 moveto
+<6361647265>
+show
+1469 663 moveto
+<6465>
+show
+1530 663 moveto
+/Times-Italic-iso1252 findfont 42 -42 matrix scale makefont setfont
+<53616C6F6D6532>
+show
+1696 663 moveto
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<64616E73>
+show
+1794 663 moveto
+<6C657175656C>
+show
+1920 663 moveto
+<3231>
+show
+1983 663 moveto
+<7061727469636970616E7473>
+show
+279 710 moveto
+<636F6C6C61626F7265726F6E74>
+show
+521 710 moveto
+<E0>
+show
+558 710 moveto
+<736F6E>
+show
+635 710 moveto
+<64E976656C6F7070656D656E742E>
+show
+921 710 moveto
+<496C>
+show
+965 710 moveto
+<657374>
+show
+1030 710 moveto
+<636C616972>
+show
+1123 710 moveto
+<717565>
+show
+1201 710 moveto
+<63686163756E>
+show
+1339 710 moveto
+<6465>
+show
+1397 710 moveto
+<636573>
+show
+1469 710 moveto
+<636F6C6C61626F72617465757273>
+show
+1725 710 moveto
+<7061727469636970657261>
+show
+1923 710 moveto
+<756E697175656D656E74>
+show
+2140 710 moveto
+<6175>
+show
+279 757 moveto
+<64E976656C6F7070656D656E74>
+show
+552 757 moveto
+<6427756E65>
+show
+656 757 moveto
+<706172746965>
+show
+768 757 moveto
+<726573747265696E7465>
+show
+941 757 moveto
+<6475>
+show
+999 757 moveto
+<70726F6A6574>
+show
+1113 757 moveto
+<656E>
+show
+1169 757 moveto
+<666F6E6374696F6E>
+show
+1325 757 moveto
+<6465>
+show
+1381 757 moveto
+<736573>
+show
+1448 757 moveto
+<636F6D70E974656E636573>
+show
+1681 757 moveto
+<6574>
+show
+1728 757 moveto
+<6465>
+show
+1783 757 moveto
+<736573>
+show
+1851 757 moveto
+<70F46C6573>
+show
+1956 757 moveto
+<6427696E74E972EA742E>
+show
+2118 757 moveto
+<4C6573>
+show
+279 804 moveto
+<617574726573206D6F64756C6573207365726F6E7420767520756E697175656D656E7420636F6D
+6D6520646573207072E92D72657175697320E0206C6575722064E976656C6F7070656D656E742E20>
+show
+279 899 moveto
+<4365747465>
+show
+379 899 moveto
+<616E616C797365>
+show
+516 899 moveto
+<6E6F7573>
+show
+607 899 moveto
+<61>
+show
+637 899 moveto
+<646F6E63>
+show
+730 899 moveto
+<636F6E64756974>
+show
+868 899 moveto
+<E0>
+show
+899 899 moveto
+<766F756C6F6972>
+show
+1031 899 moveto
+<6F7267616E69736572>
+show
+1200 899 moveto
+<6C6573>
+show
+1258 899 moveto
+<736F7572636573>
+show
+1395 899 moveto
+<6465>
+show
+1446 899 moveto
+<6C61>
+show
+1488 899 moveto
+<706C6174652D666F726D65>
+show
+1696 899 moveto
+<50414C>
+show
+1786 899 moveto
+<736F7573>
+show
+1873 899 moveto
+<666F726D65>
+show
+1984 899 moveto
+<6465>
+show
+2036 899 moveto
+<6D6F64756C6573>
+show
+279 946 moveto
+<67E972E973>
+show
+381 946 moveto
+<73E9706172E96D656E742E>
+show
+596 946 moveto
+<4C61>
+show
+654 946 moveto
+<67657374696F6E>
+show
+789 946 moveto
+<6465>
+show
+842 946 moveto
+<636F6E66696775726174696F6E>
+show
+1081 946 moveto
+<73657261>
+show
+1163 946 moveto
+<6661697465>
+show
+1250 946 moveto
+<706172>
+show
+1318 946 moveto
+<435653>
+show
+1412 946 moveto
+<636F6D6D65>
+show
+1549 946 moveto
+<7072E963E964656D6D656E742C>
+show
+1820 946 moveto
+<6D616973>
+show
+1913 946 moveto
+<6E6F7573>
+show
+2006 946 moveto
+<70726F706F736F6E73>
+show
+279 993 moveto
+<6465>
+show
+330 993 moveto
+<64E966696E6972>
+show
+453 993 moveto
+<756E65>
+show
+524 993 moveto
+<62617365>
+show
+610 993 moveto
+<435653>
+show
+703 993 moveto
+<706172>
+show
+768 993 moveto
+<6D6F64756C65>
+show
+905 993 moveto
+<3A>
+show
+927 993 moveto
+<756E65>
+show
+1000 993 moveto
+<706F7572>
+show
+1088 993 moveto
+<6C65>
+show
+1129 993 moveto
+<6E6F796175>
+show
+1243 993 moveto
+/Times-Italic-iso1252 findfont 42 -42 matrix scale makefont setfont
+<53616C6F6D65>
+show
+1366 993 moveto
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<2C>
+show
+1387 993 moveto
+<49415050>
+show
+1489 993 moveto
+<6574>
+show
+1530 993 moveto
+<6C27E9747564652C>
+show
+1662 993 moveto
+<6574>
+show
+1704 993 moveto
+<656E7375697465>
+show
+1833 993 moveto
+<756E65>
+show
+1906 993 moveto
+<706F7572>
+show
+1994 993 moveto
+<63686163756E>
+show
+2123 993 moveto
+<646573>
+show
+279 1040 moveto
+<617574726573206D6F64756C65732064652062617365203A204D45442C20534D4553482C204745
+4F4D2C20564953552C2053555045525620657420444154412E20>
+show
+1188 2982 moveto
+/Times-Roman-iso1252 findfont 50 -50 matrix scale makefont setfont
+<33>
+show
+221 2845 1959 1 rectfill
+221 2933 1959 1 rectfill
+showpage
+grestore grestore
+%%PageTrailer
+
+%%Page: 3 3
+%%PageBoundingBox: 18 18 594 774
+%%BeginSetup
+%
+%%EndSetup
+%%BeginPageSetup
+%
+gsave
+[0.24 0 0 -0.24 18 774] concat
+gsave
+%%EndPageSetup
+%!PS-AdobeFont-1.0-2.0
+%%Creator: SunTypeTools-TT 1.0 gelf
+%%Title: OpenSymbolHSet1
+%%CreationDate:
+%%Pages: 0
+%%EndComments
+%%BeginResource: font OpenSymbolHSet1
+% Original font name: OpenSymbol
+30 dict begin
+/PaintType 0 def
+/FontType 3 def
+/StrokeWidth 0 def
+/FontName /OpenSymbolHSet1 def
+/XUID [103 0 0 16#8D049593 2 16#BDD032F3 16#E6A758A8] def
+/FontMatrix [.001 0 0 .001 0 0] def
+/FontBBox [-179 -313 1083 917] def
+/Encoding 256 array def
+ 0 1 255 {Encoding exch /.notdef put} for
+ Encoding 150 /glyph0 put
+ Encoding 149 /glyph1 put
+/CharProcs 3 dict def
+ CharProcs begin
+ /.notdef {} def
+ /glyph0 {
+ 556 0 -2 224 554 296 setcachedevice
+ -2 224 moveto
+ 554 224 lineto
+ 554 296 lineto
+ -2 296 lineto
+ -2 224 lineto
+ closepath
+ fill
+ } bind def
+ /glyph1 {
+ 356 0 36 223 297 483 setcachedevice
+ 169 223 moveto
+ 134 223 103 236 76 261 curveto
+ 50 286 36 317 36 353 curveto
+ 36 389 49 420 76 445 curveto
+ 102 470 133 483 169 483 curveto
+ 204 483 235 471 260 445 curveto
+ 285 420 297 389 297 353 curveto
+ 297 318 285 287 260 261 curveto
+ 236 236 206 223 169 223 curveto
+ closepath
+ fill
+ } bind def
+ end
+/BuildGlyph {
+ exch /CharProcs get exch
+ 2 copy known not
+ {pop /.notdef} if
+ get exec
+} bind def
+/BuildChar {
+ 1 index /Encoding get exch get
+ 1 index /BuildGlyph get exec
+} bind def
+currentdict end
+/OpenSymbolHSet1 exch definefont pop
+%%EndResource
+/Helvetica-BoldOblique-iso1252 /Helvetica-BoldOblique ISO1252Encoding psp_definefont
+/Times-Roman-iso1252 /Times-Roman ISO1252Encoding psp_definefont
+/Times-Italic-iso1252 /Times-Italic ISO1252Encoding psp_definefont
+/Times-Bold-iso1252 /Times-Bold ISO1252Encoding psp_definefont
+220 318 moveto
+0 0 0 setrgbcolor
+/OpenSymbolHSet1 findfont 38 -38 matrix scale makefont setfont
+<95>
+show
+279 318 moveto
+/Helvetica-BoldOblique-iso1252 findfont 50 -50 matrix scale makefont setfont
+<4F7267616E69736174696F6E20656E206D6F64756C65732064697374696E637473>
+show
+220 429 moveto
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<4C65732064696666E972656E7473206D6F64756C6573206465206C6120706C6174652D666F726D
+652050414C20736F6E74206C65732073756976616E7473203A>
+show
+220 523 moveto
+<20>
+show
+515 523 moveto
+<4E6F7961752B45747564652B49415050>
+show
+1400 523 moveto
+<4B45524E454C>
+show
+515 570 moveto
+<47E96F6DE974726965>
+show
+1400 570 moveto
+<47454F4D>
+show
+368 617 moveto
+<20>
+show
+515 617 moveto
+<466F726D6174206427E96368616E676520646520646F6E6EE96573>
+show
+1400 617 moveto
+<4D4544>
+show
+515 664 moveto
+<4D61696C6C616765>
+show
+1400 664 moveto
+<534D455348>
+show
+368 711 moveto
+<2020>
+show
+515 711 moveto
+<506F73742D7472616974656D656E74>
+show
+1400 711 moveto
+<56495355>
+show
+515 758 moveto
+<5375706572766973696F6E>
+show
+1400 758 moveto
+<535550455256>
+show
+515 852 moveto
+<53414C4F4D45>
+show
+1400 852 moveto
+<53414C4F4D45>
+show
+220 946 moveto
+<4C65>
+show
+276 946 moveto
+<6D6F64756C65>
+show
+415 946 moveto
+<53414C4F4D45>
+show
+600 946 moveto
+<657374>
+show
+659 946 moveto
+<756E>
+show
+714 946 moveto
+<6D6F64756C65>
+show
+851 946 moveto
+<676C6F62616C>
+show
+969 946 moveto
+<6E65>
+show
+1021 946 moveto
+<636F6E74656E616E74>
+show
+1197 946 moveto
+<706173>
+show
+1265 946 moveto
+<6465>
+show
+1317 946 moveto
+<636F6465>
+show
+1409 946 moveto
+<736F75726365>
+show
+1531 946 moveto
+<E0>
+show
+1561 946 moveto
+<70726F7072656D656E74>
+show
+1767 946 moveto
+<7061726C65722C>
+show
+1888 946 moveto
+<6D616973>
+show
+1980 946 moveto
+<756E697175656D656E74>
+show
+220 994 moveto
+<6C6573>
+show
+279 994 moveto
+<6669636869657273>
+show
+416 994 moveto
+<6465>
+show
+467 994 moveto
+<636F6E66696775726174696F6E>
+show
+705 994 moveto
+<73657276616E74>
+show
+839 994 moveto
+<E0>
+show
+869 994 moveto
+<6C27696E7374616C6C6174696F6E>
+show
+1086 994 moveto
+<646573>
+show
+1154 994 moveto
+<6D6F64756C6573>
+show
+1309 994 moveto
+<6465>
+show
+1360 994 moveto
+<626173652E>
+show
+1457 994 moveto
+<436573>
+show
+1531 994 moveto
+<6669636869657273>
+show
+1669 994 moveto
+<736F6E74>
+show
+1751 994 moveto
+<726567726F7570E973>
+show
+1928 994 moveto
+<6963692C>
+show
+1992 994 moveto
+<636172>
+show
+2055 994 moveto
+<696C73>
+show
+2107 994 moveto
+<736F6E74>
+show
+220 1041 moveto
+<636F6D6D756E73>
+show
+401 1041 moveto
+<E0>
+show
+439 1041 moveto
+<6C27656E73656D626C65>
+show
+636 1041 moveto
+<646573>
+show
+710 1041 moveto
+<6D6F64756C65732E>
+show
+882 1041 moveto
+<43656C61>
+show
+977 1041 moveto
+<7065726D6574>
+show
+1112 1041 moveto
+<61696E7369>
+show
+1210 1041 moveto
+<6427E97669746572>
+show
+1353 1041 moveto
+<6C61>
+show
+1403 1041 moveto
+<6475706C69636174696F6E>
+show
+1610 1041 moveto
+<646573>
+show
+1685 1041 moveto
+<73637269707473>
+show
+1813 1041 moveto
+<6465>
+show
+1871 1041 moveto
+<636F6E66696775726174696F6E2E>
+show
+2126 1041 moveto
+<4F6E>
+show
+220 1088 moveto
+<7072E9766F6974>
+show
+358 1088 moveto
+<E967616C656D656E74>
+show
+549 1088 moveto
+<6465>
+show
+608 1088 moveto
+<636F6E736572766572>
+show
+790 1088 moveto
+<6C61>
+show
+840 1088 moveto
+<706F73736962696C6974E9>
+show
+1031 1088 moveto
+<6427696E7374616C6C6572>
+show
+1214 1088 moveto
+<6C27656E73656D626C65>
+show
+1411 1088 moveto
+<6465>
+show
+1470 1088 moveto
+/Times-Italic-iso1252 findfont 42 -42 matrix scale makefont setfont
+<53616C6F6D65>
+show
+1611 1088 moveto
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<706172>
+show
+1684 1088 moveto
+<756E65>
+show
+1764 1088 moveto
+<70726F63E964757265>
+show
+1951 1088 moveto
+<717569>
+show
+2024 1088 moveto
+<617070656C6C657261>
+show
+220 1135 moveto
+<737563636573736976656D656E74206C65732070726F63E9647572657320696E64697669647565
+6C6C65732E>
+show
+220 1229 moveto
+<4C6573206D6F64756C657320736F6E74206C69E97320656E7472652065757820706172206C6575
+72732064E970656E64616E63657320696E7472696E73E871756573203A>
+show
+220 1996 moveto
+/OpenSymbolHSet1 findfont 38 -38 matrix scale makefont setfont
+<96>
+show
+279 1996 moveto
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<436F6E73E97175656E63657320706F7572206C6573207574696C69736174657572732066696E61
+757820646520>
+show
+279 1996 moveto
+<2020>
+[747 0]
+xshow
+279 2000 757 2 rectfill
+1037 1996 moveto
+/Times-Italic-iso1252 findfont 42 -42 matrix scale makefont setfont
+<53616C6F6D65>
+show
+1037 1996 moveto
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<2020>
+[112 0]
+xshow
+1037 2000 122 2 rectfill
+1160 1996 moveto
+<203A>
+show
+1160 1996 moveto
+<2020>
+[11 0]
+xshow
+1160 2000 21 2 rectfill
+220 2093 moveto
+<506F7572>
+show
+312 2093 moveto
+<6C6573>
+show
+373 2093 moveto
+<7574696C6973617465757273>
+show
+569 2093 moveto
+<6427756E>
+show
+653 2093 moveto
+<6D6F64756C652C>
+show
+803 2093 moveto
+<6C2765787472616374696F6E>
+show
+1004 2093 moveto
+<646573>
+show
+1073 2093 moveto
+<736F7572636573>
+show
+1212 2093 moveto
+<6475>
+show
+1268 2093 moveto
+<6D6F64756C65>
+show
+1406 2093 moveto
+<646570756973>
+show
+1529 2093 moveto
+<6C2761726368697665>
+show
+1686 2093 moveto
+/Times-Italic-iso1252 findfont 42 -42 matrix scale makefont setfont
+<7372632E7461722E677A>
+show
+1856 2093 moveto
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<6574>
+show
+1900 2093 moveto
+<6C657572>
+show
+1979 2093 moveto
+<636F6D70696C6174696F6E>
+show
+220 2140 moveto
+<7365>
+show
+266 2140 moveto
+<666F6E74>
+show
+344 2140 moveto
+<67E96EE972616C656D656E74>
+show
+581 2140 moveto
+<64616E73>
+show
+669 2140 moveto
+<6C65>
+show
+710 2140 moveto
+<6DEA6D65>
+show
+824 2140 moveto
+<72E9706572746F697265>
+show
+998 2140 moveto
+<286E6F746F6E73>
+show
+1136 2140 moveto
+<717527696C>
+show
+1219 2140 moveto
+<657374>
+show
+1276 2140 moveto
+<E967616C656D656E74>
+show
+1460 2140 moveto
+<706F737369626C65>
+show
+1608 2140 moveto
+<6465>
+show
+1660 2140 moveto
+<72E9637570E9726572>
+show
+1829 2140 moveto
+<646573>
+show
+1895 2140 moveto
+<6172636869766573>
+show
+2047 2140 moveto
+<62696E6169726573>
+show
+220 2187 moveto
+/Times-Italic-iso1252 findfont 42 -42 matrix scale makefont setfont
+<62696E2E7461722E677A>
+show
+394 2187 moveto
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<636F6E74656E616E74>
+show
+571 2187 moveto
+<756E>
+show
+626 2187 moveto
+<6F75>
+show
+682 2187 moveto
+<706C75736965757273>
+show
+847 2187 moveto
+<6D6F64756C6573>
+show
+1003 2187 moveto
+<64E96AE0>
+show
+1086 2187 moveto
+<636F6D70696CE973292C>
+show
+1276 2187 moveto
+<70756973>
+show
+1359 2187 moveto
+<6C27696E7374616C6C6174696F6E>
+show
+1578 2187 moveto
+<7365>
+show
+1626 2187 moveto
+<66616974>
+show
+1696 2187 moveto
+<706172>
+show
+1763 2187 moveto
+<64E966617574>
+show
+1881 2187 moveto
+<64616E73>
+show
+1972 2187 moveto
+<6C65>
+show
+2016 2187 moveto
+<72E9706572746F697265>
+show
+220 2235 moveto
+/Times-Bold-iso1252 findfont 42 -42 matrix scale makefont setfont
+<2F7573722F6C6F63616C2F>
+show
+397 2235 moveto
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<2C206F752061752063686F6978206465206C27696E7374616C6C617465757220766961206C276F
+7074696F6E20>
+show
+1089 2235 moveto
+/Times-Italic-iso1252 findfont 42 -42 matrix scale makefont setfont
+<2D2D707265666978>
+show
+1214 2235 moveto
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<2064752073637269707420>
+show
+1380 2235 moveto
+/Times-Italic-iso1252 findfont 42 -42 matrix scale makefont setfont
+<636F6E666967757265>
+show
+1540 2235 moveto
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<2E204C657320636F6D6D616E646573206173736F6369E9657320736F6E74203A>
+show
+368 2281 moveto
+/Times-Italic-iso1252 findfont 42 -42 matrix scale makefont setfont
+<2E2F636F6E666967757265>
+show
+368 2327 moveto
+<6D616B65>
+show
+368 2373 moveto
+<6D616B6520696E7374616C6C>
+show
+220 2420 moveto
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<4C61>
+show
+284 2420 moveto
+<70726F63E964757265>
+show
+472 2420 moveto
+<6427696E7374616C6C6174696F6E>
+show
+706 2420 moveto
+<28706C7573>
+show
+811 2420 moveto
+<7072E9636973E96D656E74>
+show
+1033 2420 moveto
+<6C65>
+show
+1084 2420 moveto
+/Times-Italic-iso1252 findfont 42 -42 matrix scale makefont setfont
+<2E2F636F6E666967757265>
+show
+1266 2420 moveto
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<29>
+show
+1300 2420 moveto
+<6427756E>
+show
+1390 2420 moveto
+<6D6F64756C65>
+show
+1537 2420 moveto
+<706172746963756C696572>
+show
+1729 2420 moveto
+<657374>
+show
+1795 2420 moveto
+<6368617267E965>
+show
+1946 2420 moveto
+<6465>
+show
+2005 2420 moveto
+<76E9726966696572>
+show
+2149 2420 moveto
+<6C61>
+show
+220 2467 moveto
+<7072E973656E63652064657320617574726573206D6F64756C6573>
+show
+697 2467 moveto
+<20646F6E7420696C2064E970656E642E204C65207072656D696572206D6F64756C6520696E7374
+616C6CE92065737420646F6E6320746F756A6F757273204B45524E454C2E>
+show
+1188 2982 moveto
+/Times-Roman-iso1252 findfont 50 -50 matrix scale makefont setfont
+<34>
+show
+221 2845 1959 1 rectfill
+221 2933 1959 1 rectfill
+grestore
+gsave
+readpath
+V00DC0505B000272E07A900B008272~
+closepath clip newpath
+gsave
+220 1909 translate
+1.24050 1.16171 scale
+/DeviceRGB setcolorspace
+1580 538 0 1 psp_imagedict image
+J3Vsg3$]7K#D>EP:q1$o*=mro@So+\<\5,H7Uo<*jE<[.O@Wn[3@'nb-^757;Rp>H>q_R=AlC^cenm@9
+:1mM9jS"!dTMT<$3[GQ$8#0$s<4ZX!SPQ1`C/m<k<ioH)<bk^Hj`\=EYZP^B4!g3;B=(iUYNoc"h/Bf.
+DHAorf'R[o?>ioWjnAY&^gM+`4=1jRLW!YA=M/6)*KRWnUNmi.<Y(G<5TfJD*"iV`K>JccW*D(s%YqtH
+0drPi.i+&_,;H.PE]Y>'a<WMi*0NrAPKG1,WEc`5/sjd/1F\jBCGq[--SqaWnp<QmcmU_#*>49"UXCSJ
+Wa.BL:8cSk2(G.pX&c:P.lF?_C&MA@==c?\*KnTXZe?uhX'N$cDR\CR2_1HIlZTns0/orfo)!mNi%R,A
+*YSp9_r<C1XBm\%NlU393@pb#/!eB@+:n5]%LE;k6/`BB<%]$tLI:&5(mIcE'oPN@&X_'c3?=/Nj:W=E
+N_(O\8`^SQ<3B@UQV6HS)3iE\24I>'':IA<Gs.cqkS+pM%Z*WL;<\d`<,_k4Vc2ie\A^e5!3&ua'q3Zj
+\QuC?lkUNTNlbk==mZuo<Nb"l[p/8:)jS_5Fh:rJ(RrtCq0g"bn/*!:<gj',@5/Jo(+rqma$An?XE47D
+;9!2=&-r+?#6]XpT^[b2.MiMJ_kHT+N(PH3MT)=[Ls0Tm*0/(7nd,_^7jO8>V"0@9W`La;bGFe:N65ci
+Ra%`$M9P7/4J'lsoEl$7LI@laW:YsA.[Ni+e#E!INCp*JWn"-BLmS7Q's6)<'q5YhrFCadXAKp"U=X4i
+gTC2XNQUF+]%sO`Mp:P]I(nLAp^@W?#DBtQYkX/P.i4/aj0A?*<*I%ALKP_IVuul!s+3OEd!.r*'ao[[
+U!Mq57O8_*7:C0!C^r$$N'a;E\0QM=!0TkudWn6X'dNcJA5]C[`aprp9kMk"`9)2(Skj"Jq?7(W6_[Fk
+e9XP1PtRuQC"3!57\s%`<GL'1`FcM^Y#fDhqZV_nA$T6RepBi_eSDTtD:\T<`oV9Q?#J3gABn>']AIGQ
+peC>X,EgG.(d(88'oU(AES12D7jXAAATHIO_u]l>J\`J5BKRIP$AHA@YipI$,8,jP,-bgo@P\p^a!7kQ
+r.79[Oi\lSBfr+g.[A1'ZKZbR@ksIs-F7F!ic@/OcR6'`r;qU<U!<WPB_<2C$%Gl%Pj(UkrD/@"C2`s-
+L9"@Wf.48orIVprZ.U\:CH\E@C:2eJ[d/@Yj)V]d0"5W0iq%K0h_2J)rW<7S_;R)XC?91j8]8V'GjKlC
+/!.e;Z?^1aNW9'15i@`+1]@smKgOa[QnS^f%"gt+Yh6<h0aNY+^_(f2AjIT%5GXGk1]BB<L]Cr3.6M3@
+*1+n3P?G9LEB0RbkEFTkrddA/;!=-I2'.lOV,HQBg3#TQ;5mO[Q!1S%Z!"20l]p2sI_fHt=R;>X24i30
+[9Ds`gNC6hEOf?BQWplSnThfSn!Df$hEO<A_dnhmCed88L1+W>Ggoc&'V*>9d>/iA>l]AiTQ!FQ)@?It
+^u6u_"<J-aLI:'@3/faE!fKDhE2^^$59Q',@o4YMP"QaV5pZ!bA?&ujR*;FK8Z^Wa31S9lF33eFImB[R
+W,tW`)NRFbd]%?2D*":cW77hi9!):#=KL)SFis)t^L4:uXEI5gRa5ZSg9#PAD7\VD\D4629<Hq:GeDn0
+nsSV56Pc-KAhn`2Ws9ie9X.\jN\;E4Mp3R!4Cl50R",/Z:cJ:f%0qPPTQ!Fq2B;sT^nL9XUfK&`N(.;S
+\E%fr+-9$(;E6"g9dc/tAQ$'L[TtPR9P.3`Ut0BAS5*]q\`EI45G1hd<&u<@NCTdBBiMZT2P!XB<,,Do
+V,j^"XB'+:]&e+K?a*XK<]_Un*t4&lX\k!FZ6^a'5GB8+h9Oat]>^s/)k7i,D?+&'paA;n08>PFC(NKR
+nfr:da`1?tVH5@9bWm9>-l`j-#(sc90W853)\.YA+u(L9;C`N@`Zm4:gi>ItO2rS%.3+LD-BlRu19"Na
+>:u8d-8R*@dVCb1c6kEIh"#eUT?nuC.NK.[7\eB\1oah:Rnfm2.Q&]H;QCE1<[9PQ"?s;!IomrG]"NF'
+&$S9lQ8fVR%:u\5/TEk:@d.^5_CbI3/Je""^I)rV]7jGsL;W"*336FB)ihu"1-$nW;_+0Wjrb30'FkEQ
+K0eH-QrG[U%>R=1&K$a-.2@b0it7[.DE/_u8)t:#'TPa2P=ajKR8g=l/XK,m',d%[Bf2ASk7a95mWgsf
+:ZrK2'MJNrOO6<)2t\d:8>JU%FVj[6T+RtuU_R!3>QI]_<h`V#NHtb;L=r;%8,]I85.8K`oVu2;j\p_6
+X>PkUmeM:G?gnmP((U_*_dW'PS5q9\NQ5Q")'"r<.@&(fo+20)$3p]c_4^:R9I^heL;T_T#`MA''T0l(
+nVGD(2]RjuU[e^"MFSqTae\Ka9WD/FQHQ,r$&m#>1n)[do81]8!BcIi!"eu)$AV$Dd=='22$+ddT2/m;
+Wf9WK5D`BM<Hs400`J5kX)k4&Jj3aueL^EP/V_kn[bIqY$]W<lFLp;2pP[;]pO'^4YP8M9$O;@%iNW*9
+:+I->`oF?"%$!t.Pfi*nq1o.P"Ts?B@*j-d-5?oC6Xe@:KLR7$MFD"%Gf42O)hS,8dE!#J6i`"`j73Jo
+RRnohal--sA3'TEKZKp0BT1q\/X=WEe#D.)"Z(WuACKbU&s5ha;eabXKgqn;W`<faHGsL(>HV%Ceb]N)
+`FH2VCt<r%VU]Ij>A_sgKuW4q\m94*Hc>.?HbNj*fDGgX"bX[#E7fP,VM,o,_^/9]PgX%k`l089]Y":F
+!eJ01Y\6-C'*!GK+M\hA.LQZ769l,rN#jPh!(J3;=PR4G,*BtidKnp",:A+3jO+<-[Lk6J_dtW<]]*un
+S^/[il2:[96D;dTZt_`JP=h\#.CAAg6DIGXeLItA]je<OXk,)2lMZ=P@^4T;[VJ%#dqZ;F/[jtn_W,[I
+h(H0P^#JX0^#(KPlht-I5f$1!Q"`E#Fbu/gnF@Dqc7=s=j)IumPh#j7JO&,]kVNna$&(_)OMCu_)\Iim
+ifPW_<\52B6(cQ'oR9(LO\"Pr=Yu^I.@!NeP1ark@540Dk*&rThJkQH:?Rhoo_sD-Thss;=u@@`8Yo>L
+PhL7DTi%dglBPP\?EmY8<pQ%)omX_cYup@Y>;`#"BsguO&pnFe3>[Q@-$K(.cLH(=?=XkqXjTR_Ol2uW
+*&\H(H,*DJdS%k&!suKSnZnZRY;$$,^n>X;//f$)KYjF%aD<mZ&;\9!ECd070,TYfUN+BAH9WO6aJ<iJ
+/=K?_PffhCa_\Oq0UU(]F%NIeD`F94VfTuHqL:c'd&;%Y/K0[@Usc5ab&'23:oMmDF\8c>Y?7mJT@M":
+!l#JRfROQkj8-H!Z:&Of4#B.S"1U\bQ71S3+`sqW0!L7U3r'?%5OUM/<YFG=KA`YpH_'=3Ks99?=P-Y,
+[?uJ/i(uBY((CM%6=E^#A2YG=LdY]L32BS,(Q:gn;7P\14WfbVA5YE5Q;&`k8nCo2A@>bsQqV*j3Mb5C
+2k3WU;n:u_I6XB$BN.#=(6(h[;JB+AAN$)TW)RM33i,lZ=0,G5TF0e&"(/4_X;2a$P##Yr>&1C$//m&R
+P$@?T\>@L*#_-/ue]>^W"+(#7DKLg@qZV"s?nN1qAiC`kaCK<o4Jl13Qcq]:n0f7h$O27#+Y]j"1)g^Y
+`$-oaS5LjQMoHtrW8)DT*fnAf1+=3+9.#kF,r2H)Z<JrJbU,+pSC212S'EB;WSI&k5+g1M1b'LYMajJi
+.5\&117J^Q<%9`iSPlLhX4AdYWnh^-?E`!42Ce)`b@\*7/N0Y8ZJ09+gb(N9S^QhI]A>2"X53@DI_Xep
+3%Q)Ia+hLk0fZ7@1E2@pj>&_HSl7/*bN9oXp_42E"bT,"&=?EL)%D?giXm#l:+6p97H4uIe8@8eO%00_
+)&.Nk-'Lp^&t)_%=Y5t5jqAVsc=o/*:$31XeF%TFT24Yb)AN`N7AE`E'Ui#SR8'SXl4k5&:8q6o<U1Bg
+eS_p'Y?1'+)\nBs6aKq_(7S=,fkn3&mM?h-cKTJ`?1/T!eaE6]^L-II*#9%kD56'0(n=V[)3)[HneiF5
+:FVQdfeX0>":>A:K#+,LLeK97%#2ZnnHb(G-PVHWU@F&`C,[,ma.r2*"9(e9P0'NjM+jpN/=+JUo*LAu
+B/H(%VXoYgl?>@^c_pCB%17kYU=#q3MG5Re9W$:<oa6[NVc9\HWqD7oC:@HNf;nTQ%>r2:ZIu>QM<#T(
+Cpr*#pBuu'kB+;kY4mk!lM#\?b@ER@%LWMp_Vq`oN(tl>N5jb[q$`9V-^;d8ZMB:YrWNCU6"&&a6m`WV
+L-oCrpk2*_'8f4fd<NTA2&hQGA't)TL.*>M8S$7p7&Es7Q:kf;q1Qb!1R_$Md\$a*FT[+hB9VSn#),F=
+;/"I*74+9mVGh3YqLqD8;lWi4d7Ml#[9'M4CXr:cL(dar!%_/t7AeUN[TdV"qh<&OF1PXpf6bL!om=D[
+DqFg(QN^U/@;skH7OJq/`aa#@r.SVc3QU<&fm9.g!<Rhg+A_bp+qk<;_]c8JHpT%jM8^[DBY7e1)NDc^
+Z0;+;6R%Z7,dM,HU/NP,b9aIYI)9AKRE[(bBtWGH3h=SEZg%DiK0l9Z.(!_P,*PWqdj=JJI5[iuWRWK+
+C;")_>-6C,[Hd^B_d\5N!#@(JU=3kb`iQCKA]!JJ\_SmICVAa!HG/2h\*O"q"+nAJ0Xtf04oL/Tj"\(1
+IR>?CalP:`CNL0hs+*GnOB==\&IF.XiK2]64s:Mp7,j>2ZsGI)NCMrjf^sVY+btRnP$'W)74FKojc\;=
+^0raa9]hOA[,,d_SPJ@3g%>8p6(q-=PZfpcO\)BIl'0nE5+tiQ<9f`P[9g+@X]FbQg@]p2@Bir$Q<Q2k
+:MBf3m?ZLL^9;:8gb+pt[GLG!]jC/og\(RIJ\ba`Qs;Nk&W+J9nX/*T59Z02AFc)1Paa0'J&%^r81YYi
+#_^'gE6)iV*tX7HU2``*=t^_O`hROplkBICON=40kq&9!.$VlNEli./?SIkkVK5>1g2As@cDPa*m.u2s
+T[9WZ8hCsB8>O\5FNSG]T2;K9Wc^q9>-D&0euNr9m<ZNTYh6%#9.W7sBE22;G0=a6\S72\mWV=+g@':!
+hQM.HmJ?j5^u2GA9J.7pLrA;XGg(%e+-=S)Z?\u@`^Q/C5N#?t,SggoKL0*D\7@K<%u<V_;)k@P/Jj@8
+@o9bsFp\5287YU(oTi3!PY,Lb\R`-S0:5FF;`UZ)D)[t[B2cA%p3f/u:hWfh,o2J1Uf(o+\n*dj:T.6-
+<B?sWX]MT)CK7t-G.h7e=DV#"-'fVtZiDZ.]4JG,>dVT>pH,5&m<?3LDcaR4pAKKV?uT41-5R,H`+!^g
+]Oj)CO2tjP=ZiK0j!)X]+7LZu&dnnr_BCV3>V[6.LVtAk.%F0c(5p0W0rWlJ3s>UT,VgeOH:oTKasAgB
+>d@QdQcpd4.@eh%2Ohu>1TB1#HTn(K-o<Co&rT5SdO@#Q>r%mEVpm1R.\0J<<iae%26,JQ]3_\n/2f"!
+P04Aug&Mn(?*`4&Y$,@Zqjl1$G.ZTa2lkd*qgQ<<0K:U)'+9Q4i\<Eo?8EO\a5f!9/=o`SEKOg?&,6hK
+#mGrIi=MAU/f>+R6fJ[pPYNYBMacY<R+-"6*J/ee&fDC84XH:`jV!t\Y$!?C9BHm*Pg3u#Rn`&ZRFLYM
+4eGO6'H.\rM++1:knKRd/t#G3;sG)9Ptn;YX&\I#Ral;d?*@>r()n!Ka^p7Km/RMOY1[[$="Q0hIEq)"
+]3XkAS(6s&ID9.Y(`X;%$&-9*nJIcs0,]biA+CKWQ;8q:\B(t[#Q+o6"G4I_n;'af(CZ&9U%&DI8gb=1
+`M2mYb\B'VNkmsn#n2\W*g4X@nqg&?="KZ\V=P"Pb%EQ"c)1)hbj'C7T$O>,$4R>t7&&)-oSQ?mQV=:*
+WV$UX8uGXgeZ/;"c"a^mY1K`J$Or!6A?s,6G(9abf5.nMX-T.o^?9ULh6-L1c0G%N^>H-h$k<XMKYl]P
+pl%ru(Q?AoZ2"fg9.,sX>\$u>"9&H+JjEekGXNkn$\h#Wd.i8`,nl/)@aTG=Ai1Nf7pqtr"GT>fO%Em1
+GsnN0/!`h>deSR9AM]cLB%)%Dk&ibW:M8/Q"U9ZJU/>URH:90G9;YX%eG=kgV,OBoC=RXLB!kjG=)6@`
+"bt!+Z<:W,4$WklCURGae]UXHhfHA7DV'6Sk4O)8?Z4Qo"pY<a_I7E9Hq#IuMoK7Hf_gIo-'QJ<XthQ0
+!WN4P_'#sq4<bFGKu5(<k^5]A&rFROZ"UdZ1E)7n,HsuIJjU`D8#3G)4JGb(Q-1JZl$U?X17?B6ZY@)3
+F#ol<-aW(9!eWh5d3uA:4X-(^V:-m#l?u!o;Q81r[;*BaZWaK_/%+[@K#;'&fdsB'*M<FF[G*:AlK+m5
+Dn4[V[qi\:o6S+-0=U9H!s=.ki@qcX4sL_u`T&\_m!_;HP0)f/<uDcS!<7U8i/h%t*YA^46K+$YF?Ui[
+M+$?c=L;Bh)3%,GOk;&`5p;@],LT^OSl$r%9')5hFM;0<R7ub,=g[%*3Lrq.PM,U-JO,u+k`f7.*g'$j
+;X'G"FZuKrWDr/J>.%\A#a'Wf2;7_P_-sTNm$:j5T$[M>f'PBM6i,aD\6RqC.uh.1::8132r"$*!J/'p
+n<dH=*ta@K@e#i@G!@.4a^jt1=j?A'!.VeWE(DMu%g[j*TlA(h3Zeoh`1h6BXBI7oN5hW4aR"4;+HX[?
+E_.gN:FMIMV/j[o\mH9S9Vul&Peq>uSBe$RamAkR3L\<F'FHE1O%?(pWH?:"3hK6Ie>dX`X]ho1XOaFp
+b3aMi@'J:bG"XEUcY0]6?e3:=%Vc$SbjAJ)XkN5g]\]i9bNt8H1r!G&GYBZ<!HZ.fZ$=K14!0R*jKa&)
+Y$3QHJ3Vsg3$]7K#D>EP:q1$o*=mro@So+\<\5,H7Uo<*jE<[.O@Wn[3@'nb-^757;Rp>H)ZH*k!#%Ag
+enm@79;b_!jS"!dTMT<$3[GQ$8#0$s<4ZUdEAj]DA$ZF4qPb+.`ToB"ga9X2YZP=Uq5oP!B=(iZ<kDqO
+h/Bf.DHAorf'R[o?>ioWjnAY&^gM+`4=1jQs0?*R=F=^>*KS9PE`kN#T+h:C^`UoNr"9A@JNogSW&tP+
+%Yqop&I=n).i+&\+Yef.E]Y>'a<WHQPWhY_PKG1,WE`O+/sjd.d`J$-CGq[--SqaWnp<QmcmU_#*>49"
+UXCSJWa.BL:8cSk2(G.pX&c:P.lF?_Ek>Y]fISp2*KnTXWD%.eX'Mq1B=HYK2_1HIlZTns0/bn.b4U4E
+af"nP[LPHSW8[4;)s+[HNlU393@pb#/!eB@+:n5]%LE;k6/`BB<%]$tLI:&5(mIcE'oPN@&X_'c3?=/N
+j:W=EN_(O\8`^SQ<3B@UQV6HS)3iE\24I>'':I@+!Bm&NkS+pM%YG1>;<N%i<A'\6Vc2jq)O4's<NB-]
+F@l.7<C_O5X4%FcElf-&fkh:heFq@.[p/8:)jS_5Fh:rJ(RrtCq0g"bn/*,\%gds-@IY2)<.<GYa('+7
+*0sALQ-3b1&-r+?#6]XpT^[b2.MiMEJ0FFgN'80pMT)=[Ls.%h*0.r\Om)-Y6R7i:U[YfVW^@\SaeKKY
+j;MMbQc17Y)9fBj4J'lsoD,cqLI@laW:YsA.[Ni+e#E!INCp*JWn"-BMTonF>cu\Zp'V=ea(2L/XS.QH
+Wn2'qgTC2XNQUF+]%sO`M]C=B1o.mipRD^$#DBtQYkX/P.i1mQ@js0ijN;h3U#fbZGQ[pC"+S-pd!-r?
+'ao[^@F3Y37MQGk7:D<\Zq`=pLdn/%\@d8Z,EbW/dWn5i,qAsf+E-Ld&lTO3bi[B"`9)2(Skj"Jq?7(W
+6_[Fke9XP1PtRuQC"3!57\s%`<GL'1`FcM^Y#fDhqZV_nA$T6RepBi_eSDTpV3_"4`oV9'gMYVi`THi?
+^0bg1quufWJYHF\P.AjVDi0Ze0_$S\_\4)Nc!`V(_uKf>J&*83BKRIN!WYPqYipI$,8,jP,-bgo()ImK
+`ZqbPr.79[Oi\lSBfr+g.[A1'ZKZbR@ksIs-F7F!ic@/OcR6'`r;qU<U!Y9qC-<c)8u9uc[-E'+UJe)A
+.^a$)/iQt9f.48or+H1AL"7f`CH\E@C:2eJ[d']@<;sGS/iNNROtBk$hIO+J^&A=ZIpaLfW#QHE+Mbq"
+GMF0n)'6n*kSIpP63.%:5i>H%1_LB,KYa;-W,t3E!/X,&nAp8h0c>s?j,r!dIR,->8E>q:1nIPnPtL/$
+flXr:0pt_tP?G9LEB0RbkEFTkrddA/;!=-I2'.lOV,HQBg3#TQ;5mO[Q!1S%OV=itl]p2sI_fHr`Zic3
+4^ufQ[9Ds`gNC6hEOFH#<I:jjCD;b0-+BjBqE9@hfjL0qc2,I'_aa+I86qf1MoA)f'\g:(*<:T)TPu:N
+)@6S"_BEm&"?IV9Lr?!L8?>uJ(lZJ0EQIKm59Q'/UiK$XRSP>rb,'.#Cq<t-R*;FK8Z^Wa31S9lF33eF
+ImB[RW,tW`)NRFbd]%?2D*":cW77hi9!):#4Gd+>Fi\e3^Kn(rX--"0qQX_@g9#PAD7\VD\C>>=9,)9g
+AVEK)&1b02CCc@ljnK]g(-dS<iaF`iVChh#`'^9.aC[V-Q[h<Y:cK^9$35`FThr702B<<a6t0"QUe248
+N()a2\E"Pa+-9$(5R?_B9dc/tAQ$'L[TtPR9P.3`Ut0BAS5*]q\`EI45G1hd<&u<@NCTdBBiMZT2P!XB
+<,,DoV,j^"XB'+:]&e)u#QWLfFuq"9c"E#%?e2_-Xo2S9>]*V)V:P$X]O#6:MrgO[AA(^3p?MQc"UU"=
+AiQbj1D>Ru8)h&BSl-Gj_E]44-l`j-#(s_l&?%uP)\.YA+u(L9;C`317O'XDZk`N\N^@5R.3+EO-B^p\
+&uf-A>:u8d-8R*@dVCb1c6kEIh"#eUT?nuC.NK.[7\eB\1oah:Rnfm2.Q&]H;QEj!egiTa7<6"HYLkBa
+.ijerB!^2C2QL,hgMXLU/iP;Odd)(ghBZ+%h=CGl^Yge*/05H4<jTnu2G?hl)%28@T@#.^)M]8`hOkDS
+'FkEQK0eD`kYr`)!/Eoad,5$n.2@EPU<uMr@LENm6R1""4Dm_.L;W*!=VOn<.@3Z'')@d;Bf2ASi0$[]
+:2pi9cfbr`%1\"ZTMK89RT1u.9rCqT'cN?4WE$!!lP5l=DRj&V=6p\A'opCIZWZZ2RoQWED7<a;(E8Xb
+kte'[mh_JDmeM:G?gnmP((U_*_dW'PS5q9\NQ5Q")!e>#.@&(fo+20)$3p]c_4^:R9I^heL;T_T#`MA'
+'T0l(nVGD(2]Rjq!"oSHMEh3*aQ2oK9WD/FPXM@Ql&<bt"-Cc=OI,V))*37;jg(;M$>gB?7OX@t4SF4(
+MU3b.-oE3D<3"KG&P@Id[k3bnAQA#d>/t0ZfrXn*9rcf][bIqY$]W<lFLp;2pP[;]pO'^4YP8M9$O;@%
+iNW*'jsq7,`oF?"%$!t.Pfi*nq1o"P"Ts?B@*j-d-5?oC6Xe@:KLR7$MFD"%Gf3>V)idEudJ3p"73dse
+AC>`kVH#.494cQIKZ7RZRS@DCH,Sif4.]5\e+s4PKgVS.j"u'M(^!Egd:q)I9R``sJ]]IKb!a[]-A+m*
+Ek;13_`k?Sm+-KJ-Ilm`dd=ggSYG4e\m94*Hc>.?HbNj*fDGgX"bX[#E7fP--P_QZ@r^0!L.<OQ[UjL4
+I)H!c!eJ01Y\6-C'+0H2+gC0X66d,"`?MR#]OEZ8NQ39Kkkp#Xs,kDKZ=uFq;_"'U-*lc__IG?hbpKc2
+]]*unS^/[il2:[96D;dTZt_`JP=h\#-dio]63g5adU:N2Pbn=^PLcASg;LS=6Es)IZ?in;bp0Mdm2"=g
+g=[sd;(e,,^#DZn!8fH=g5Ldd$bYFP\84>R'8jch0t?S!6R.c9jYFA_^1%*BJO&.T=>V'2$&(_)OP"Y=
++VBQ!ifR?M?83=W7cTW`oR9(LO\"Pr=Yu^I.@!NeP1ark@540Dk*&rThF%@7!,%Lpo_sD-Thss;=u?Y,
+8Yo>LPhL7DTi%dglBPP[_N.j%<pQ%)oj3nIM,1%")"ib,5(?bs2Md%k2f=E++VuPdg(ej`g>CJ,e].Vs
+R9-V[>W*XSK#M3hR+ujL+d'lWnsNak?SMP1^n>X;//f$)KYjF%aD<mZ&;\9!ECd070,TYfUN+BAH9WO6
+aJ<iJ/=K?_PffhCa_\Oq0UU(]F%NIeD`7YkVfTuHqL:c'd&;$M`>Xe.Usc5ab&'23:oMmDF(uue"'DU)
+X*)SP&ueBl`FuNW'R%_7Zp_!XC;:%o4b:ANG,UDO+`i-!Y4ho!DY[\+=/tq`*ZGWE^uDVDb\fKaON?Lg
+GtbAF0:78Si(uBY((CM%6=E^#A2YG=LdY]L32BS,(Q:gn;7P\14WfbVA5YE5Q;&`k8nCo2A@>bsQqV*j
+3Mb5C2k,=F;n:u_I6XB$BN."2(6(h[;JB+AAN$)TW)RM2MB,a"=0,G90KQ=2NB<)$,??5SOo8pJfcmcg
+>jC'+J_Ar3W/]4]G.5G.<QfN2AR0j^^c4C+(Cc)7J8eU`lq[;(aCK<o4Jl13Qcq]:n0f7h$O27#+Y]j"
+1)g^Y`$-oaS5LjQMoHtrW8)DT*fnAf1+=3+9.#kF,r2H)Z<JrJbU,+pSC212S'EB;WSI&k5+g1E?j[ne
+MajJi.5\&1)G^:0ctYEfSPlLhX4AdYWnh]*9X!)"2Ceb3b=$tala&Z8?J-4*7d^j-PZm;^]3OU)/&X@A
+'u+'?&\BFqeL\)DCj<$f1;ejej>&_HSl7/*bN9oXp_42E"bT,"&=?EL)%D?giXm#l:+6p97H4uIe8@8e
+O%87D)&/*&-'Lp^&t)_%=Y5t5jqAVsc=o/*:$31XeF%TFScC/Q)ANa=7AE`DoBK=.R8'SXl4k5&:8q6o
+:MCQ4eS_p'TYi9[H*)NK7#Y7nQACg+b<r\a,BT<LZ86T[h6(r0'XkmbY@$c5E"3BZHc':^(n=V[)3)[H
+neiF5:FVRPAb-H<r!EZ3K#+,LLeK97%#2ZnnHb(G-PVHWU@F&`C,[,ma.r23%#RP#P0'NjM+jpN/=+JU
+n:1YaB/H(%VXoYgc=&i,c_pCB%17kYU=#q3MG5Re9S6*>oa6[NV`TZ5.C?+VB!iAV7]XoE"Ceb;ZGS4j
+8^2Ei$*q=?<f!<diG>SlWqC,'lM#[p?*F#3%LWMp_Vq`oN(tl>N5jn_q$`9V-^;d8ZMB:YrWNCU6"&&a
+6m`WVL-oCrpk2*_'8f4fd<NTA2&hQGA't)TL.*>M83df57&Es7Q:ke0=bOe+1R_$Mds8moFZZ0jB@H\\
+#(HQG7;.bI'HU'OVG!o<qLqD8:l/1$20^EB?P0>>CK:4Y1;PAt9;$Gg4]YQlZs.@.lZL4PF0ANE<]XUm
+j*SCD+7spR#6fas@;skH7OJq/`aa#@r.[]fPKIHWfmL^=rrRbf+L#NA+qk<;_]c8JHpT%jM8^[DBY7e1
+)NDc^Z0;+;6R%Z7,dM,HU/NP,_nZoLI)9AKRE[%ABtWGH3h=SEZg%DiK0l9Z.(!_O&nst7dj_ZhI6q?W
+VU?j\lFg4s=+<rFEiSeE-"*t1,W/,h7al+[gE\[:*PT^;\_SmICVAa!HG/2h\*O"q"+nAJ0Xtp_,85sR
+j"\(1IR>>2[Sl[!Cqa?Ys+*GnOB==\&IF.XiK2]64s:Mp7,j>2ZsGI)NCMrjf^sVY+bDqSOg"t[;(7c&
+jc\;=^0raa9]Hd(']*giSO]K:l.l8h(nT)fPZfpKD&8Vgl'0nE5*&R?<9f`P[9g+@X]FbQg@]p2@Bir$
+Q<Q5<d:p!lm?ZLL^>X(B>jdq_[GLG!Y=\dRg3)]^J\ba`Qs;Nk&KmdanT$W@3b*R<e+/o1?:udKJ&%^r
+81YYf!//4_E0raK*tX7HU2``*)>tD-`ZNSVgfcobON=3%R2hYi*g=aCE>_Fk>qD>aAi!#[g*[<!J0]1"
+eG=Y[T[9WVO:<+b$_m]8;gN:AT2;K9Wc^q9>-D&0euNr9m<ZNTYh6%#9.cUYBXHKqG0=a6hf-*\Y'3O@
+g@':!hQM.HmCn\i^L49j9J.7pLrA;XFj(!nPt8tlU0-cb!`^q)5MtB),SgglJO3dA\7@K<%u<V_;)k@P
+/Jj@8@o1eLFtk"e7c[H-"HG8aP=fCa\R`-S07gt%;X'FsD)[t[@'KIVa9+YYcbM?j,f5O2Uf(o+\n*dj
+:T.6-<B?sWX]MT)CK7t-G.h7e=DV#"-'legZs%<I]4JG,Dn'%i=$*80f-lGMY1L;IpAKKV?uT41,s$m<
+S5?H\Cdp?"&\LRd=Bq_)/XO[H+7LZu#QY-^_B@2r>V[6.J\kkN.%F0c&Vn@KZ![u\/KOm^!&7$gP"R-c
+asAgB>d@QdQcpd4.@eh%2Ohu>1TB1#HTn(K-o<Co&rT5SdO@#Q>r%mEVpm1R.\0J<<iae%26,JQ]3_\n
+/2f!u`\1l/g+>4`?*`4&\(iSjW;KO\FM!&NQ]'XF@/dp_0=NJR'+9Q4c7i2Ojt\;B`l,%5#Z`0#QHSD5
+&,6hK#mGrIi=MAU/f>+R6fJ[pPYNYBMacY<R+-"6*KN_O&fDCD8L9QljV!t\Y$!?C9BHm*Pg3u#Rn`&Z
+RFLYM4eGO6'H.\rM++1:knKRd/t#G3;sG%S"\u$sX&\I#Ral;R*e.8Moue)1Y:?eVD&/KZIJmrc>-8Y[
+Q#b,[]34).aS"EcIB$PV(`X;%$&-9*nJIcs0,]biA+CKWQ;8rpb@U8V#Q+o6"G4I_n;'af(CZ&9U%&DI
+8gb=1`M2mYb\B'VNlRpc#n2\],a-9Fnqg&?="KZ\V=MD)a9+8e9r@N=bj'C2RK-ua#^l2u7%DG6Zl2Xg
+QV=:*WV$UWVNEU-eYmTt]kY#AOh[si.h.BVA?smip5;YFf5.nMXnN3_b3*lXh6-L1c0G%N^>H-h$k<XM
+KYl]Ppl%ru(Q>1l1&2-`_]r3==5VE8!!3<+Jj>stGXNkn$\h#Wd.i8`,nl/)@aTG=Ai1Nf7q9sB"GT>i
+P"B3381^P;-]-!BdeS9r:GA53B$aXaqK4-U5GhBU"U9ZJU/>URH:90G9;YX%eG=kgV,OBoC=RXLB!kjG
+=)6@`"bt!+Z<;"pHUXg^CURGaf)(0@j`A"=DUGGsk4LUAhW>DAm)o-J_I7E9Hpf%]9>=2?2G$FE-&p&>
+EB/Eb!WN4P_'#sq4<bFGKu5(<k^5]A&rFROZ"UdZ1E)7n,I-J1JjU`EaX"0+4JGb(Q-1JZl$U?X17?B6
+ZY@)3F#ol<-aW(9!eWh5d3uA:4X-(^V:-m#l?u!o0Rm(H5RP26ZW@.Y.okm5K#:rS<?K_K'l(5ZY>/p7
+$C/KgEk1!S[ct32o2iN=Y>q&lqZD2$fl*6o4sL_u`T&\_m!_;HP0)f@\SSuh!<7U8i/h%t*YA^46K+$Y
+F?Ui[M+$?c=L;Bh)3%,GOkB;T5p;@]jH<Y&Sl$r%9')5hFM;0<R7ub,=g[%*3K/J9PM,U-JNX"[kVQH[
+#)WDO66F_1D'kGNVSB-1ktOKi9<D7\Q.kn[_-r#J.8u-N-Dr,rf.?XMFTRUeOP8Xe9,6=RH+dPQQeV35
+!J/'pn<dH=*ta@K@e#i@G!@.4a^jt1>dduo!.VeWE(DMu%g[j*TlA(h3Zeoh`1h6BXBI7oN5hW4aR"4;
++HX[>!!t3F:FMIMV-k0WY#Q^6bbA#29[5FOP0N02amAkR5bQK&F@n+XEWDk$BbP/IqO^BX<$W1PoGX-"
+XNTldb3aMi@'J:bG"XEUcY0]>X`hm)]&.J:gobioXkN5g]\]i9bO,0+JAC*IGYB_/%uA0PX'!S^RO_CW
+6`CWeNCPF\J3Vsg3$]7K#D>EP:q1$o*=mro@So+\<\5,H7Uo<*jE<Zm!(^Wu3=L@2"-Q8A&p\#r0e/Pa
+AlC^K1&X%t:1mM9jS"!dTMT<$3[GQ$8#0$s<4ZX!SPQ1`C/m<k<ioH)<bk^Hj`\=EYZP^B4!g3;B=(iZ
+<kDqOh/A4rhpR@Xel2[_?)2K+Q,5=7K&:!].K%WmLW!YA=M(BOK7o(REKOLZ3q\i`5QD?D)u^3LK>Jcc
+W*D(s%YqtH0drPi.i+&_,;H.PE]Y>'a<WMi*0NrAPKG1,WEc`5/sjd/1F\jBCGq[--SqaWnp<QmcmU_#
+*>49"UXCSJWa.BL:8cSk2(G.pX&c:<@!/L*Ek>Y]J8@+>`D-_3YM$"CX'N$cDO4NL<4bl=HZ?[S0/]]/
+qYPEMi%R,A*YSp9_r<C1XBm\%NlU393@pb#/!eB@+:n5]%LE;k6/`BB<%]$tLI:&5(mIcE'oPN@&X_'c
+3?=/Nj:W=EN_'<Q8`^SQ<3B@UQV4-\)3iE\22BB9o4c_BGs.cqkS+pM%Xg;:;(33J<"8e#L/Frc)O2qS
+<NB-c'q3Zj\QuC?lkUNTNlbk==mZuo<Nb"l[p/8:)jS_5Fh:rJ(RrtCq0g"Fl*'B#9*p<;?h"k'2CBB%
+a(+;"]S90IL<EP(cj01LrrdqiT^[b2*X)Ir6_X#UN(PH3MT)=[Ls0Tm*0/(7nd,_^7jO8>V"0@9W`La;
+bGFe:N65ciRa%`$M9P7/4J'lsoEl$7LI@laW:YsA.[Ni+e#E!INCp*JWn"-A87ZB7>cu\Zp'V=ea((.\
+WtpT#P.>;8gTC2XN8iCg\Qu"SGYR<j>l`cbQjaFiLO6YlYkX/P.i4/aj0ACgN_:aab2or)L]dV["+igH
+d!.r*'aoa`@F4e&7O8_*7:OYh`+CkGN^mU,q#lF@,EbW/dWn6X<@aA.A^^C-`aprhJ0r`j`9)2(Skj"*
+89=W]5b_+`F=6_+I5[j!C"3!57\s%`8L\$SXBL`hY"*8I)SLlM!O>h*&M!a&eSDTtD:\T<`oV9Q?#J8@
+`THi?^0bg1r!!B0K>M&9fR-.9'oU(AES1(mRjF8hA2;c:]E/$6J\`J5BKRIP$AHA@YipI$,8,jP,-bgo
+@P\p^a!7kQr.79H!(eHABdAR7.[A1'ZKTf0@ksIs-D26h`a:ctcR6'`r;qU<U!Y9qC-<c)8u9uc[-E'+
+UJe)A.^a$)@^B7?f.48orIVprZ.U\:CH\E@C:2T([d/@Yh%G3C/XL7c-Js']h_2J)?0_HATj8bg*%W#g
+MT*k[GjKlH,Eg111:_58@K?FZ5i@`+1`d58KgOa[fQ9;#&W&p8O]\ts0c>s?j,r!dIR,->8E>q:1nIPn
+PtL/$flXr:0pt_tP?G9LEB0RbkEFTkrdcAF:uG^g2'.lOV,HP#)Kdg/8>+JtQ!(diNE3/^l]p2sI^rP\
+==fb@,n9euZ!-O\gGQ_(EOf?BQWplSnThfSn!Df%rrI\e@.9Og2BNNf`FAA)gibn**k(/#Pmi[[%fcSp
+TQ!F8rXT9f_P(qiCcWXLLr?$-8?>uJ(lZJ0EQIKm59Q'/UiK$XROJE)J0a^,Mu$d4R*;FK8X-pe#aJ/_
+F0H)LGrh)4j:jVV)NRFbd]%?2D*":cW77hi9!):#=KL)SFis)t^L4:uXEI5gRa5ZSg9#PAD7\VD\D462
+9<Ho65ePsWEiZnMB18$BD-*5+)\7bCgotbPc8-2saN(KP9WY,#O+9IQ:cK^9%0qPQ@8OIE2B<<a6t0"Q
+UfK&`N(.;S\E%fr+-9$(;E6"g9dc/tAQ$'L[TtPR9P.3`Ut0BAS5*]q\`EI45G1hd<&u<@NCTdBBiMZT
+2P!XB6f6ER?imH3XB')o)Wb_I?`dB026)p>UM$r;@293`WnhU'>]*J%AQn8@]MPc?]B+qGG.caP=?IoH
+%>Vl2EEKkc2][t#A9(g8VH5@9bWm9>-l`j-#(sc90W853)\.YA+u(L9;C`N@`Zm4:gi>ItO2rS%.3(5D
+-Am="19"Na;ur?/Ahod!#%][m8LH<nh"#eUT?n`;GteL$7\eB\1oah:Rner>k7Hl6qO^fhegiR\NCIVe
+REQt>lD87=B!^2C2QL,hgMXLU/iP;Odd)(ghCgggh=CGl^Yge*/05H4L;W"*336Be^Q-@aELA?UP5CB`
+jrb30'FkEQK0eH-QrG[U%>R=1&K$a-.2@b0it7[.6ie<h8)pkb'KQ+<M+M($a[D.l/XK,m',X]O3?Xdk
+B+o"/mWgp_:ZrK2'b6'hUJ^7iRT1u.9rCqT'cN?4WE$!!lP5l=DRj&V=6p\A'opCIZWZZ2RoQWED7<a;
+(E4q!l#jUD+O`mslK*Gth<24L7FqEk_dW'PR'%'-I%t'ofW:@=+dL5]Ec;9]$3p]c_4^:R9I^heL;T_T
+#`MA''T0l(nVGD(2]RjuU[e^"MFSqTae\Ka9WD/FQHQ,r$&m#>1n)[do81]VG<DJCVt:<*$AV$DdAZ\p
+9e)K'VUMK:$B7ZU<3"KKonq!`T3SPGX&]T;JnJSs=fh=T9ra%]S(Ok:(jl,BCV&>pG72[\V0BZ2YP8M9
+$O;@%iNW*9:+I->`oF?"%$!t.Pfi*nq1o.P"Ts?B@*j-d-5?oC6Xe@:KLR6iImmaQ#fL=4)idEu?l9)n
+72h$)AC2g+qC*2Db@T,tKZ7RZQq6AgH,Si`/tGdNe+s4PKgVS3B[h>s-C%6$;eabXKgqCOW`<PmaRrH-
+5-7:$Q2:`>`FH2VC_<-'DDu19>A_sgKuW4q\m94*Hc>.?HbNj*fDGgX"bX[#E7fP--P_QZ@r^0!L.<PR
+b%5VHI)H'c!eJ01Y\6-C'+0H2+gC0X66d,"`?MR#]OEZ8NQ35.#lK9A,*BtmZ=u.=;_"'U-*lc__I"[Y
+bpKc2]]*unS^/[il2:[96D;dTZt_`JP=h\#.CAAg6?t;beLItA]j`QjR_bWHlHOLe'X'a&(2H(-dqZ;F
+/[jtn_W,[Ih(H0P^#JX0^#(KPli$tgK#-D"\84>R'8jch0t?S!6R+@gbjnnQ^%).'JO&.T=>V'2$&(_)
+J/EA`)\7`mifR?M+rgWA`a\JjoR9(LO\"Pr=Yu^I.>p\B;V?0+@53=&?h7F-hJkQH:?Rhoo_sD-Thss;
+=u@@`8Yo>LF"".GTi%dglBPP\?EmY8<pQ%)omX_cYup@Y>;`#"Bsh.3QJ6PriGlD5m[%.chXPm)?LO68
+p&>&D_-lc">W*Z9DMZ<.o#N*`rK5%ZnsNSWDC#8_5bN'e//f$)KYjE*(i1fH&;\9!ECd#0)?GacUN+BA
+H9WO6aJ<iJ/=K?_PffhCaF!nn0UU(]F%NIeD`F94VfTuHqL:c'd&;%Y/Fi[0T?/;i\h,*(7]=h:F\8c>
+Y?7mWX*)SPHG<jlfW96h/Xk"![+_X*bAFiJE4F]+G>#'lms)M%YBS1WqYu)]i37H"/fP=W`6>'_/64hS
+OK?GNR)nDf3K\hVi(uBY((CM%69l*lA2YG=KZ%=s32BS,(Q:gn;7P\14Wfa&jAIr/Q9cm_8n6:0A2FBA
+QHWr>3Maet2k3WU;n:u_I2S3_T[Xf!&hu8>6`&]YZrW.hVo!1)qP@5p=0,G<<P%:8]jJ!GCfWVDQHa'L
+>&@<PA[^E5\6NoQ4/LNqGJ%7#=1dSfrI;UjE*,/kG*@^"@.@@3AFC+kaCJhEBGMC'.#'te0H^K2$O27"
+?gt"!1)g^Y`$-oaS5LjQMoHtrW8)DT*fn=7&h+eI1B*KY,r2H)7S,5!bU,+pS0D)oS'EB;WSI&k5+Y#i
+1J*!!LBaC!.5\&117M%:e1*=*SPlLhX4AdYWnh^-?E`!42Cff2b@\*7/N0Y8ZJ09+gb(N9S^QhI]@CTH
+WZ4&prgVfK(b?^@pP-TF!#S;q->O(+ipo)X[PeGUSn2:0#S[aT"bT,"!!!E['+KLWiXm#l:+6p97H4uI
+e8@8eO%87D)&/*&-'Lp^&Jt)B3t@TMjq(*Xc=o/*:$31XeF%TFT24Yb)ANa=7AE`E'Ui#SR8'SXl4k5&
+:8q6o<U1BgeS_p'Y?1'+)\nCTA[>P,(7=.m('0fWmM;jgcKS`H?1/Ss4k=f`[bd[$bSC\.J;7P\=DV"j
+'8X\=lS>sACF(=I6D9J@":>A:K#+*Upe3.R%#2ZnnHb(G-PVHWU@F&`C,[,ma.r23%#RP#P0'NjM+jpN
+/=+JUo*LAuB/H(%VXoYgl?>@^c_pCB%17kYU=#q3MG5Re9W$:<oa6[NVc9!KlLg%ZC9\t4=/PZRoI@aY
+ZIu>LCCP15Cpr)up5*So"*D!-!&j<M`qOkMhJ_n>I?OIL^gX@sHd39@N5j*rq$Q7G-^;d8ZMB:YrWNCU
+6"&&a6m`WVL-oCrpk2*_'8f4fd<NTA2&hQGA't)TL.*>M8S$7p7&Es7Q:kf;q1Qb!1R_$Mds8moFZZ0j
+B@H\\#),F.^SoS""X]L-VGh3YqLq7m;lWi4eTbXp[9Ke8BqQCK2R+R'5G3/b7Ae+@[S6%m.o"$YD3\@B
+!#q3c]cjl#YI@10#6c]_fPai]*[_\\`aa#@r.[]fPKIHWfmL^=rrRbf+L#NA+qk<;_]c8JHpT%jM8^[D
+BY7e1)NDc^Z0;+;6R%Z7,dM,HU/NP,b9aIYI)9AKRE[(`0EgBV3h=SEZ`jl?I6sK!W3g;&,*PWM^T"N=
+*C?MuTE&_K);Qo\;Q\P!<LWl<__J=D.[E='MF1*f7'-+JI7D\+\_SmIBJmZu:qPU<\*O"q"+nAJ0Xtp_
+,85sRj"\(1IR>?CalP:gCqa?Ys+*GnOB==\&IF.XiK2]64s:Mp7,j>2ZsGI)Mh!%7f^sVY+d#=VOiZ%D
+;(7c&jc\;=^0raa6D)_/`0PC'SOif;fc8:g/=k/OPP>jBrB[8Xl'0nDcAOcUJ7j!#ZlY><W7L9uMS4JT
+@Bir$Q<6k)d70R!XOc-K^>X(B>jdq_[GLG!]jC/og\(RIJ\ba`Qs;Nk&W+J9nX/*T59Z0"g2`?-Q<u?H
+J&%^r81YYi#_^'gE6)iV*tX7F?dVC]!\YCL`hROpm!:bpON6F%.4go`."k.QEli.';_XT_VK5>1g2As8
+73BljFS^J.SC"3Raor\f+TT]b0o15FM,:/#Wc^q9>-Bi^b%YlG7<X)]Yh6%#9.cUYBXHKqG0=a6hf-*\
+Y'3O@g@':!hQM.HmJ?j5^u2GA9J.7pLrA;TQ)T^OR7G?FAD#[D>;)@o5N#?t,SggoKL0*D\3L*9%u<V_
+;)k@P/Jj@6TolkGG!-q/7V#CW,[NbaPY,Lb\R`-S0:5FEP$+SG"#l[dVGk%d%K/MG:2!Lm\-@^LT$h=P
+\n*dj:T.6-;L,)SNt[l+hpjdLG.h7e=DV#"-'legZs%<I]4JG,Dn'%i=$*80m<?3LDcaR4pAKKV?uT41
+-5QP]TiIhSCh>UHO,q:8=H''e+UZB-!"^Ou&dnnr_BCTlr%]3$LVtAk.%F0c(5p0W0rWlJ4!'I(,Vf&c
+OrGZr6DZH:>d>"eQcpd2$#J%*2M?Tn0KI2Y(G_W0-o<Co&rT5SdO@"U]eWeaVpm1R.\0J<<iae%26,JQ
+]3_\n/2f"!P07IDg+>4`?*`4&\(iSp/"P,SG.ZTa2lk^tG<2VZ+Rob$)[Uo0i\<@%D"=&O^uR4I4GHcb
+507CZ&,6hK#mGrIi=MAU/f>+R6f<J#PYNYBMacY<R+-"0&<B?B&f?":8L4AYim9ZlS-('qb9\nmPg3u#
+Rn`&ZRFLYM4eGO.:[/W(K`6^!W>(bR8qB^7;sG)9Ptn;YX&\I#Ral;d?*@>r()n!Ka^qe]m1u0kY1[[$
+>OE:HQ-SW:]3XkAS(6qjID82<FBTt#pP$LnlPKHj5*q/GiZSmrDEB;4R,g%7#Q+o6"G4I_n;'af(CZ&9
+U%"]X8gb=1`M2mYYQd$(NlRmA#n2\]$\(aAnX.r55:hj_,>lR!b"4FYc)1)hbj'C7T$O>,$4MecrgHNZ
+oSE_YQV=:*WV$UX8uGXgeZ/;"c"a^mY1K`J$Or!6A?smip5;YFf5.nMXnN3_b3*lXh6-L1bhA8.^>?'g
+$k:L="2\)KnuM+`NJbJYTbuRF8s>=Yjf4_.!!3<+JjEekGXNkn"Fn<tcfg$C,nl/)@aTG=Ai1K\a(*J`
+gfcoeKh,b&G_Dpl%uA?hdeSR9AM]cLB%)%Dk&ibW8`Z*10F!4RT$_$<R:NI[9;YX%eG=kgV,OBoC=RXL
+B!kjG=)6@`"bt!+Z<;"pHUXg^CURGaf)(0@j`A"=DV'6R2N\ljc);79&-i.9NF-T`Hq#IuHC!$!GjkkQ
++Wn\LZ?.!)!!*.P_'#sq4<bFBJ&<G6k^58d&r8t#Z"UdZ1E)7n,I-J1JjU`EaX"+s<2*;@Q-1I/Bmdc^
+/XaGP0Zg-M"X8dfU(bYV!eWh5d3uA:4X-(^LrAHF:^oa4;?0V[[;*BaZWaK_/%+[@K#;'&fdsRI4egD?
+[G*:Al[?Y1Ek1!Y[qi\:o6S+-0=U9G*iFUV?nf*,4sG\FN*tb4>\kT9Mo<N=)/R#b!<7U8i/h%t*YA^4
+6K+$YF?Ui[M+$?bYRFb;)3%,GOkB;T5p;@]i6UXE<`(<26)8PS'Fmh9Q,4ir=U`Sq3Lrq.PM,U-JO,u+
+k`>PI*\IJgJ1*2l/O#k*WDr/J>.%\A=fk`jQ.kn[_-sTNm$:j5T$_8[>4%X1FhZgS\QnQh>IE>XG,I`B
+GMDdK:C+YjE0slg*X.22?Y_X3"sS2Ma^jF1$k*(?!.VeWE(DMu%g[j*TlA(h3Zeoh`1h6BXBI7o!(N`'
+aR"4;+HX[?E_+-;:FLn<-#qU3+oO*L9."[.FP:XmSBe$RamAkR5bPq?PY*KEKh/#fWH?:"3hK6Ie>dX`
+X]ho1XOaFpb3aMi@'J:bG"XEUcY0]>X`hm)]&.J1bTG3$SFVYaRDj'q)t!M%J=U"b24>ou%u@"=@+WJk
+%j-nPjK`kYL0GaaJ3VsfkTgKE#D>ENi!<jO*=mro+HP_c<\5,=_.+$iN-7?+LW8CQ3@'nb-^757;Rp>H
+>q_R=AlC^cei=kC:1mDV[.\o4TMT<$3[GQ$8#0$s<4ZX!SPQ1`C/m<k<ioH)<bk^Hj`\=EYZP^B4!g3;
+B=(iZ<k(ikh&l^QA(Ji"f'R[g>OC#R$pnA9TjFqSN"-4)LQLIL=LrAp*KQ3<0p,_*.j80<^]4og$k`^J
+K>6A!W*D(s%YqtH0drPi.i+&_,;H.PE]Y>'a<WMi*0Nr%K?>Jo5RaMo/sjDKcfpsgCGq[--SqaWnp<Qm
+cmU_#*>49"UXCSJWa.BL:8cSk2(G.pX&c:P.lF?_Ek>Y]fISp2*>W8dM9IP0X'E4TAt7WBQReWTlTqsc
+-4u`,54\i9?S9eVUb_n'_ocG5*#:=L5/^te39]3O*L4NI+:mZ,rWra\6/`BB<"o?BLI6SH(kbL''oPLh
+EL>6n3?=/Nj:W=EN_(O\8`^SQ<3B@UQU7G<)3i8f!L_/Co9n+rGs.cqkS+pM%Z*WL;<\d`<A'\6Vc2jq
+)O4's<NB-c'q3Zj\QuC?lkUNTNlbk==lFFK<N[]-S(]J2)jS_5#dmBDP;s$Y#9CNbi)6W:dO5*K?f:^;
+XFh6,]]8Pr/3WS,Mp#\q0E;4_#6]SX@.78l.MiMI5N2,<N(PH3MT)=[Ls0Tm*/qY-nMk>#4!^!2UN.eW
+WWso;bGFe:N65ciRa%`$M9NOpreO>t;(;GJ5pqrFW:7q5.[Ni+e#E!INCp*JWn"-BMTonF>cu\Zp'V=e
+a(2L/XS.QHWn2'qgTC2XNQUF+]%s)7a>aBdI"u"rp^@W>SO/3BB%Pg3ZNh81j"+<2:$VD!a5sW"a8c8F
+"+igHd!.qe!t0fM+KtQn7O8_*7:OYh`+CkGN^mU,QqRuS,EbW/Or6Zb%47B6A^^C-`aprp9kMk"`9)1h
+Ptth])>((U6_[Fke9XP1PtRuQC"3!57\s%`<GL'1`FcM^Y#fDhqZV_nA$T6RepBi_eSDTt@LqdXlJVZ!
+:i=m1'P?NG^0bg1q`W4@5eKX,F=7%U!?K*flSj2T(4UVMATH<@PQ1^c!5TdSBKRIP#CjW7YipI$,8,jP
+,-bgo@P\p^_IITLr.79MKh3PqBLDVp,*g=tZKZbR@ksIs-F7F!ic>WocR6'W"GThRSP^fBC-<c)8u9uc
+[-E'+UJe)A.^a$)@^B7?f.48orIVprZ.U\:CH\E@C:2eJ[#$=F"$a?<mFQ-eiq%JS>q`Fogr9d:TjT>@
+qi1GDLkK2V\E\eqH],GplW>^>EW?)j5i@`+1`d51J&:0+fQ9;#$\(S(0j(eh0c>s?j,r!dIR,->8E>q:
+1nIPnPt#1;flXr8/"')nP?G9LEB0RbkEFTkrddA/;!=-I2'.lOV,HQBg3#TQ;5mO[Q!1S%Z!"20l]p2s
+IQ\?o87iWA1ra<?MV>-IgNC6h;R>0:?lQMnnTg:#Y.u!QrY9aq@-P001rBWV`C'.h4C15qOhBEo=P8E%
+blE7/TQ!FQ)@ln!6D4t3CcWXLLr?$-8?>uJ(lZJ0EQIKm59Q'/UiK$XRSP>rb,'.#Cq<t-R*;FK8Z^Wa
+31S9lF33eFImB[RW,tW`)NRFb`1]ujAMR!\W77hi9!):#=KFt@oW%;)^L4:k.lL$PC,K7Tg2'g424CKK
+Wdnu1>FjCKB=?[#GKYF2VZXJ8.eh&eY"a\g`@q#/X?RAUaQ0XP8<-"]NIV!O:cK^9%0qPNiD@$p2B<<a
+6t0"QUfK&`N(.;S\E%fr+-9$(;E6"g9dc/tAQ$'L[TtPR9P.3`Ut0BAS5*]q\`EI45G1hd<&u<@NCTdB
+BiMZT2Oud[<,,DoU`Q.0XB'+:]&Wdj?a*UJ<]Su4")!2(//:f([bYK%fA\_#"hofl]NqG>CH)O_CqX4q
+=?IkCnG]g\YIFF@7gkC!A9(g8VH5@9bWm9>-l`j-#(sc90W853)\.YA+u(L9;C`N@`Zm4:gi>ItO2rS%
+.3+LD-BlRu19"Na>:u8d-8R*@dVB&::*G,oh"#eUT7CT2qAg3,4I&Y`dqW/DRnfm2.PXOQ;QE$]<[-%\
+*H&2iKN4qt.h*E3B!^2?[S!ZF'l0AoC0')KdbSiRdI+KEh=CGlQ<l7&>Q,9DL;W"*336FB)ihu"1-$nW
+;_+0Wjrb30'FkEQK0eH-QrG[U%>R=1&K$a-.2@b0it7[.DE/_u8)h;j'TPa2P=ajKR8f%nrg,pIcfkSX
+Bf2ASk7a95mWgsf5NQu*'TRYLR*fU^RT1sF6]snfdV<>gWE$!!i7/\s6AJ[H=6pMK4<hffX]ao^)ca&o
+D7<a6<f<5(iH;b<mh_JDmeM:G?gnmP((U_*_dW'PS5q9\NQ5Q"&,RrEnT2lTE\Iar$3p]c_4^:R9I^he
+L;T_T#`MA''T0l(nVGD(2]Rg-,Ou-LMFSqTaQ'R_9WD/FQHQ,oBf)8U,65ucEs^(UG<DJCV__JgQ9@!b
+c%%VH9e)K'VSoF>.Qp*a%t@TYeV_Ud[p6)fWO4esMP16T5HF;.258]=[bIqY$]W<lFLp;2pP[;]pO'^4
+YP8M9$O;@%iNW&l<4<SFZ/`+^./kG=Pfi*gprER:"Ts=++OG?m"r.Dr6@^c2KLQITMEdi_8Ao*t)idEu
+dJ3p"73dseAC>`kVH"Um6tLBFCee=nRS@DCH,Sif4-RlsPF;'SGse<'B[h>rVC__+ctV#+9h(sXW`<fa
+HGsK9:Tdc1ZDq2F`FH2VCt<r%VU]Ij>A_sgKuW4q\m94*Hc>.?HbNj*fDGgX"Y5nVX4V]X%i(#B@qt]U
+4sD;-M.<jEHNXBIrdVa,Y\5-\'+0H2+]*E266d,!6Xk%K]OEZ8NQ39Kkkp$",*BtmZ=p>.1C]Ve,r4_4
+_IG?hbpK^J'FkX)S^/[V$+0he6D;dTZt_`JP=hHG.C89O$C+MgeLItA]je<OXk,)2lMZ=P@^4T;[VJ%#
+dqZ;F/[jtn_W,[Ig?0(UFlN!"!8esJ>IDo^K#-Cr=:$62p]7!rWR>TF59Ya&jW`<XY$qD2JO&.T=>V'2
+$&(_)OP"Y=+VBQ!T@$a\<W*""7cJF?]NPIXO\"P`#kX]c.@!NeP1ark=Vuh9V%QoB#&uPl:?8YTUr%[K
+Thss;=u@@`8Yo>D1Wji(TfSoDl'5G[?EmY8<pQ%)omX_cYup@Y>;`#"Bsh.3QJ6PriGlD5m[%.chXNq2
+hX?^+c2Rfq_-l@^89OY=2SrqnQ@).\+d'lJYgBJ#:GDj!^n>X;//f$)KYjF%aD<mZ&:]3SECc`,0,9Gc
+UN)Z2qEGRRaJ<iJ/=K?_PffhCa_\Oq0UTZ9n*-'/3B3PSVf>;8qL:c'd&;%Y/K0[@Usc5ab&'23:oMmD
+F\8c>Y?7mWX*)SPHG<jlfW96h/M;<^[+]?IbAFiJE3S'!F,Q%3mr,dD06bV,q?_J_i37>CVA^h8`8\%H
+aokrOLWIb\\P0/10:78Si(uBY((CM%6=E^#A2YG=LdY]L32BS,(Q:gn;7P\14WfbVA5YE5Q;&`k8nCo2
+A@>bsQqV*j3Mb5C2k3WU:`oo7I6XB$5VtM2(6(hV:?b`hAN$)TW(lLk3i*$1riADd&*f-t]jHb"i7'Fi
+<dQ=$==mRcA[Y0#Z;PPk4/LLgB"V,]f=U/<rI9g`E*,4,(Cc/<@W>M_AiC`kaCK<o4Jl13Qcq]:n0f7h
+$O27#+Y]j"1)g^Y`$-oaS5LjQMo,N,W8)DT*fnAf1)R(g9+R3#UCsP2Z<JrJbU,+pSC212S'E66.GXJU
+3J:!PoI:joMaj/]B@M6517M%:e1*21$q?F#J^l5MWnh^-0W`1WegUcKb@\*7/N0X5WZ>TYfWDV5S^QhI
+]A>2"X53@DI_Xep3%Q*a$\lRY0fZ7>b-PorgbLa'AlC4GbMV4X#S[aT"bT,"&81nn)%D?giXm#l:+6p9
+7H4uIe8@8eO%87D)&/)E$'E?k&t)_%=Y5t5jqAVsc2T)C9d^UBeF%TFT0jsT)AEZ>rhE>(oD2H>R8'SX
+l4k/d%]NHZJ85ikQ#=-<Y?1'+)\nCTA[>P,(7S=,fkn3&mM?h-cKTJ`?1/C5[I/`N!7n>5*#9%kA>;A`
+=F!p<)1]TaneE]T;YQ<sAb-H<r!EZ3K#+,LLeK97"oq#anHb(;)$YRZU618UC,[,ma.r23%#RP#P0'B%
+.!Pqt.@//O;L+5DB/H(%VXoYgl?>@^c"6MS%16;AMc$+qkX?DR9W$:<oa6[NVc9\HWqD7oC:@HNf;nTQ
+%>r2:ZIu>QMbU5'CpMLMp@opDkB*%pDYK(6lM#/*^u\J:"KV]J!+.GTN(f*TK:$,Qq$`9U2iPPj13nZX
+rWNCU6"&&a6m`WVL-oCrpk2*_"TUtV0mKVu/cgpOA't)T<[T,T8S$7p7&Es7Q:kf;q1Qb!1R^`X1O6q$
+FW$XoB@H\\#),F=;/"I*74+9mVGh3YqLqD8;lWi4eU#2H[9Ke8CXr:cL8R,==_CX1oqo]D[TdV"qXp<=
+)kL:ef6bHaj8cjMDqFmiY4mLa@;V<soJ6/"\k$6hN&F0PPKHb-H$_XSrrRbf+L#NA+qk<;_]c8JHpT%j
+M8^[DBY7e1)NDc^Z0;+;6R%Z7,dM,HU/NP,b9aIYI)9AKRE[(bBtWGH3h=SEZg%DiK.-dt.(!_P,*PWq
+dcaZqI6s],WRW.&lF\I3=od/&[D35b!EHDX/@A+[,0al1gF]g;732\8Ip9(bCV2.['"D*qo[pkBX]W5E
+0Xtp]hNr]*@k!e(IR>?CalP:gCqa?Ys+*GnOB==\&IF.XiK2]64s:Mp7,j>2ZsGI)NCMrjf^sVY+d#=V
+P$'W5;(7c&jc\;$qI'm79]gjC[*iqSSPJ?(?juUG/tl,*PZfpcO\)BIij9&85(QD,<9f`PZso^iX4HU%
+g@]p2'!0Aeo*=rCd:p!lluT`1[LHiVh!UM5[GI*fMHb"cg=>3aJ\ba`Qs;Nk&W+J9nX/*T59Z02AFc-k
+D>Q$f!'m2r81Y)I#_^'gE6)iV*tX7HU2``*=t^_O`hROpm!:l=ON=5<8M$<+*eR(]ElhiTr@jI0VK5>1
+g2As@alTh=eG=Y[T[9WZ8hCr+4G$GpFNSG]T+[MUVUV':>$j"_<i^Acm<ZNTRFSB^8Tfd6BXHKqG0=a6
+hf-*\Y'3O@g@':!hQM.HmJ?iKZJ_s3$n`J0Lr@8OGfhU1'9C+CZ>lt)6Nr^)5N#?t,SggoKL0*D\7@K<
+%u<V_;)k@P/Jj@8@o9`i!^.We87V23,aM.PPY,Lb\R`,crg6(6;`UZ)CG),PB2cA%p3f/u:hW]T[2+`l
+OO35k\n*dj:T.6-<B?sWX]MT)CK7t-G.h7e=DV#"-'le:Qp76eRUrcR8@Vo:p3WXem<?37/^O=L9)BF"
+!,u!g[HA!S`('4bX<o;8O2tjAGheTd/XM()!"^Ou&dnnr_B<dl>V[6.LVtAjp[h?0(5p0W0rWlJ4!'I(
+,VgegP"R-casAgB>d?L!Qcpd4)%9C@/Xt$51TB1#HTn(K-o<Co&rT5SdO@#Q>r%mEVpm1R.\0J<<iae%
+26,JQ))[@HX>VRDG0=L(g+>4^rI-hFJ(X0CCL,BSG.LCc;<rYeqgQ<<.)6fBcNAp>i[B"%>RM4*a5f!8
+*+i)[-b_uV&*O]+#mGrIi=MAU/f>+R6fJ[pPYNYBMacY<R+-"6*KN_O&fDCD8L9QljV!t\Y$!?C9BHm*
+Pg3u#Rn`&ZRFLYM4eGO6&;V"r5sp;*.284N/t#G3;sG'S%8Nm&X&\I#R\`Ka?)6&Q()n!K@9`fclgWUc
+P1a]]>OE(1I@LC5\D?TiRq6p@!4lI>=<&(e$&,cPmSpgspDHiGA+CKWQ;8rpb@U8V#Q+o6"G4I_n;'af
+(CZ&9U%&DI8gb=1`M2mYb\B'VNlRpc#n2\],a-9Fnqg&?<s\k"V=P"Pa9+8e9r@N=I'RrYT$O>,$4R>t
+7&%Mq1l=uLND-4uWV$TCqPOaj!,4;/c"a^mY1KUOWJk_lrib"Vp5;Uf_ebjsXnN3_b3*l,>Aj1le4.Q&
+^>H-h$k<XMKYl]Ppl%ru(Q?AoZ2"agiiR%>?1L"3"9&H+JjEekGXNkn$\h#Wd.i8`,nl/)@aTG=Ai1Nb
+!$fne"GT>iP";@2GsnN0/!`h>deSR9.j"c9A?ko&qK4Qb:M8/Q"U9ZJU/><>GpOAo9;YX%eG8JUV,Nm`
+.b/jaB!kjG=(-5E"bo`'SNj#.](MrNCURGaf)(0@j`A"=DV'6Sk4O)8?Z4Qk]p9`aRXf3VHCQbpJAu)=
+f_gE'%u%p@nTc+m!WN4P_'#sq4<bFGKu5(<k^5]A&r8cHYeUBN1E)7m@^#!cJjU`EaX"0+4JGb(Q-1JZ
+l$U>o*1=en1MOM]F#ol<-aJ!hWbFend/XjF4X-(^V:-m#l?o%O.B,Pq5T7<OZW`=;/%+[@K#;'&fdsRI
+4egD?[G*:Al[?Y1Ek1!Y[qiVt[sGa7XE@1U!s=.ki?Xc64Ota,_W*A\koMGrI)k>(\SSq8!!%R8i/h%[
+rXfHj6K+$YF?Ui[M+$?c=L;Bh)3%,GOkB;T5p;@\?d`%5Sl$r$aQ8T<FM;0<R7ub,=g[%*3KV?id)f8d
+JO,MgVj",<*g'$j;X'G"FZuKrWDr/J>.%\A=fk`jQ.kn[_-sTNm#_ViT$]g/g?k3\FhZg9[+sT%MC_Zo
+(;/F@QeV/dk7t\fn<dH=*iD7'io'TjG!@-P\n(@l>dduo!.VeW:Zs>>$N>UnTlA(h3Zeoh`./FjXBI"Q
+N5agsaR"4)&s121E_.gN:FMIMV/j[o\mI.YbbfGQXP.SPSBe$RamAkR5bQK&F@n,'O%?(pWH?:"3hK6I
+dif?krE?C,X&Q-Bb3aMi@'J:[Q('@7a(Vj6X`hcrH85M\gMV4.XkN56ZUHM`bO,0+-bWo`(^r#9%uA0L
+Y^"=).j'kojKa&)Y$3QHJ3Vsg3$]7K#D>EP:q1$o*=mro@So+\<\5,H7Uo<*jE<[.O@Wn[3@'nb+b**l
+EgQDP!ABg6AlC^cenm@4alcU5jS"!dTMT<$3[GP=.Y1=p!#fDu@8$[Fj`HA;<ioH)<bk^Er7[iBY#oL@
+4!g3;B8&u)de`mmd;QO"DHAgR3brT1>q]9kjnAY&O]nFmqJFsrLRd9W=M/6)*KS9PE`kN%="Tc_5TfJD
+*"iV`K>JccW*D(s%YqtH0drPi.i+&_,;H.PE]XO,80fr>*0NrAPKG-_l!1Mu/sjd/1F\jBCGq[--?&/(
+H;c!fcmR7ebn>q(UXCSJWa&/M,GnEi2(G.pX&c:=l-_'#Ek>Y]fII];*1FcWZe?uhX'N"qA@L=\[k"#t
+lZTns0/orfo)!mNi%R,A*YN0KIoicE!"Hf9Ku`703@p]0)^r\I+:n5]%LE;k6/`BB<%]$tLI:&5(mIcE
+'oPN@&X_'c3?=.\,SCt/N^FkO8`^SQ<3B@UQV6HS)3g^a23H,G':IA<Gs.cqj7@"#%Z(^G;<S^_<A'\6
+Vc2jlaufG5;j:-0'q2oB\L!#2VKN<+Nlbk==mZuo<Nb"l[p/8:)jS_5Fh:rJ'+5LTZiI6/Dn#W2HLlj.
+@IY2)<'LVITgg\T9TCbTQ-2bc:]LV*#6]Xni:)Or.MiMJ_kHT+N(PH3MT)=[Ls0Tm*0/(7nd,_^7jO8;
+TX'(J#$3.;bGFe:N65ciRa%`!\O<M$.A"k^&Jt*IEC?PKW:YsA.[Ni+a_1*Gh*MEGWPG:9-hTO0>cu\Z
+p'V=ea(2L/XS.QHWn2'qgTC2XNQTFF]%sB.)BI,tI(nLAp^)*##=-)`YkX/NIgM"Pj0ACfAhtZrb2ob8
+8,r\p"+igHchKmT'aoa`@F4e&7O8_*7:OYh`+CkGN^mU,q#lF@,EbW/dWhhh<>^?]@%\Bj\mtf.!+9kM
+4JHs[Skj"Jq?7(W6_[Fke9XP1PtRuQC"3!57\s%`<GL'1`FcMNRFc6)q/pSoA$T6RepBiG_/#ImD:\T<
+`oRiA5d#<X`THi?P"M@o>GqW!K>M&9GN`W8&Jr7CDV/c[7jXAA8[6jg_uKf>J\`IipcK`6$AHA@YipI$
+,8,jP,-bgo@P\p^a!7kQr.79[Oi\lSBfr+g.[A1'ZKZbR@ksIs-F7F!ic@/OcR6'`r1XQ%!7<2oC-<c)
+!h`I@[-E'+UJe)A+nVeJ@L!^!=!Z>:oiAt>Z.U\4MTd!`C:2eJ[d/<9Y=&BAXqtleiq!M\_CPB&NM?SG
+]jWV)Cd'%)J!SM8GUg]p#DpRa1:_58@K?FZ5i@`+1`d58KgOa[fQ9;#&W&p8O]\ts0c>s?j,r!dIR,->
+8E>q:1nIPnPtL/$fPgn#0pt_tP?G9LD_@SUkEFTkrddA/;!=&+`?(.%U=/:jg3#TQ5CZYk1N3e0Bi2!5
+l]p2sI_c\nbTdi]onLk.[9DsZb8n<:D7Np>QWplS4(a'!0:1@N<qS_nhCt=%2BNNf`FAA)gibn*Oi_)e
+E@^`hhZ//ATQ!FQ)@m+,_P(qiCcWXLLr?$-8?>uJ(lZJ0EQIKm59Q'/U+ba^<_E@HJ0f6X?j9sjQqM%4
+8Xq,),Fm&WF33eFImB[RW"Xt$erMAUd]%?2D*":cW77hdBr&BD8?,^kFis)t^L2gsVGrI*Ak,:og9#PA
+D7\VDMqP2>H_&kl-^-p"2]M/\s+%oCY]rho)\7bCij!aPDE@Z=aQ0Gtr2s6WR".EZ:cK^9%0qPQ@8OIE
+2B<<a6t0!N"BI)jN(.;")!#E^'9Gaq;E6"g9dc/tAQ$'L[TtPR5Gh8EoP->dQqh9m\`EI45G1hd<&u:f
+AH&%BBXG?^2P!XB<,,<%[,.i(Ut0"_B`1]>?a*XK<]_UnSQ`C(CQt7[*mJW5>]*V)V:P$X]O#MX]B/bb
+J&#H#2X;X>f4i0-0Nbu"2][t#8n3"&9kmIWK>8SU-i=Sb#(sc90W853)\.YA+u(L9;C`N@`Zm4:gi>It
+O2rIE#oo+$-B^\<:[&:n>:u8d-8R*@dVCb1c6kAmgmW:JT?nuC.NK.[7Yabg1oaXZO%uV&.Q&]H;QEiW
+djm1-%<AjKPecSX.ijerB!^2C2QL,hgMXLU/iP;Odd%R37]Y.Agn*n^^Yge*/0*+6L7[?Y336FB$[]nS
+1-$nVf"I<kjrb30'FkEQK0eH-QrG[U%>R=1&K$a-)utmcit7[.DE/Mj5p+Ml9SNEeP=ajKR8g=l/XK,m
+',d%[Bf2AP,`l`a<]_&scf_YR'P_h!U=!TFRT1u.9rCqT'cN?4WE$!!lP5l=DRj&V=6p\A'opC.U"SfK
+M_2*bD7<a;(E8T2drgXTmh_JDmeK_f?Z6i%((U^j]4#[rS5q8[G/m'lR2hMg.@#\:,k(d:$3gN_^u4]1
+-jC7lL;T\Qpl%fm'T0Z"nQ="M2]RjuU[e^"MFSqTae\Ka9WD/FQHQ,r$&m#>1n)[do81]VG<DJCVt:<*
+$AV$DdAZ\p9\(:ZVUMO6.$S&8rhWVponq"/[p6)fWAP%m1/Ci,7P"1j9rcf][`C"")',%!FLp;2pP[8P
+huLGtYP8M9$=S>!gg`9**\/%c`oF8tClLY$Pfi*nq1o.P"Ts?B@*j-d-5?oC6Xe@:KLR7$MFD"%Gf42O
+)idEudJ3p"73dseAC>`kVH#.45en$.KYR[GR*B6lH,SiW!LQMme+s4PKgVS3B[h>s-5/D:;eIologY3F
+W`<faHGrXM2QYMGeb]N)`FGRljn;>9VU]Ij7Og(T*PR):\l12iHc>.?Ha[1[='Pq6c[<T<E7fP--P_QZ
+@r^0!L.<O[_.@RG4N%:#!eJ01Y\6-C'+0H2+gC0X66d,"`?MR#]OEZ8NQ39KkVrW2,*BtmTG]kX;^@FI
+-*lc__IG?hbpKc2]]("_SU`(Dl2:[96D;dTZt_`2Gq,Ug.CAAg6DIGXd]0]h'KuCuQI_\Y3rOZJ@^4T;
+ZT>dodlW1`BQi,f_W,[Ih(H0P^#JX0^#(KPlhsT9'=Ci9i#F#/!K+kV0t?Q+$JAXL@O.=UY!)jcJO&.T
+=>V'2$&(_)OP"Y=+VBQ!ifR?M?83=W7cTW`Qi]PsO\"N\=Yu^I.@!NeP1ark@540Di6jWmhJ#!@:?Rho
+o_sD-Q;-S-=u;Cr8Yo>LPhL7DTi%$$lBPP[MPXIX<pQ%)omX_cYup@Y>;`#"Bsgn)i#?fFiC(*/m[%.c
+hXO6g?KS^9oS2sg_-lbu]Cm$QM8`roON]mI+d'lWiqNAZ;_\9%^n>X;//f$)KYjF%aD<mZ&;\9!ECd07
+0,TYfUN*4(H6`KPaJ<iJ/=Jm+Pf`#p#i'_(*14sIF%NIeD`F94VfTuHqL:c'd&;%Y/K0[@Usc5ab&'23
+6']SX1<Ch;X&tM6.s9#%HG<jlfW9/ZPtk=^XP#1KbAFiJE1u!$<u\9qms)M%WE21;qYu)]i2:c]/=nRL
+_;__Eb\fII++iK[=ZBBq%@DYG+@#o8('b(t5N,GKA2X;rL;2^9k_rOo(Q:gn;7P\14WfbVA5YE5Q;&`k
+8nCo2A@>bsQqV*j3Mb5C2k3WU;n:u_I6XB$BMsYVRLr&c;JB*d-jH">NmV:_#gGts=0,G<<P%:8]jIpB
+U,;`nQB)ie==mRcA[^E5\4<XIH]?VDGJ%7#<sq]bk6&EUE*,4L(;YF"?gQ:s4rYN'aCK<o3F2@sMLiPC
+0H^K2$O27#+V4?Q1)g^Y`$-oaS5LjQMoHtrW8)DT*fnAf1+=3+9.#kF,r2H)Z<JrJbU,+pSC212S'EB;
+WSI&k15+"&1b'LY8H,C1WALV\17M%:e1*=)/J>*bWR`RWWnh^-?B`p4d)nHH^Ljh+/N0Y8Z5mJ2fO2/B
+S^QhI]@(QdHOL/^EJ*+%3%Q*a$\kZXn$i4#M[tigj>&_HSl7/*bN9oXp_42E"bT,"&=?EL)%D?giXm#l
+:+65E7H4uIe8@8eO%84!2tW+\-'Lp^&t)_%=Y5t5jqAVsc=o/*:$31X"R^OPSBpC5)ANa=7AE`E'UVSd
+!D97gl4k5&:8q6o:d?n,AR;oQY?1'+)\g/5=THo%dCBsSa)/:imM?h-c2T#<9rXF^e`JZ0^L-II*#9%k
+Ku7?h(n=VZ`uDDC1(fIn2QM"YjfsmPr!EZ3K#+,LLeK97%#2ZnnHb(G-PVHWU@F&`C,[,ma.r/i"H#\p
+P0'NjM)9f,rg(@]YN]<7B/H(%VXoYgl?>@^`2,5WI(F_oU=#q3MG5Re9W$:4'F??TVc9\HWqD7oC(i:S
+e8+aa*H&o.ZIu>QMbU4$@CFpe(;#RKkB+;kY4mk!lM#\?hllPhIL?C2_Vq`oN(qI,!ldXud>T,=`JVh"
+ZMB:YrWNCU6"&&a6m`WVL-e-:pk2*X!K'8gZ$=3!2&hQGA't)TL.*>M8S$7p7&Es7Q:keml%Bs_reX?]
+dcn^4FZZ0jB@H\\#),F,c(\'#%2tKjU-`I6g4`"m;lWi4eU#1)Pt7b'CXfB/L;dZ.=_uZ97AeUN[TdV"
+qh<&/:PIEge]Y@Pja4^KDqFmk#!m?_@3Lp%`TES?`aa#@r.Ro]&'3jQfmL^=rrRbf+L#NA+qk<;_]c8J
+HpT%f!(A*:BY7@l)NDc^Z0;+;6R%Z7,dM,HU/NP,b9aAP`56">R6r(FBlr?U3h=SEZg%DiK0l9Z+`f\-
+,*OaUdj_ZhI6s],WRWK+C;")_>-6C,[H_TY_d]'9m'^[mU=3kbgEUl'Hs59F\_SmICV1k/GeMuf\*O"p
+#oE[$,.KlH<c%cNj"\(1IR<!J_q?d_Cqa?Ys+*GnOB==\&IF.XiK2]64s:Mp7,j>2Zk*6U!64%Rf^sVY
++d#=2&U?4);(7c&jc\;=^0raa9]hOA[,,d_SPJ@3g%>8p6(q-=PURn"O\([4Bp@=o5+tiQ<9f`PD(;e^
+X&ePOg@]p2@A$Y22CgYVd:p!lm?4LqQJ6Di>jdq_Zl\*qNIYOUHhIC>J\baOn*Dl3hg;G6WE;i;59Z02
+AFc-n[U1`hJ&%^r81YYi#_N+#E6)iV*tX7HU/745qC`VC7:5S/oPQl9ON=5<8M$<+.$VlNEli./?SIkk
+VK5>1g2As<`8SKLm-]<&SC"3V8hCsB8>O\5FNSG1JI\#:C"5hX>-D&0euNr9llr,4Y?7lL9.cUYBXGWk
+E%;+',AOaDY'3O@g@#cb=)IH[kQ^iIRU2aDlc'kSLrA;XGg(%e+-=S'0H!Le8i;c^5N#?t,SggoKL0*D
+\7@K<%u<V_;)k@P/Jj@8@o9bsG!-q/87YP9"I;b0PY,Lb\MS1%09OIj;`UZ)D)[t[B2cA%p.6b7ct,#u
+,o2J1Uf(o+\n*dX07Q>8P0.oJX]MT)CK7t,@\HVN<:!XH*Ho\?Zs%<I]4JDe@"R&a=$%G6m<?3LDcaR4
+pAKKV?uSutVAB[n_;]H:]Oj)C=2X*,f*m+0/XO[H+7LZu&dnnr_BCV3>V[6.JUeq!.%F0]%u\FP0rWlJ
+4!'I(,VgegP"R-casAgB>d@Q[MTd8"l($1;2Ohu>1TB1#HT6LO-.<bQ&rH[];COH&>r%mEVpm1Pg&q0h
+7]Y)g?lIg(&QG`3/2f"!P07IDg+>4`?*`4&Yh!\N.'8*9)nT>C2lkd*qgPqXn1dJqi^JR9i\<Eo?8?G?
+`oJm8/=ocj#d%/N!!j8Frrn$@i=MAU/f>+R6fJ[pPYNYBMacY<R+-"6*KN_O&fDCD8I9l<i6liAQ72p&
+9BHm*PepQ\Rn`&ZRFLYM4eGO6'H.[?<>_.OknKPV%[g%h;sG)9Ptn;YX&\I#Ral;d?(]QH()m^/a^qe]
+m1u0kY1$jh;XKeiQ-SW:]2rkDHe%Q[ID9.S2k1'_$&-9*lLs]W0*R0PA+CKWQ."QTJRZDK!!EW6"G&eq
+n;'af(CZ&9U%&DI8gb=1`M2mYb\B'VNlRpc#n2\],a-9Fnqg&?="KZ\V=P"Pb%EPg6"]_Fbj'C7!)7+u
+$4R>t7&&)-oSQ?m5lRXtkF``Pp3TH4eZ/;"c"a^mUX\50gC9%\A?smip5"]W$#-j&XnN3_b,\@<>3@Z0
+C\m4A^>H-h$k,c$C:iH/n7Yi9"cUI]Z2"fg9.,tHaY=Zh!!3<+JjEd_pd?GD$\gm>d)^l0,nl/)@aTG=
+Ai1Nf7q9sB"GT>iP"B34GsnN0/!`h>;!7JB%5WP8B%'>i&m[Sj:M8/Q"U9ZJU/>URH0"+%8>]="eG=kg
+V,OBoC=(+&lE=Ep=)6@`"bsu[XP%F@4%6$sCURGaf(bN!j^jn]B+UJaT(?p8?Z4Qo"pY<a_I7E2X0'\_
+MhB$QDu>&+-'QJ_EnPa9!!*.P_'#sq49u#rKE*+`k^5]A&rFROZ"UdZ1E)7n,I-J1JjU`EaX"0+4JGb(
+Q-1JZkqi0G.Y^6co4bksF#ol<-aW(9!eWh5d3<X&72D(ZV:-m#l?u!o;O12F[:gRUZWaK_/%+[@JsS3A
+7;R$[]qWt5WS+@2l[?Y1Ek1!Y[qi\:o+JH<0=?_h!s=.ki@qcV"nECc!8f":flfRjP0)f@\SF@.!<7U8
+i/h%[q@Npc6K+$YF?Ui[M+$?c=L;Bh)3%,GOkB;T5p;@]jH<Y&Sgj`*9')5h>bYX]R7ub,=g[%*3Lrq.
+P"7t:)(qUU5VuVL'E^^g:MH'IFZuKrWDr/J>."9-9!).[Q+FAP_-sTNm$:j5T$_8[>4%G%mCljs\5DIp
+>/Y1ED7s9EQeV35!E6PejjG*n#8)g3@e#i<N@O$AK44<'>dduo!.VeWE(DMu%g[j*TlA(h3Zeoh`1h6B
+(]l?-N5hV)=R:>u+HX[?E_.gN:FMIMV/j[o\mI.E`o_>6XO^l@SBe$RamAkR5bQK&F@c&XO%?&HBlUY0
+qO^3Te>dX`X]ho1XOaFpb3aMY8[-jK;(?qh%;)ftX`hm)]&.J:cn'B5D9D<l]\]i9bNrDn9*!!T<g[2/
+rJ8DOZ$=K/<t>hIA$UARY$3Q"J,g]g3#Di/"GB*M:q-?\*=mro@So+\<\5,H7Uo<*jE<[.O@Wn[3@'nb
+-^757;Rp>H>q(7s@e1E.RMRoQ:1mBpI.htQTMT<$3[GQ$8#0$s<4ZX!SPQ1WkB/h^;Bn#sa(lEYj`\=E
+YZP^B4!bfGB:HoAG$AOdh/Bf.DHAf^-4Bp^h(MjAjnAY&^fP@i*$uI2LW!XRG.K9#*<O1?E`kN%="R.e
+^]4oo*"iV`K>?C6W*D(s%YqtH0drPi.i+&_,;H.PE]Y>'a<WMi*0NrAPKG1,WEc`5/sjd/1F\is&N6-(
+-SThAnp<QmcmU_#*>49"UXCR>Wa.BD:8cSk2(G.pX&c,s+Z4T%Ek>Y]fISp1`FJuiIp+CHX'N$cDR\CF
+<a2(,j*&&k0/orfnf;hB!,skW250ts_r<C1XBm\%NelY'R2Go&.p9pT+:n5]%LE;k6/`BB<%]$tLI:&5
+(mIcE'oPN@&X_'c3?=/Nj"KX2DFFJWJ0bhr8-W3HQV6HRkY.:.24I>'':IA<Gs.cqkS+pM%YZX4!%=)#
+<A'\6Vc2jq)O4's%&;%H[@5W`\QuC?lkUH"?HHcFfW>pY<Nb"l[p/$=CR*2)E4]EE(RrtCq0g"[Aru>U
+%ga\Bi,AC\<\G>Ma'J3PN%P_PLr\WK&-r+?#6]XpT^[b2.MiMJ_kHT+N(PH3MT)=[Ls0Tm$iiemnd,_R
+3@'d0V"0@9W`La;bGFe:N65ciR_tpd)9dt.2P/6moEl$7LI@laW:Yr&.[Nhja^<R*77sIWWn"-BMTomg
+9s3*Knd)?`rEHS\XS.QHWn2'qgT<@ANQO[&Z,#eYqp"F#I(nLAp=l/GSJSq)nCS.E.i4/aj.\Fl`9NVK
+b2or)L]dV["+igHd!.r*'aoa`@F4e&7O8_*7:>$Z`+CkGN5_R>q#lF@,EbW/dWn6X<@aA.A^^C-`]kH3
+9kMjf)u=[]SNirlfp)bq6_[Fke9XP1PtRuGk4JM'fE5'B;ejj/`FcM^Y#fDhqZV_.5_@Z2p1SkDeSD*c
+Xk*B'`oV9Q?#J+1A`g#uZsE.Pr!!B0K>LQa[4i#5$]E#7ES12D7L=C_ATHIO_u]l>J\`J5BKRIP$AHA@
+YipI$,8,jM?dWOD=oAF&7jG;&r."knO@^\e8N`_G.[A1'ZKZbR@ksIs-F7F!ic@/Ob[WDR/HUPkTn"MT
+C-<c)8u9uc[-E'+UJe)A.Pp:J'!ib^emt&UQ!R<rWnAr3CH\E@C:2eJZ^U9u95_;r0"5W0iq%Jr>\L@"
+*Ua)^_;R)XCd"Z-LrJC/\EnZ2fmnc`Ej<iK@K?FZ5i@`+1`d58KgOa[fQ9;#&W&p8O]\ts0c>s?j,r!d
+IR+GD8E>q:1nIPnPtIi-flXr:0pt_tP?G9LEB0RbkEFTki`AF>!,.TG,nL.kIo>4S\+KZn;5mO[Q!1S%
+Z!"20i)FIa$FsTM=R;>X24i30N7$jr)caW2EOf?BQWph+LIe.<BpX2>rrI\e@.97MrZ5!l`FAA)gibjf
+:7l'i\;[k'+TR#-TQ!FQ)@m+,_P(qiCcWXLLr?$-8?>uJ(lZJ0EQIKm59Q'/UiK$X6ie^#b,'.#Cq<t,
+P>%Y<l)`0K31S9lF33eFImB[RW,ro2)NQV:9jcCBD*":cW77hi9!)8_0*'S"Q$VhD^L4:uXEI5fnrYH/
+>-2tkD7\VD[F4$"MlaeUGeDn:GK]CMF"+3kDV.Uarssq(ij!aPCs*3J_IKls9WhSQR".EZ:cK^9%0qPQ
+@8OIE$iplp6t0!n$s"_lM*kcM\E%fr+-9$(;E6"g9dc/tAQ$'L[TtPR9P.3`4CTNM!5p4J\`EI45G1hd
+<&u<@NCTd?-IZX<qOL3V<,,DoV,j^"XB'"6]&e)_.]5M3<]_Unc"FCeD-"/hHJNLu>9Ob$Q.G>H]O#MX
+S"q\6-+I?%;leak%>Vl2EEKdmrfr,*`N,BMVH5@9bWm9>-l`j-#(sc90W853)\.YA+j]AB7K*:F`W.`l
+`,[LGO2rS%.3+LD-BlRu19"Na>:u8d-8R*@dVCb#!+W@."PS2dT?nuC.NK.[7\eB\1jRn4Rnf!lW\l8s
+;QEj!egiVXg^]r_YLk(^=I]._A?K)f2QL,hgMXLCXRR1HlKM!S=DRIHQ,<EI^Yge*/05F0I"PaF1TW2b
+)ihu"1-$dQ.jpY+jrb30'FkEQK0eH-QrG[U%>R=1&K$a-.2@b0it7[.:]VSt8)t9Ggl=rPP=ajKR8g=l
+/XK,m',d%[Bf1Q7B+p][#'hAK5H#7l%,-P,UJ^7iRT1u.9rCqKPH'mCWB6\N.i"N'DRj&V=6p\>>uo'Y
+W_f>73X)D"D7<a;(E8Xbl#hd8i-&nclKs#7?gnmP((S<1_I;sOS5q9\NJZVf(Q<N5.@&(fo+20)$3p]c
+_4]]l9I^heL;T]-(lU?`'T0]`d>5/E2]RjuU[e^"MFSqTae\Ka9WD/FQHQ,r$&m#>1n)PFo81]VG70hY
++4Fs6$AV$DdAZ\p9e)K'U!MZHp_?7_4K?r3eCr/^[p6)fX7co1MT98/ea2fcV,#3M[bIqY$]W<lFJ;qk
+[u8MrpO'^4YO[$FR^%C[iNW*9:+I,QZt#db*#:=XPfi*nq1o.P"Ts?B@*j-d-5?ac6Xe@:KLR7$MFA\.
+Gf42O)idEudJ3p"73dseAC>`kVH#.494cQIKI-RQNl>VZH,SDo1OhsYP8XT/KgVS3B[h>s-C%6$;ea\e
+bsj3ZW`<faHGsL(>HV%Ce=)AG`FH2VCt<r%VU\qN6XoZa?,kuI\m94*Hc1BfH\^HrfDGgX"bXZ`XqA;.
+-?"UX@r^0!L#Wo3SB*(FI#J++!eJ01Y\6-C'+0H2+gC0X66d,"`?MR#]OEZ8NQ39Kkkp$",*Btk5RBQI
+;_"'U-*i@Y_IG?hbpKc2]]*unS^/[il22#s/tc&iZt_`JP=h\#.CA@t$<n-m<@RTU]je<OXk,)2kY4qQ
+'r]8?2JXTK^M:12/[jtn_OY+i>iBm/[A*8=Z<V=Wli$tgJrF%*\7o1dmrYSUnQ7o&6R.c9jXW<9<LNmg
+!'oJ(=>Tpg$&(_)OP"Y=')m_U@W;[\?83=W7cTW`oR9(LO\"Pr=Yu^I.@!NeP1ark@53d.VNY/IhJkQH
+:?Rhoo_sD-Thss;=^VGr1o*C0oP/M4Ti%dglBPP\??[$374WBSe=(/]Yup7uM`%*RBsh.3QJ6O#a`4jr
+i3rNjhXPm)?Kp'7p&;pX_-lc">W*Z9M4%JFGRP'4+d'lWnsNai?PrhDJ3XZ:/,g%bKYjF%aD<mZ&;\9!
+ECd070,TYfUN+BAH9WO6aJ<iJ/=K?_PffhCa@$eN0S;b8dn+B0D`F94VfTuHqL:bo9cqk'/K,EmLJ2E(
+b&'$c8Yae8F\8c>Y?7mWX*)M.3ko(,djqk"/S:bi[+_X*MF?#=@^t3p(;$^&ms)M%YBS1Vro\fuhlq?!
+/fP=W`8\!<XDU*AON?LgE]dr40:78Si(uBY((CM%6=E^#A2YG=LdY]L32BS,'7WJ\n[RY'4WfbR^_/XQ
+Q;&`k8n=)&A@>bsQqV*j3Mb5C2k3WU;n:u_6Rna*BMti&(6(h[;JB+AAMuhAW)RLglD7O`=0,G<<P%:8
+]h+@eCfMu3Ia)N4>&@<PA[^DMZ2cKN4/LNqGJ%7#;7hhUrI;UjE*,4J_W-E6iGhdEbPN*:aCK<mbXPWe
+PKZ96n0f7h$O27#+@$3;1)g^Y`$-oaS5LjQMoHtrW8)DT*fnAf1+=3+9.#kF,r2G*#$VptbU,+pSC212
+S'EB;WSI&k5+g1M1:eJ=MajJ`je*M\17M%:a/CjFSPlLhX4AdYWha*h:p8M&2Cff2b@[O#m5D"NZJ09+
+_!LeGS^JTPY?c'*X5$n;I_Xep3%Q$fq1cfH0fZ7>QO/\mj>&_EXtqSoUY[*n#S[aT"bT,"&=?EL)%D?g
+iXm#l:+6;G`Sp:\e5eRMO%87D)&/*&-'Lp^&t)_%=Y5iWV@WFnc=o#&:$31XeF%TFT24Yb)ANa=7AE`E
+'Ui"l%2T#fWYHG;:)Qg,6>G%seS_ksV:Y&L)\nCTA[>P+'1o:Z]5>#]mM?h-cKPG4_(?ImeaE6]^L-5l
+>S[hVKu7?d\-uCk)3)[HkLb`Z:0VqbAb-H5":>A:JH0*I=@`Jm%#2ZnnHb(G-PVHWU@F&`C,[,ma.r23
+%#ROoKh8*2M+jpN/=+JUo*LAuB/H(%VXoYgl?>@^b$hXA%17kYU=#q3MG1/_!Mr_ooa6Wb+TAC_.eS\D
+C:@HNf;nS#*AXI%ZIu>QMbU5'0X+c`pBuu'kB)bb?dT6mlM#\?hlle]FcNAB_Vq`oN(tGsN5jn_q$`4s
+'pQl&ZMB:YrWNCU6"&&I"==ikL-gDEphWDG'8f4fd<NTA2&hQDiSYPp689RBa^ihF7&Es7Q:kf9fK@/b
+1R_$Mds8moFZZ0jB@H\\#),F5_dnr,74+9mVF7BTg4`"m;lW:Nn]2_O[9Ke8CXW'mI`5g&=_h"5-)T4.
+[TdV"qh<%HB"D8cf6bL!oglW#DqFmk#6faP87WOL7OJq/`a`dd9SQ%`PKI9QfmL^<!<Rhg+L#NA#QkEe
+6Qr\tHpT%jM8^[DBY7e1(k9RNZ0;+;6R%Z7,dM,HU/NP,b9aIYI)9AKREFPgBtWGH3h=/s5T-s*Gs\4P
+.(!_OnnC^mdj_ZhI6s],WP@[4C;"(r6*/%@FisZ7_d\MD@J*8VU=3kbgE]S\ICA0V\_SmD4#Pa`HG/2h
+ZV/:7"+n'fn?;0trsOY%h67a?IR>?CQt*FICqa?Ys+*GnOB==\&IF.XiK2]64s:Mp7,YidZsGI&MFQWg
+f^sVY+d#=VP$$LO:]Q\Ojc\;=^0raa9]hO@A>V.@SPJ@3g%>7_3/g12e63"sOZfGRWAN=O4s`ORe1-_e
+[9dQFNE.Qpg@]p2@'*%o<]^b^d:p!lm?YpQ[c)5:8T"2`[GLG!Sm?89g\'_)J&,O^Qrp3j%>i%tYo(,s
+59X@QjDpYk2GYn)J&%^r81YYi#_^'gE6)iV*tX7HU2``*=t^_O`P<),m!:Z1ON=5<8M$<+.$VlHnbHi"
+="p#cVK5>1g2As@bG4Pegj4$,T[9WZ8hCsB8>O)bdFqS]T2;K2.?Y%'>-D&0euJC7I;Zf-YgdHs.kR49
+BXG`pQE+l6hZUAm/pBsjg/E%(hQM)Ac1:mb^tgZr/1qinKYufSGfj%0'91)oZ?]%h6S"OS5N#?t,Sggo
+KL0*D\7@K<%KJn+;)jLu/Jj@8@o9bsG!-q/87YUY,aM.PJ]/p##t24-0:5FF;`UYN<th%JB2cA%p3f/u
+:aYdk%2OpnUf&U\.SVgl:T.6-;bC:qVcTs#CJ_UDZF=2F=DV"u*HoP;Zs%%lCK7h!Dn&]FZYEdcm<?3L
+DcHUFmeqX:hf'Dp-5P'^_d[UabXO6+O2t;*\K%JI%?nt#+7LZu&dnnr_BCV3>V[6.LVtAk.%F0c(5p0W
+0lR894!'DOUbXA=P"R-casAg@r-hfLQ-:R2.@eh%2Ohu=dcgVkHTn(K-o6/(HA+h`dO@#Q>r!-_NkjoM
+$>i\A<iae%26*KF?X'_d/2Xs*MT]V<g+>!o-*#^;\&GJ9$_>`3G+@?jpT**so6e=20K4@P$O_]]@5.JX
+?8@Ru`oJm0XF<emQHR@B!!j8K#m,Umi38:G*Z5EB6fJ[pPYNYBMacY<R+-"6*KN_O&fDCD8L9QljV!t\
+EYSbCbN9HUPg3u#RnI.QC"2Qr4eGO6'H,uk#=>1_knKRcL5?,2e*7YdPtn;KVS_W+Ral;V=0>Wk()n!K
+B3qlHm1u0C2UuZR>OE4629+m']0\*9He%Q[I>ltLGO-(U$&-8bYW.#2/o-<`A+CKThE*$Kb=Ak"#Q+o6
+"G4I_n;'af(CZ&9U%&DI8gb=1`M2mYb\B'VNlReX#n2\]+cja@nqg&?="KZT,a/32\n<jgc)1)hbj'Ba
+R)p_?$4R>t7#fNgFBVBgQV=:*V\FCk5,VA[eYfemQ!Uq)Y1K`Fb0=Z#@^'":p5;YFf.OA`/b]X30&:QZ
+h6-L.[F4Yo^=MasljaC.IDB8Fpk\&O'9'rkVjP,G9.(FpjYHXf"9&H+JjEekGXNkn$\h#Wd.fR%,nl/(
+U(MXgAi1Nf7q9sB"GT>iOMtbG#pcBJ/!`h>deSR9AM]ZEiikGM;JA4a:M8/Q"U9ZJU/>>TR%5.\9;YX%
+du$PfT2VaiC=RXK?DCE"f5&q5okqTUZ<;"pH!Q<TCURGUQE,/Jj`A"/DAQNrk1=gj?Z4Qo"nMbI_G[U?
+>Xg(U=L_f0Gl3:d,uhoqo%A8@!!*.P_&uPK4<bFGKu5(<k^5]A&rFROZ"UdZ1E)7n,I-J1JjU`B_.92F
+*26@]Q-1JZl$U?B"di"2ZY@)3F#ol<-8R%ip4G]*d3u8Fr;qsNV:-m#l?sS5#,kNO[;*?hV'i?G/%+[@
+JnnPofdsRG`K&8Z[G*:@HV=@sDRnRU[qi[#j`nJr/,-+4!s=.d?gr;V4UVXR`T&\^R[-#[P,%(nH#13(
+!<7U8i/h%t*Y&1(6K+$)6p;b+M+$?c=L;Bh)3%,GOkB;T5oGEu^_.MASl$r%9')5hFM;0<PY!%).C@rO
+3Lrq-dn"$?JO,u+k`f7.*X=l_dV2T_76[DBWDr/J>-u/9:92t3Q.kjGZX9t>m$:j4HGaC'>4%Kr9t'##
+\QnEcqk`0>>J"3[QeV34&UV<$n<A;9(D2MC<H.`GG!8ocaCOk0=`qJ*!.VeWE(DMu%g[j*TlA(h3Zeoh
+`1h6BXBI7oN5hW4aR"4;+HXH*&kOXC8KsDAV/j[o\mI.Tb^^?5XP.SPSBe$Rah5np4eU0#F@n)nIjUpg
+WH?:"3hJd88SSu4X]h]%PZ@$lb3aMi/?I)I(/$6J>@OqmX`hm)0%4^JgobTXL!oF7]\]@VCUNU1JAC*I
+E]VJZ%u?idYrKsF3d#nljK`cQN`.TuJ3Vsg3$]7K#D>EP:q1$o*=mrlJ.Xc:<[SK<7Uo<*jE<[.O@Wn[
+3>>Xj!0Trc;Rp>H>q_R=AlC^3Sh2dh:1mM9jRtr!MU/5#3[GQ$8#/gl&P>bUSPQ1[.<0Zn<ioH)<bkP^
+S.;GFXk7Gj4!g3;AZseS<kDnBdquU"DHAjc^?KjS>qX`ujnAY&NSa.A4=&5VKu@G?<Lc6+*KQKGEZ%!:
+<`tU/5TfJD*"iV`K>JccW*D(s%YqtH0drPi+omP@,;FGEE]Y>'a<WMi*0NrAPKG1,W&/6m!.i=g;Rr=G
+CGq[--SqaWnp<QX9OfmT*>49"UW@+'MFB:i:8cSk1V-P'V,jYJ.ks)\^9q:NfISp0rGoqjZe?Yt>>;EX
+DR\+IG70tilN4V&Y;`N<neZPbi%R"RrX0*g_q6SD9L^fWNlT_UGmp9BJQ0eS+:n5]%LE;k6/`BB<%]$t
+LI:&5(mIcE'o%5`&X_'W/KKmBj:W=EN_(O\8`B3M:]aKGQV6HS)3iE\24I>%EOiaMGs.cqk*)1_!f9@@
+;<\d`<.]fAV9*)p)O3Lc<NB&.Q"nie\QuC>lOqA=Nlbk/fPK-.<Nb"lK\@PM$['bZFh:rJ&3H0>q0f^.
+n(8Tq%gdd'@IY&52CBB%a'\-Lr03ABK>lpC&-r+?#6]XpT^[b2.MiMJ_kHT+N(PH3MT!:BLs0Tg(66G1
+n0djc5pVW8V"0@9WXg&7J0f7CN65ciRa%`$M9MPs)kBd&oEl$7LBa>>W0E06.[Ni+e"TfTbRUBfVq%g?
+MTonF>ctlBP5=j/a(2)M/@LI2Wn2']eLe6<NQO=q\_XF_Mp2=hHG8:9\'+aY#DBhLE4Cj$$P/-7j0A6h
+Aj[r1P%:l/L]dV["+igHd!.r*'aoa`@F4e&7O8_*7:Dhp`+CkDJ]?`c#df=T,EbW/dWn6X<@aA.A^^C-
+`_dh;bbij7`9)2(RnY,+aor!'6_[Fke9U[uO$\=pBls3*7Lr(N<3"Jp`FcM^PuT(Eb6<Vl9n-9@2=!,s
+eSDTt@^_2;`oV9)gb+q?`THhP]3asXqi1=NK>M&9dFtHAPD@.fES12D$R(_V9Cc4j_u]l>J\`J5BKRIP
+$AHA@YipI$,8,jP,-_[^@P\p]7AI-NoR]4MOi\lSBfr+g'ogB:&ug8q@ksIs-F7F!ic>No`og:br;qNm
+Io'b+aOM&i8u9uc[-E%QNu=lfW,Of*;R9Q/_!4e>jatBZZ.UZcl#i<@C:2SCp<.m$j)V]ID9sf@ddqdu
+h_2J(m<\ea_;;@49Kj[7MLXTg1<a&k`Jqt#1:_1t:&t<F5i@`+1`d58KgOa[fQ9;#&W&p8OSABR"osWP
+j)J2nINKPl7q<681nIPnPtL/$flXr:0pbGlF"+I/CH%eZkEFTcdR??n;!=-I2'.lOM,5F]Wc^M!;5m$!
+OfFsYZ!"20l]GAQ=p875=)=1,24i30[7G*,]61jH0X4l#QWplSQ#jFkY8>s4o)4-U@.9>l"r@k@Yt6N,
+HqlmLOgsGN;0VXg.0+k5TQ!Euq@<a__P(qiCcWXLLr?$-8?>uJ(l//:EQIKa1E_e#UiK$XRSP>rb,'.#
+Ckb),!)'218Z^Wa31Rs"1$R3aImB[RW,tW_@X/uFdNaukD*":cW77hi8pr<V<NOcPFi^+[AR2OmXEI5f
+ZG0:i^S-qgKppn<PM.WJ9<Hq:FLg6]Ft7D"_g9%)Y]rhmRfcj/;K1:3INoenaQ0Olr17+G5_&hW:cK^,
+rs+3D@8OIE2B<<a6t0"QUfK&`N(.;S\E%fr+-9$(;@"h<!=4lTA9,4k[Tt),9OkCFoY)h4Oj5<$RFHP0
+4.oD`;>EluLI\.<BiMZS\r-Zfe7`pu<Dm`jK@Qu#lG[W_>-D%;FSI_N+_7rOm+/d[[R4`;:@&c8(!^l+
+Ls7R'\aAeaI_&?.(`Xk<R;'TJ0R.DE_XT1kj70ZBV'?dr`'=;6-l`j!#(sc90W853)\.YA+u(L9;C`N@
+`Zm4:1_MkPNQ<A#.3(AH-B^hDcfmj'2(F\\jfl:Sb%inm8#+OYh"#eUT?nuBC!:aS7\eB\1[1_cRnfa+
++L0(J$D1A"eg6R%X_tIOXN`9'q]%f!<O,d[2QL*NbQ,(V/TrY(WonK%gT;7Wh%oI.^X@$[$m$%FG,O<g
+\#VD;)if[11,UQ,$Qk\A@UK`A'FkEQK0eH-QrG[U%>R=1&K$a-.2)\Mit7Zk<]LYL8)t:"b]ZQ(P=ajK
+R8g=,,)f/A',d%[BafJciA5]M8p*"DcY(`G'Zs]#U!`*=RT1u.-DH#>[2P<*WE$!!k]HS?C9_'-e)g('
+$oU9MZWA:C#n:e&D3)YH<aZBJkm!eFmP]Dlb23fB8DtA3rHehRZsdqkS5q76LW3im(L%Um$%fqRj:DRo
+$3p]c^u*Lp1^jBnL;T_SW/O=j'ECOqnJJ>o0cZ4oU[e^"MDYm+8Ye+59WBNhQHQ,r$&m#>1n)DFF(rk`
+>:YHEVpXbI@M&O!:nX$+9dg*;Ro60RaSca:5_%0)F\&n-[p,WZ/+s>[MT6C3frDJO<I3,1[a8Sa3F,qp
+B=c82(Md<fpO&@bXjGd0#4ibIiNW*99G[Yc`mu^2q_gp-Ju?k6e;+))!<7X8T[64t-3Xd36Xe>$9I^/G
+MF6CN(rU#D)idEudJ3p"3>R??UsaNVVH#.494cQIKZ7RWP!\;PH,S-H4.XUYPK;Msr?n5VU4=.5Q;'r+
+;<Ke4KglY>JlO:#HGlNu+d,[#O=AE-QXH'/jn:)#H<FpB>+bN3*@eH+SC-a9Rrr?95+^X"fDGgX"bX/=
+E0tp`P!)jL`%<Zi?'89HNFa_elb!8u!eJ01Y[@SX#7(;qTs3a.66d,"`?MQh>[fK)NPOH!k^6u0,*Btm
+;9:qp;_"'U-*lc__?D6=b\"1pgkII,N^D]'88NU(reXE_;u+ou=$`HVAQ+sJ/diqb<+#9#D-h-aXhj.B
+b5Hq0@^4<-G&'5.a\8\fXg[I_?F)/ldGgF;XJY(m!8fFaX*t-Q0!edL(i);C'8jch.TPhQ6BQS\e)h>a
+SDF5GJO&,^=>V'2",0"6&D2(C#nMk\i@r?K?83=W7cTW`PV,3$O%A>p=Yu^I.@!NeP1aqt6OT7)k)u[%
+H9jE@c=!u(Zs"gUTgU:@H1[tYs.dl=PhAIE'h"ukWRY1ZAsXEt:nQ,bj>I6MN``"*R&-618Wm7.Q)ZAZ
+\S[qmj1lVA0'-ZU:[43loj4PC^YnUK>W*Z9@)1cAP_kWneIT=H/U/[-:EKRd^n>X;)u:'I!(*Au=8X*;
+%>;Tm:p:'l0+EfWi'8.G@QtusaJ<iJ/=J"+MTOf'M);):0UU(]'"P*tD`F94VfTuHen5bj:oJEugoaR'
+Ndt[TBg!XD%&2*ZYkZ1,5?388?hJ_eC3*[_94YIL-(<-_TNWpjbAFiJ+eW)CG,oK2iHW#[lLap9I\BJf
+f&DoE/]Rqr_8YlPXDU)81UgXFF#m>@+..RCi(uBY((CM%6=E^#A2YG=LdXK?32BS&&WB1h;7P[6.34+4
+j0.\mH7pCr8>@nI"E%3MP!>Y'pdE,!2k3WNZH6YBI6XB$BN.#=(6&Qj7B#jiA/].bRmQ;EHAiJ>0rMm'
+Z>".+908?TCGFP4rl7a?>&)QT<O0qc\54`a\P7f5DmEZB^`2>Ql!gJYY7eIt6GH(.bV8`mILbgt\E%O.
+lL%:sQcq]:n0f7h$O27#+Y]j"1)g^Y`#q;NS5LjNLrLYoW8)D,('$j4nOVGq6NrXk,P#N4?6^kLbN71)
+,fWnDS'E;LppB/m4.jkJ1b&Y%MajJi.5\#h#+&)Sb+l:FACdXgWm'G[)VjJW%B.;tco:W\4^"ael1V.e
+$J01)gb(G+*Ra7sUJUA[X5*P!A:I9)0`&_>R5qC"@hpSd$Mf_&?>-faSl3CcbN9oXp_42E"bT,"&=?EL
+)%D,s+qYZV66-f!7H4uIe/fhCIn/M'0Ec8\'Ttgo;-<_l#:khSV=7&]Sc:F5:$31Wgko#kT24Yb)ANa=
+7AE;LOZGWXR0f?SkHkSDegE8P8Z<G\APOs\W^u'U)JtMV:8H*MoueqiMe\4*X*(AkH3OD^7P5>^Q"Iin
+R,&p0Rsj_b&t2Im<m4PVdtG^#neiF5:4nP?jYIGQr!EZ3JcHq_=A11\$A3jPOU)X^,8>mL+tr0(%OW!O
+_./U1"E#4rONA[9q(-gs)1P9?o*LAu'.96k-?3b,l?>@^c_g;k%17kYU=#q3M1k_h9W#]Q<#UFYD_7Eu
+Wm[==G,7N\95.;(NJ:qJQdonolV0:(C:;m!pBusmIrr9XXV33rb4fhXhIO'?-!j@uN7hYWH(H?!Mi-Da
+ptOq(-PX6]1%b5@!X/[X6"&&a6m`WOJ&>^Apk2*_'8f4fd<NTA2&hQGA't)TL)UL#8>O[Z7!\_]Lr#oC
+ktFhW0o/HZdlBhTs#,j3VN:QFelb53;.K/h2("S]VGh3YqLhb/;6!RY19)>r"[AAAl`j$gnmu$c<U*UV
+4aom&!8D7sqh.#.>(p4!eB9^Mo4bR"CfTffk5u[:a=sl84F7_R[X`@;S:09@MM:-^fmL^=rrRbf+L#NA
++qk<;_]c8JHnYR6M8^Z9#eXV&)ND[EZ,lhhr?@*>+OWf&;un:u8`?u-*2Z(IQpmj8=^9s-3h&`NONA14
+'0W&:.'Xm(+t#n]dAXC_I6s],WRW7.g9"h.0<E!*Du#>!JO5jJXHJJuQG!g:6`a4bS[ob[RS'WIBjG'6
+HG/2hYmP@N"+n?Yml0Ss+phS[9<B"$I0/(Aa]Ru;S7X)Js+*GnOB==\&IF.XiK2]"![//46m9p%S6dof
+NCMrj\?(-F+d#=VP$'W5;(71=AQ%3'^)n#R6tR!eUcJB6ONlplM9G`)4I=Em'<1@?OTLhHBp@=o5+tiQ
+8h"mD[2+<9U/`O<R(TT6;Q\A[nTk';_cO6EWjQ&:^1m\Z=QS+ZZr1[]KjLQ5>Ju!g!/e^4dgP5t%ss+;
+J20f1-4P[=AE)"\VI)%XJ&%^r81YYi#_^'gE6)iV*tX7HTn!EM=t^VI`hROplq/r3LVKX(aW((>(5L%B
+crgLW&MAd[i:@db>"o3hbNErgm*\0:O3f:s8hCsB8<D/sFNSG]T2:Qql8;0*euJnD95$+0bR/=kX[2:a
+q\1C%4fd-]oVlDrf5QPqmPde@g@&=ChQM.G1`FJ=Mu[g?qo0Q=Dm`e#p#q,G[r&0UE`jAG>:joH5N#?t
+,Ra\YKL0*D\7@K<%u<R1YrJO[/Jj@8@o9bsG!-q/87YUXbXP/OPY,Ghl"%4S&s1<`;0YLS.l*SaB![j=
+mWh$i9]X\A,o2J1Uf(o+WZ<^_8=rXl1.n'7ED2#6ht:*B?F=.=6m1&2"d[%4X]Hf,WMO4Y$B\OC[d"=E
+2dVR%0)#`2p4#fO?uT41-5Q2`_d[Lk#b8IbNh0OLPO+"Cks`]Z!"^OU&dnnq5_'Dj1aWkDK#=;P.%F0c
+(5p0W0rSV@3s1(!UbK=NP"R-casAgAr,,^kQcpd4.@eh%2N#Xho;UN^4Zo6-,&nHIqB\L\aC!FH%0@8/
+OiLpQRS>u,194@>25gB7[pH8j/2en=Y01F`g*tNC7?6,?T$o97We<9sF,X-Pe;4mjo6n.'n2Mi(G3*GU
+i[hT%?8EO\Z<K'Z.tuP\!R'An&,6hK#mGrIi*Zgi+rLiF5N,HN"?n7LK1'1rQkX!e*KN_O&f=#/8K<ja
+jV!t\Y$!?C9BHl_/='d'Rn+gQg!"nZ"b0>,1.f-=(IOk6U%?tq/t!EAd%b^Yh);64JlJaKW[t`Z8Zg8f
+&aB2hZ"8Pii-'t=IOeQ`>+ueRc#tUVX'Oad=InIIID9.Y'jK5o$$3XOY0cLb\d=52?KO.-V-a`:alM[T
+#Q+o6"G4I_n;'af(CZ&9U#6388gb=1`M2mYb\B'VNlRpc#n2\],a-9Fnqg%p+"W`$V=OsLY%%V8c(U7J
+9]d-QQ:WDVl3t7:1n@75PZgd2QO9M:WV$UX8uGXgeYEjd$s&d$Y1K`D=m[%,A"5r#E]>o[r<'I]/=$YY
+K'.6egZnNkc0G%N^>Gq,C^pe^Eh?M(E%ETpM+kldn^re\"uh^fjg+]<"9&H+JjEekGXNkn$\h#Wd.e.R
+,nl/(U(MXgAi1N_`8crhoR87iNl>MuR1,Z$rg#h1E`f-;AM]cKUiQ6hhIAF7:L`n8o_JkTS&sbJauh^`
+5aYGZPith.CIG0tW)>Ze/-B+U:oi.B<E;\!Z<;"pHUXg^@B/&Ke`uP9$ZW_rWcr4N!pKZtc7b>p"leWr
+VqA6+Hq#IuMoK7Hf_gIo-'QJ_Ek"f]!WN4N5p0!;4<a\(Ku5(<kY+;f%#DaY^^)c#.2[cYU/B"uDD)TR
+5GSjY,ao;\Q,hu@fUTN[/XXd0ZY@(`=ZW,"-aW(9!eWh5d3uA:4X-(^Sq(O^b&f8)!MRdg[;*BaZP8cr
+UG+1jG%W8,81^%+rJJp5ZeI(?l[11KEk1!Y[qi\:o6S*uDAVX;[_ZO1i$DEo/:)_G[FVUMN.++@436M=
+\SSuh!<7U8i/h%t*YA^46K+"["?mt@LVmS`=L;Bh)2^g,:tXiP"WrXjJ.`.;MG5=P`T32MFM;0<ONA\C
+l(gd[3Lrq.O@a8[=#uR8k4DgT$A/P4;WcD0/M6oTTu*c!RY3#c=JX8YQ._E@[pH=Am$:j5T$\U`>&BJ7
+bn@j.\4(9(g:S3e(q[WQ1HKZYs*^MAD7E]m`t=0I@e#i@G!@.4a^jt1>dduo!.VeWE(DMu%g[j*TlA(h
++oMt-7%`BCXBHtQMo2;e8?>ED%#@-COsj"-9,NLX,qqlsJls)o9H`p%SD%m@L<HK9amAkR5bQK&F@n,'
+O%?(pWH?:"3hK6?:24oDX]dq1NRh]!M3MIb-EYhb'+%s-Y@t;sVUZSM#2a:-gobioXkN5g\Q\HGb8lHV
+B>.blYr\,e#Ah060mLfW#9/cGjKa&)XfdADJ3Vsg3$]7K#D>EP:q0m7*=R`hT@#V<2usVD`M1^mS,+'7
+N(@AS\J1>[)N2FAZ2%'7=!j;.AlC[JU2;KOasN=_jS"!6Qc(6!=X<tM7>t+mdgB%QK-uu5kjf#h%]*!f
+;el!:jVi1YY1RPk4!g3;B:`2j<f:M^f06[e+E[B1`gKf/h4OGAKj'1T[btb@X<n_mLW!YA=M/6)*KS9P
+E`kN%<c`l:5TfJD*"iV`K>J`r#[B+u#):$gON<qE,8,mLT@'UE67i.sa.tI>*#9q&P""I&LdZhr/sjd/
+&o!laCGq[--SqaWnp<QmcmU_#*>49"S\X8]l&@Hf:8c7rYj&6HV&YFYktmhV3k6cC6E:h/*KnTXJ^NjC
+X'N$cDR\CR2_!:KlZTVdXV"4>DT.!Ud]=0Fglh7`_dDpmq8Op(NlU393@o&(-^M&I+:n5]%LE;g6/Z,V
+<#->\KYjGq(mIcE&r/p9&XWD^2'%`HA.f`LH:]EH8`^SP`/"F)ONOF6)3iE\,_Nk*Oi]HFCBU5#-hH#F
+#%p>s6KHU@*=?(AJQ&P5)O4&:/?2_9'q3Zj\QuC=X4A36/u)7&=eJ]>4LRHiWECG=MQJ'WC8]l==./H-
+I4W-?n/*,;lNr9_@I8(D7P:lbQV$_o=G>Hj4N^:%0F.L_#6]XpT^[a[!Z)/t^nG-A)u:olL;Y:@Ls0Tm
+*0.ho&d\tm7jO8>V"0@9W`K^mbGFe:N65ciR`M>3.$RV44J'lpOa,sl2a`R%@1bHk)Atl=9'+OuNCp)h
+RRcMjMTonF8#fXkp'V=e0ikR4XRh>:?6a-5g9%`oAJ1Or\(iV.$(^)MI(nLAnuFAF#7e@PA/KST-OhWH
+;som,gfkqTb/*RL-j0GP"+igHd!.r*'aoa`@F4d'![SD87">h]oO\aPMF8\O=IaP'*f3?ndPs?m9c];;
++7X&]\cjFJ871qt'ZO]GSkj"GafPb#5GD"ge9XP1PtRuG-r[-_7\p6d:?IaSAR[)JW`Gecb,k<S.BcW#
+FZW"jT.l!"D:*-<#1mq-?#J8@:$2+q^/8dWg]SD=19oI_ZT-Kn%gp.oZ*>0!-In$5A?kXj]E/$6J\`J5
+BKRIP$AHA@YV62H,8,f"U9SCE@P\p^a!7kQr&uJPOi\lSBfr+e$'e%-ZKZbR<tp`\VR%BJ@Nuh\^S'&S
+]`(,XTZh)VC-7)N#F*[d[-E&PO]&1/.^a"bT!)>"c0-t*%-"g*UK=>?Wr*4!%CJiGQ7I?oQ#O:i0"5W0
+C?9]R`GO"k*6oL:J&nIZ*'I@$D2H<;()uC&/P<]eEja[2%KQKZ5N%W*1`d2.KgHrEGZ6d+%>dL3nMk=k
+r=t5[j,qtFC-<Pu877T?Zsk=.P!u)V\Lb0j0pt_tP?D/!E=n[8kEFTkrddA/;!=*7bef90V+Dt1ksRG!
+-\561dch2"HWZ<Y+LM!HlBbqa5NqVD]p9?5[9>/JgNBgBEOf?BQ7Hh'nL:8$/(*YC3itug__?7\"E#qt
+NaHN<)It?90uDdc(OW)e0`Z^=TQ!FQ)@m+,_P(qi5QW#=Lr?$-8?>uJ(lLah;4--b59Q'/UiK"*6;%B0
+8thDn"L_/2QcGt%#in0b31S9lEsV,M1I.V[W,m7G)NRFbd]%8DoeN.9P/Q:$3fF\NrgHT^[CRqr<t:'^
+CK5.%7\+.ug9#PAD7X!i\(mjh8o8lA>b8m7'oD&']+M=#Y'<MY3miZ"a6trp"mZ8F_8rhRXJSAdI=OQ?
+:cK^9"9=*@Thr6U+rgT;6t0!f9HG\sN(.;S\E%fr+,*-/;$dAk9dc/tAQ$'L[TtPR5icoVN7MhrO\R+j
+k]FC_+Ipe*Ok=aON>SETUpKm12Ou"Zdj]DXV,j^"W`/4`]&e+K%BA%H;*#\oV&H\bD)$rRT%ajMfqS,,
+jR,*OMb,ID]-V(bJ&#H/<K&7@%<7,/+I-aY2S3n';;tQFKJ+htbJ54h-l<!n","H60W5["!<[g>+`Sp#
+;C`N@`Zm4:gfbX<O2iE+q&GPj-BlRtdMZ;q>:u8d-8R*@:/a!=c6k>L*"i]AN5K9aab9q'6]P%,oVu/6
+D+pkW.Q&]H;QCG.<N@p%/AAYFY>HPYqZUkc18NL'2;(Ck:MRAlm?)`aY!!DR5HV@b:#`?g\)-?#psoXP
+KpPE7(oh.W(QQPs1-$n'9.PIS;d]S2'FFdCK0c-VQolu+$\q+/&9r"\.2%3J,-cCB<[e]B73O>JjEa$:
+P=ajKR8bq!/X=@fZPf"QBf2;Ok7a95mWgsf:ZrI,"V-A$Th/hD\Kp`5%]-r)YmPmDV\trFWAD,f659[&
+_s;DK'bZR;ZWZZ2RoI7AD7<a31YXLal#i?FBD7;e@XWR#?R7S![LW[bX3WC8S5dfBNQ5Q"(<gA\.:^K[
+YL!OP$3p]c_*AQf9I^VYL;9K*(lUL''S4-:&Qg;b1E;FqU[e^"MB*LmaQ2oK9WD/FQHQ,r$&m"Y-&#%T
+o8-En:F;<%@W1N?L4:kIbc$]i7-9h0K2#t)qKt&f<3"%iEN59rF'=aQ/%,`&(;j[g:ae5(>j?*?W)]to
+#lSr,FLp;2pP[9W[<fR.BJ8R-!blAV7rYtrA.&VkZUcbeO9RHhOhYJ#pW*I9"Ts?B@*j-X!Yl)t6U3@#
+Cdo]aM?"e3Gf42O)idEudJ3p"73dse@51lkRT1l#5Gc^d>T-HSOA+YrfShop1RLn7e+cnnK*@o8?ukH&
+C6:ZP7Hh%FAO`L;SlG"*HGsL(>G=_;<;Qh;Y>q`.Ct0I668(m:dk*EPe8!qRPYpQ4RU)NXH]m&3G5,'e
+!AV;sE7fP,9)XUd=lM>U*8Wo5Jm3"ir+lE6!eJ01Y\6-C'+0H2+[?<\66d"q`?MR#]OEZ8NQ39Kkkp$"
+,)SdaTEuU4;^di&+oiL.[NQTWbp'JcN7r22PK>!=n-n`1%@9a9EiM8H0fO[3kqq[R63dFge7uC+]J?A`
+PZFaUfG/k?@^4Ht[S&cXdqZ;ECt?dXNl,hDgobUreV<C5[9KXF)u]p5K#-CmF'L=B'4@h203G<)6J$Y,
+jYF+m#%@Q4JO&.T:]p\/$&(_)OP"Y%%0hU+ifR?M?83=W7cBEloHl^EIn(cH=U^Tn)O&<TP1ark@53PU
+@'XJDVJ/&]:?PP)o_sD-Thsj7asA*k8Yo>LPhL7DRms>UlBPP\?DBT`<o]@SjDMY<N7_rI>:iGHBX:n0
+QIl(u)fW#UjgQ^ng>.%f>&.3Op&>&D^/&]L]>Z!*D8bCQPWMlWH'-37n[Vo3`ub;2^n>X;//f$)KYjF%
+aD<U0&;NZJECd070*I(qUCkT6H3Y@L_k]%:/=IsePffhCR68&f0UU(]E7ndUD`F90^ba)3dM"[-cffIC
+/K0[@Usc5a\d/A&:8l[?eB4msY?7GoCGj76P-\MJ=DO2seW+!LY1fT!lWq*ZE4FJ9[k"T7LM;\'DHFH`
+_W_$8?a+cK/L('c`*oong_M[fON>slfds9j'eY#$TMP>.((CM%6=E^#A2YG=LdY]L32AM7(Q:gmnQ=jA
+2'7oNA3^FeQ;&`k8nCo2A@=uIQHWr>3M`APreaG3Z`1%OGs.&2kS-#C^.C_g;JB+@N>e?`VF"tH)PpK:
+4+Yr>oI3LT[9p%8lnnSbI_f[(>%olF<OU]rY?TtP(i@^_GG8:p(VAf&r>!"QmFQ.h,7/,&iGSA5%P%F6
+a%\28I%=jkOLi4Lcfb3=$O27#+Y]j"1)g^Y`$-oaS5LjQMo1&WW8)DN(lu``1+=3+9.#kF,r(eRZ;iND
+bU,+pS<a<\RSG4d8S#8D2Mf[-1b%eVMajJi,P3tg-CZ*LbGl9@,t]C^LfN`%.E,ns3i.?Weghc(.q#^1
+Cpj^'ZJ.gNat=?sQ+H8m[Fm,JWt!e[I_X_mpac<k'lq1G0c3#X,6NnFj>&Wn?:ptsb1@aHkO\ZZ"bT,"
+&1AMB)%D?giXm#l:+6p97H4uIJ-%_OO%1=tq%*Tb-'Lp^&t)_%=Y5t5jqAVsc=o/*6_n_t]^C&.T24Ya
+\]fAP7AE`E'Ui#SR7!"`,BViD#,stg<U1Bf77p-TY?1'+)\nB?>d@N"'+3j(6!ps%DAO7WcKQdef<(;'
+XmZ!4]AIQE*#9$HJ&5Xa(d']()3)[Hi\u6k6Re;DAb-H<r!EW.K#+,L=<&e,%#2ZnnHb(G-PVHWU@F&`
+C,[,ma.r1'7#1jdP0'NjM+jpN/=+JUo*L@*7gPMTVNZi^g35ZNc_`Lc9`Bf8U=#q3MG5Q^6(Lp<oa6X4
+rD]Z>,#q/+.[s>=f;nTQ%>mkbZ,!Bg>;`G47^Cc#pBuu'k8^s:0)(:JT'^j<hlle^-+`o'_Vq`oN(k)p
+MT4\W\BKCp-^;&MEmtp.rWNCU6"&&a6m`WVL-oCrpk2*_'8f4fcl`I'2&hLnj3dZ*L.*>M8S$7p7&Es7
+O%1M3$"V%e1R^qto6IF+D]>4mB@H\\#),F=8LJMX/6\)TUsj&-q:.*k;lWi4eU#2(O'/VeCXr2C/n&.n
+=_uZ97"WA[[G#KKqh<&OF-#'nQ[?^60iG\lDqFmi2XPOO?uX[**Zl,T`a<^Fgk;PKKYCu;fmL^=rrRbf
++L#NA+qk7_6Qr\tA1Af:M8^[CBQsS1)NDc^Z0;+;6R%Z6@hFPCU/NP,b9aIYI)9AKRED>Pq5!"k3h=SE
+Z\c%MI6sXT.(!_P,*N,%6YUY`bpoJdWRWK+C;"(f:T.<0[Hd^B$X9jg/@K=WU.\:hgF]kuI?*3*\_SmG
+H]?bNHEUX.GO,51!t2Ndhq2`\,6NA4j"\(0"tq']aincc9YOs9s+*GnOB==\&IF.XiK2]64s::67,j>2
+S.7+g!(:=Zf^sVY+d#=VP$'W5;(7c&jc\;=^)7iI9I>s+[,,d_SO02N=ks"-6(q-=PZfmjHPE7'l'0nE
+5*He\eEW<&[9g*fW5e-\g@]oO>Hh5rQ<Q5<5@V!'m?ZEWWnh[*>jdf&L">d>[GC:Qg\(RI(oZAl3#jgu
+&W+J60j*4Q^DW*SAFbpXN`Rq8J&%^r81YYi#_^'gE6)iV*sDX4U2`_g68'17`hROpm!:l=ON=5<8M$<+
+-]6&s&rCG9?SIkkVK*PZ<bXO`cDPa*m.u2pRme_>8hCsB8<(ujFII&-T2;K9VDPfj:9Rd$etI4hAT#7j
+Yh6$tC?uGTA@1'mG0=a6b>l%,Y'3E*U?d':hQLpG^%22RXC&1k9J.7TK>Z]REVrQf+-=Rhn_#Ir>5N;i
+5N#?t,SggoKL0*D\7@K<%u<V_;)k@P/Jj@8@o9bsFtNcV87YU(oTi3!PY,Lb\R_^10*"XW;`UZ)D)[t[
+B2Q3mNX%_0:?YY<,o2J1Uf(o*C'99X:T.6-;S$\-VcTs#CK7rO<b#C==DUs:oo@:0Zs%<Cq^nu,Dn'"h
+(H\JEm4#SOmoR+1k4sMB?uD=t()IEA_I;t:]Od8,5KDf)=ZiQ_*DO^B+7LZu&dnnr_BCV3>V[6.LVtAk
+.%F0c"9:n90rW#o4!'I(,VgegP"R-casAgAoPRh4Q-:R2.@eh%2N#\QF*ZR3HTn(K-o<A8ju#N$dO@#P
+jVBXFVpm1R.\0I+9o`4h26,JPs&YQ=Cc3daP04H@fr[05?!=FJ\(iSp.V60pBXutQ2lkd*ktSnM0JtAp
+$O_^,f5R+9?8?5P`oJm8.RlWMQHRmQ!!j8K#QT@ji=MAU/f>+R6fJ[pPYNYBMacY<R+-"6*KN_O&fDC8
+$RLErjV!t\Y$!?C9BD=M/Ac*YRn`&ZRFLYM*LT2@Zl0YhM+*\*i,i^6/t#G3;s@8;'I'A$W)`-uRal;d
+?(t>7ef,?aUJeC#m1u0kY/+n_>OE*8D8tg_]3XTD42pX`9>+\O(`X:Ms+A3tkI=bd0,]bE@^4T+P^aj?
+b@U8V#Q+o6"G4I_i!<"+(C>Z1+lEVg8gb=1`M2mYb\B'VNlRpc#n2\],a-9Fnqg&?="JsA+d1N;b%EQ"
+c)1'RHnKD$T$O>,$4R>t0qCY0P_r0bQV<E:TsWO58uGXgeYgplNF')!Y10L0lOA`lA?sAE(2HXEf.F@6
+/b]X4b)(#Hh6-K6XlB)&^>G[Yldc"?KYl]Pn;;Z>(Q=sDZ+1:'8o]p6jg+F?!!3<+Jj>stGXNkn$\h#W
+d.i8`,nl/)@aTG=Ai1Nf7q9sB"GT>iLI#Id#pcBJ/!`h>deSPc:Bd-1B%)%Dk&ibW:L_d4,l33^U/>UP
+$3Uj"9;YX%eG=j`P6Ru9C=RXK<i7@If5&q6"bpAgKNTj,HUXg^CUQnff%YnujU\iUmalg)ju%:p?Z4Ja
+jo5L:_I%7A>Xg'&;oN6df_RcR+d:&<E`lYc!WN4P_'#sq4<bFGKu5(<k^5]A&rFROYYYI31E)3@UTs%\
+JjU`EaX"0+4>JiF!(nQCl$U?X17?B6ZY;P)2ZoSiVXs'N!eWh5d3uA:4H=\)Uf/_Ll?s;1*2lje[;*Ba
+ZO3[).okm5K!ARbfdsRI4eb;R[+d1@kXDZ3Ek1!YZR_$ho6R`L06ca]!qguWi@qYXQ5^Kp`R_1O4D$r*
+P0)0mq+SM3!<7U8i/g2,*YA^2_-rGXF?Ui[M+$?c=L;Bh)3%,GOk@#:5m*35UXE:%Sl$ql_PMbh<5)cq
+R7ub,=g[$i$Cf?(PM,U-JO,u+k7a4O&s5b^;X'=$2'/5aWDr/J>.$8\$`hkEQ.kkJZS&H6m$:j5Sp=bO
+>4%X/rMn[FOj@oh)n"OVE.?`J(YeW_!J.[d0N_R;Y6g!'@e#gj:,a>YVIT1">ddtd!!#9WE(CZA%g[j*
+TlA(h3Zeoh`1h6BXBI7oN5hW4aR"3`"d"6ZnjtC$:FMIMV/j[o\mI.G8>*:,XP.SPSBe"<3$dpA5bQK&
+F@n,'HNU$@WH?:"/s-@9<2t(5X]hnGW(>ta$H7>+@'J:bG"AHEb@n9:V7(_V]&.I^^TMbuNOJ.t]\]:T
+HenPuJAB1.\1B6NH!S>IZ$=G%'-!%Sb459YY$3P1J,g]g3$\h1#D>EP:q1$o*=mro@So+\<\5,H7Uo<*
+jE<[%K#g1hq';8#-]Pm;;!CpT;(n;1AlC^cef>rd_C#md[.\o4TMT<$3[GQ$8"i]9FGaWfSPQ1RWDI>h
+<ioH)<bkW;S;t'cYZP^=3phsPB=(iZ<19A\h/Bf&Xg]7Gf'R[[=`5+gjmr(m^gM+`30!qELW!3^fU/JC
+092''0pt/"-NB"H^`W%o*"iV`K>JccW*D(s%YqtH0drPi.i+&_,;H.PE]Y=r!$j<K*/6[)PKG1,WEc`5
+)j3kp''Yq7CGq[-+Kt%b5%>n/cm.$(*<qEkUXCSHWZ6n]:8cSk2(G.p%8<DECGi-JEj%7$==c?\*Kk8G
+ZJ$lgX#458DR\CR24HbOlZTnVm[&cA%L5(F?LTp(IHpKX_r<C1XB\g9N5t!,3:)Z(.s\<oTF^f3%LE;k
+6/`BB<%]$tLI:"8#aA(5&r9!:&X_'c3?=/Nj:W=EN_'tL!$m_q<3B@UQV6HS)3iE\&X10\Z^K>2Gs.cc
+B(LlX%Z*WL;<\d_>m;ZKVc2jq)5T)?;QEg`'q3ZZW@4n#lkUL^G/["Taac::g\TT7[p/,u8/9;+Fh:rJ
+(Rro\l$L0Pms!Ok%gaJ;g-@QD<At:;_..L')R_jVQ-3b-n,NRu#6]TBi:)Or.MiMJ_kHT+N(PH3MT)=[
+Ls0Tm*0/(4n6$"u59uE6V"0@9W`La;bGFe9A;UaLRa%`$M9P7#1P/BboEl$7LI@laVm&3>.[Ni+dch<X
+F\64AWm>F&MTomY<J4FhFpeb:a(2L/UNQGsWn2'Rg24;,N976a]#\bj3ecSfI(mNNpZr@t#DA<!0Y!'9
+EqP=0j0A=e5!p]^Qt3M5L]dV["+igHd!.r*'aoa`@F4e&7O8_*7:JLf`+CkDMaq:)q#lF@,EbW/dWf;?
+;ui.UA^BUo<`_)G9kMe@FQR^-Skj"IRC!HB5GD"ge9XP1PtRuQBllCY7\s%`<FAf6[:ZgNMbWNfqZNq0
+A#rf!epBi_%qW.QD:\T<``m8i?#J8?"P3*i^0bg.bGG4BK=bN1R!_@N'/4oEYuppX7W47,a_$&C_uKf>
+J\`J5BKRIP"+S33YipI$,8,jP,-bgo@P\p^a!7kQr-eMfN^BC8fdHnf.[A1'ZKZbR@ksIs-F7F!ic@/J
+asV8pr;qU<U!KXD8j+A^1m(#!dY`H>UJd:RWj9c)>-hD7f.4*u`HoF2Z.U\:BuP\MC:2eGesgNnj)V]d
+,Sp9Ziq%J^^q_nm2=CWYVI6X:HbLF4MS8"(G)DkY,?)Wo0K"fT@K6CZ5i@`+1`d58KgOa[fQ9;#&W&p8
+O]\ts0c>s?j,r!dIR,%UaPZPk1nIPnPtL/$flXr:0pt_tP?G9LEB0RbkEAIGrddA/:u`0L0Es$sU.Aut
+\og1]4fMEGQ!1S%Z!"20jRh/[I_fHt=R;>X24c+![9Ds`gNC6h-F@%GQWplSnTgb^DjT5OrrI\8hQWAP
+2BNNfTO>$lgibn*1<!epR9[1-$NP[lJ.P7&)@m+,_P(qiCcWXLLr?$-8?>uJ(lZJ0EQIKm59Q'/UiK"*
+$3'pgalRQbCq<t-R*;FK8Z^Wa31S9lF33eFImBI>!&R8!)NRFbd\q7k>riuo!7U4U86lG'=KL)SFis)t
+^L!/>V"IqDRa5ZSg7X]M?+NUEK@hf#9<Hq:GeD8&pWMt#s+%oCU6hr6)\7bCi[e"j*]bHaa5jOO9WSmB
+R".EZ:cK^9%0qPQ@8OIE2B<<a6t0"QUfJ00N(.;S\E%fr+-9$(;E6"g9dc/tADe>9Wa.9F9P.3`Ut0BA
+!'o]\\`EI45G1hd<&u<@NCTd?,1O282P!XB<,,DoV,eI*XB'+:\brZ60!A>-<]Q.Cc"FCeD-"8[[WQ,j
+>]*KP%F4?b]M<=q]B/bbJ&"?'3'8N(%>Vks0K?^W2][sW`br;VVH5@9bWl.>-l`j-#(sc9+:%g")\.YA
++u(L9;C`N@`Zm4:gi>ItO2rS%.3*4?-BlRu19"Na>:u8d-8R*@dVCb1c6kEIg^Y8cT?nuC.NK.[7\eB\
+1oagu"&=J?.Q&]H;QEj!egiVUrA(ukYLk.ClPKiD.C%R.1g8_@gMXLU/iP3V)UW<3hCgggh=CFr\_o/$
+/05G_I`(/"336FAB8+Ce1-$nVdi4Urc!UMg&-<.AK0eH-QrG[U%>R=1&K$a-.2@b0iG\M@DE/_u8)t:#
+'TPa2P=ajKR8g=l/XK,m',aJQBf2ASk7a95mWgsf:ZrK2'LHA"UJ^7iRT1u.9rCqT'cN?4WE$!!lP5l=
+DRj&V=6pXt*KD4MZWZZ2RoQWED7<a;&kaOr06+U0mh_JDmeM:E6a,,^((U_*_dW&D9N;`<NQ5Q")'"r;
+R1=cJEGtm\$3p]c_4^8l9I^heL;T_T#`MA''T0l(nVGD(2]RjuU[e^"MFSqTae\Ka9WD/FQHQ,r$&m#>
+1n)[do81]VG<CmOkO])j$AV$D^ur(^9e)K'VUMO;$B7Y5ri3mbeV_Ud[m-kDX7co1MT985frFZp4f[+M
+[bIqY$]T2iFLo=A2iGrGpO'^4V3c!-e,tAs?h!iL:+I->`oF?"%$!t.Do$"h1IqWE"Ts7j@*j-d-5?oC
+6Xe@:KLR7$MFD"%Gf42O)idEudJ3p"73dseAC>_(&f^n;94cPe%)uX1RS@DCH,SiZ$'e+1e+s4PKgVS3
+B[h>s-C%5s:8RGom4tM:W`<faHGsL(>HU=C0NrUR`FGH45VndUI_0C(>A_sgKuW4k[7Mp9Hc>,OF1u""
+fDGgX"bX[#E7fP--P_QZ?Er/YS9jK5al>/0I)H'c!eJ01Y\6-C'+0H2+gC0X66d,"`?MR#]OEDlNQ39K
+kkp$",*BtmZ7*qk;_"'U-*lc__IG?hbpKc2]]*unN(Ken\buS^6D;dTZt_`JP=hZIBsd/R6:"8DeLItA
+]je<OXk$k0l6Sp;+op:I;9J!pdqZ;F/[jtn_W,[Ih(H0P^#JVjZX5AoHe&9$K#-D"\7nt?'8hk0n[Rq7
+6R.bQe1?+hr_<InJO&.T=>V'2$&(_)OP"Y=+VBQ!ifR?M?83=W7cTW`oR9(LO[O^4=Yu^I.@!NeP1ark
+;^7](k*&rThJkQH:?Rhoo_sD-Le@_)=bRoZ-DH$%oI=uITi%dglBPP\?EmY8<pQ%)omX_cYup"hlSKND
+Br0Nt1.b^hbl4nQm[%.chXPm)6>2U!Ac)RE^e(_S>W*Z9M8`r_fK:K:+d'lWnsN[13_KGQ^jlte//f$)
+KYjCd+:Kk%&;\9!ECd070,TYfUN+BAH9WO6aJ<iJ/=K?_PffhCa_\Oq0UU(]E[Z<a(H@r1TsL`JdXONT
+d&;%Y/K0[@Usc5ab&'23:oMmDF\8c>Y?7mQi=j?#HG;J&fHB]#opX':N`i")X)5H*E4F]+G=n]lms)Kq
+0"9$kqYu)]i37EOlmE$o`8\%Hb\fI;HH>0Ef_hmV0:78Si(uBY((CM%6=E^#A2YG=LdY]L32BR\res0/
+&\-nF4Wf;G+47%bQ;&`k8nB_['O"cqQqV*j3Mb5C2k3WU;n:u_I6XB$BN.#=(6(h[;JB+AAN$)TW);YV
+3i,kC&Z\Oh27hmm]jJ!GCfWVC\l8^;<c(mIjG#I%\6NoQ4/LNqGGA@g'$G^_rI;UjE*,4Ji`cT"@VV3Z
+%''bsaCK<o4JkI[!5lSon0f7h$NC)m+Y]j"1)g^Y`$#\*S5LjQMoHtrW8)DT*fnAf1+=3+9.#kF,r2H)
+Z<JrJbU,+pSC212S'EB;WSI&k5+g1M1b!61MajJYUXY/PH2UL3e1*=*SPlLhX4AdV8osh`98!:]2>\C4
+[:Zc!/N0Y8ZJ08L6S'?!,Wah+]A>2"X53@>FMG_2<]J'=qhE#J0fZ7?h[:.66K<40:(&52`b$>(p_42E
+"bT,"&=?EL)%D?giXm#l:+6p97H4uIe8@8eO%87D)&/*&-'Lp^&t)_%=Y5t5jqAVsbQ0Sj:$31XeF%TB
+MU,rLC&J*G7AE`E'Ui#SR8'SXiKP7G:8p@S<U1BgeS_p'Y?0fX>*oN96AWCY((4-Ffkn3&mM?]tMWo8a
+>d"s5eaE6]^<gP;Bs%YWA,tPl=6rs@)3)[HneiF5:FVRPAaOF:":>A:K#)skLbpRss+\FbnHb(G-OToB
+ipeFuC'tl=a.r22F8ABNP"9-SM+jpN/=+JUo*LAuB/H(%VXoYgl?>@L7d'CN$u1,WU=#q3MG5Re9W$:<
+oa6ZGKiEZ@!&-I!C:@HNf;nTQ%>r2'Oh[ac>>;+,A@C6ppBuu'kB*"mW0Xq=Z@=jHhkQNC%LWMp_Vq`o
+N(tl>N5jn_q$`60mh!7fV\r#-rWNCU6"&&a(^:ZSL-oCrpk0h;'8f4fd<NTA2&hQGA't)TL.*>M8S$7p
+7&Es7Q:kf9BS=B:1R_$I0N_-U)_[dYB@H\\#),F=;/"I*74(SaVGh,LWeEp=;lWi4eU#2H[2PRaX4@$Z
+DT-+k=_uZ97Ac&PRE".8qCFtFCo1C=f6bL!om=D[DqFmk#6fas@;s]mV6\'sYi5-)r.[]fPCqWIdgTae
+!<Rhg+CH$K()$h#_]c7_/2e^cM8^[DBY7e1)NDc^Z0;+;6R%Z7,dM,HU/NP,b9aIYI)9A;In_,+q7P^.
+313PiZg%DiK0l9Z.(!_P,*P0C`b/99I6o;<Io<;SC;")_>-6C,[H[o^DdSu9Cp5=):<.+WgF]l"IDY#b
+\_SmICVAa!HG/2dOD%$G%KWn0k-8,a_T`1F<,];5IR>?Caj9K[CD9A@!.dDn?l1^5&H@GNiK2]64s:Mp
+7,j>2ZsGI)NCMrjf^sVY+d#=VP$'W5;(7c&jcS1`^0raa9]0sE[,,d_SPJ@3g%>8p6(q-:1IrchNCfs?
+W0H"Y5+tiQ<9f`PZtbR7IobNN\+D;>08S5]FijT:d9!_Zm?ZLL^>X(B>jdq_[GLG!]jC/og-qa(IYCn!
+p^@Rcab%K@nX/*T.h.WX6S_e,IU=f0J&%^r81YYi#_^'gE6)iV*tX7HU2``*=t^_O`hRNM"F<9TON=5<
+8M$/f.$VlNEli./?SIkkVK5>1g2As1aes+"h"lLJSC"3V8hCsB8>O\5FNBFCIiX\N@1VY)5+bWMeuNr9
+m<ZNTYh6%#9.cUYBXHKqG0=a6#uuITk?o72#2_#)>sL>q`VTUb^u2G=.`ND(#fF`fR*9G0+-=S#EEPm<
+9.uZ_5N#?t,SggoKL0*D\7@K<%u<V_;)k@P/Jj@8@o9`TqE4o\87YUY,aM.JL.UK)\R^^\0:5FF;`UZ)
+D)[t[B2cA%p2M.'7cgpP%2MT#UdlhRb"Xdb:T.6-<B?sWX]MT)CK7t-G.h7e=DV#"-'gJTK2UcP:^oJ5
+'XuAi;QD\+m<?3LDcaK7`m]"&gF2RX!!;tO`+!^g]Oj&:Kude8=R;nd/XO[H+7LZu&dnnr_BCV3>V[6.
+LVpn>.%F0c(5P5MdAYi@3=11+,8)FFP"R-casAgB>d@QdQcpd4.@eh%2MamGcoCC_0/oNJB<gYOk(-!s
+dO@#Q>r%mEVpm1R.\0J<<iae%26,JQ]3_\n-'Tg[L0$g-f]&&u9MWcK\(iSp/"P*cCqJN$QWr;:qgQ<<
+0J]]C'+7"?@PKjD?8ENt[(u&!4>dKeQHSD5&,6hK#mGrIi=MAU/f>+R6fJ[pPYNY?!(Go[R+,.A)NRDK
+OGEIg6R@pbU[jeb)Fj^Zb@L2^Pg3u#Rn`&ZRFLYM4eGO6'H.\rM++1:knKRd/t#G3;sG)9Pm15*WR]tt
+kcImr>,]Xq()n!Ka^qe]iDnOG#2*:J8LV"14b>\9ZsE,:S(6s&IC._4(`X6A"a7XhnJIcs0,]b&>b\`@
+rH?fo^uMa4#Q+o6"G4I_n;'af(CZ&9U%&DI8gb=1`M2mYbT6X%NCTc5O:6pG,a-9FnfS@,0dcrl-1_G%
+2Hqc$9r@N=bj'C7T$O>,$4R>t7&&)-oSQ?mQV=:*WV$UX8uGXG7j$)<Co47<RoZ>+9+6uqA?smip5;YF
+I:BY;BiTK(]%;&8h6-L1c0?<e^>H-h$$G\AKYl]Ppk\U_q'W=QDKq\39.,tHcYE7M!!!*'JcHq>pd?GD
+$\h#Wd.i8`,nl/)@aTFb((V427q3/,"GT>iP"B34GsnN0/!`h>deSR9AM]cLB%)%Dk&ibW:M8/Q"U9ZJ
+U/>UNkV*(!9:\speG=kc+!#i!W`7-[B!kjG=)6?tNBT3sU=a;3lM[U1CURGaf(oiIj`A"=C)/mbk4O)8
+?Z4N<UaGI;^t``a4#R$QMoK7HelmHUm;p>&WA,qT!WN4P_'#sq4<bFGKu5(<k^5]A&rFROZ"UdZ1E)7n
+,I-J1JjU`EaX"0+4JGb(Q-1JZl$U?X17?B6ZY@)3F#oM8-aW(,#(o*u:[#.s%28h)V:-m#l?u!o;M.k^
+Zs$a=ZW`)JX0k"eK#;'&fdsFdeY:N-[G#HJl[?Y1Ek0tBPa[TcHZZsY0=U9GEkNKr^T*TW4UrodV-l$f
+m!_;HP0)f@\SSuh!<7U8i/h%t*YA^46K+$YF?Ui[M+$?c=L;Bh)3%,GOkB;T5p;@]jH0-.SkBk"9')5h
+FM;**PJ<qM=g[%*3Lrq.PM,U-)).a\+]KpK*_e&7bik;FFZuKrWDr/J=iDGe=fk`di#;8,X^SJ:m$:j5
+T$]Eu<b[f0<AqC%\QnQh>IE=YCR8+Q1[Al2s*1,CE*-@'*ta@K@e#i@G!@.4a^jt1=;DMK!.R8+n45)K
+%g[j*TlA(h3Zeoh`1h6BX==APM?"l@aR"4;*!"'SdRc!Y:FMIMV/j[o\mI.YbbfGQXB%V.KLR<:8]:B)
+4J:'"F@n,'O%?(pWH?6mrh!#ce>dN1,jq.(XOaFpb3aMi@$B+g'<&hZPuiT;/2k[g]&.J:gnj^(m"bab
+]\]i9bO,0+JAC*IGYB_/%uA0`Z$=K14!-Alc_n3FL0H<uJ3Vsg3$]7K#D>EP:q1$o*=mro?sj89<\"fA
+7Uf5.jBa\cO@Wn[3@'nb-^757;Rp>H>q_R=@Bn/feiPg\:1mM9jRQkHTMT<$3[GQ$8#0$s;`X%C8H,Pb
+B/I2r<ioH)<bk^FI!.kOT%>Mo4!g3;B=(iZ<kDqOh/Bf.DHAorf'R[o6)kI]c1\2%OB=$blm<MXLTXtB
+OmGM[3K;*jE`kN%0*R]d5QD?D*"iV`Jq.8`2uGEM%Yqr/d3sZG.i+&_,;H.PE]Y>'a<WMi*0NrAPKG1,
+WEc`5/sj[&n0s"h,lWV<k)f@C@Vn/ucmU_#*>49"UXCSFfp+<!,,W1j<@XP;:Hkf0.lF?_Ek>Y]fISp2
+*KnTXZe?uhX'N$cDR\CR2@>/b!>_`kY;`N<o)!m8>qbt(*YSp9WSMPRXBm[tLWAI23@gBS>mAF5+:n5]
+%LE;k6/`BB<%]$tLI:&5(mIcE'oPN@&X^K43?!rKiIDdW!_F]%8`^Rf"KklZQV6HS)3iE\24I>'':IA<
+Gs.cqkS+pM%Z*WL;<\d`<A'\6Vc2jq)O4'!.B?J1<D(eZ\QuC?lk?D<>/OpX=mZuo<%c4.[p/8:)SN<<
+Fh:rJ'PTsk"'N:on/*,\%[A#`6>feZQ5^-ia(+ZX*0sALQ-3b1&-r+?#6]XpT^[b2.MiMJ_kHT+N(PH3
+MT)=[Ls0Tm*0/(7nd,_^7jO8:?daa<!`pq=bGFdNXMS6iRa%`$M9P7/4J'lsoEd(oLG4l`+4M3'.[Ni+
+e#E!H`=f(JWn"-BE"-Pl;6JNOp'V=ea(0a%-C.k1Wn2'qgTC"g*+E8Y!7gKRMp:P]I(nLAp^@W?#DBtQ
+YkX/P.i4/ahIuF/Urq#+Y%+d5L]dV["+igHd!.r*'aoa`@F4e&7O8_*7:OYhJ-%SI!68Shq#k_"(k5+e
+&pZmB<@aA.A^^C-`aprp9kI:)oF=5MSkj"Jq?7(W+bi`=e9XP1PtRuQC"3!53fON@cmgo!`FcM^Y#fDh
+qOGj34Gq[^[MqW'^MC8^D:\T<`oV9Q?#J8@`THi?^0bg1r!!B0K>M&9chQ].a#fdEYk\-N7jX@Q@cFg9
+U]LJsJ\`J5BKRIP$AHA@YipI$,8,jP,-bgo@P\p^a!7kQp]<f,OiV&'Bfr+g.[A1'ZKZbR@ksIjT@7I1
+g&2GE:FEKjV#l99U!Y9qC-<c).\BWg[&SO@UJe)A.^a$)@^B7?f.48orIVprZ.U\:CH\E@C:2Kh[cnJi
+F)8DC0"5W0*oD4Uh_2J)r6Ftc_;R)XCcip!E5Z6@\EnWQGQGqGUl[[&('+>b5N%W*1`cf!K>QT/fQ9;#
+&W&p8O]\ts0c>s?j,r!dIR,->8E>q:1nIPnPtL/$flXr:0pt_tP?G9LEB0RbkEFTkrddA/;!=-I1oLFH
+V,HQBf^1Sf8#]JQQ!1S%Z!"20l]p2sI^ocH<%4+@24i30[9DX75R"IPEOf?BPiT6IonXB/X!rrI\e
+@.9Og2BNNf`FAA)gibn*?bX@YdAti)QN2NNTQ!FQ)@m+,_P(qiCcWXLLr?$-8?>uJ(lZJ0EQIKm59Q',
+?d_J9!`(5/8>U@KCq<t-R*;FK8Z^WI,_&=\1W`VQImB[RW,tW`)NRFG:LTHS2)^XpW77hi9!):#$_GqM
+F6L#PSL&hck0oe?@aA_pg9#PAD7\VD\D4629<Hq:GeDn:GK]CMs+$Zl0Qj>5RfeJbij!\i-5RP]aQ0XM
+r,u!lR".EZ:cK^9%0qPQ@8OIE2B<<a6t0"QUfK&Z!(LHq\BJ8B+-9$(;E6"g9dc/tAQ$'L2>o1ZbMUb$
+U_YsLS5)<_=lf:)5G1hd<&u<@NCTdBBiMZT2P!XB<,,DoV,j^"XB'+:]&e+K?a*+7<]SABAIl-"D-"8[
+[bY2o>\A6WV:P$X]MU:?S)sABJ&"IT<a6+N%>Vl/^c8tINt[SqA9(g8VH5@9bWm9>-l`j-#(sc90W853
+)\.YA+u(L9;C`N@`Zm4:gi>ItO2rS%.3+LD-BlRu19"Na>:u-?-8R*@dUa8ac6b6co^Z?QT?nuC.NK.[
+7Z>W,1o`\oRnfm2.Q&]GhNS#?<\$&-h/^,6Lt/R_3rP5bB!^2C0WF+/"p)3c@^[`1Wp=i?hCgggh=CGl
+^Yge*/05H4L;W"*336D#fi>;rmW?*R;_+0W`#o$c'FkEQJ\U.TQrG[NreEl"OVj<X.2@b0it7[.DE/_u
+8)t:#'TPa2P=ajKR8g=l/XK,m',d%[Bf2ASk7a6t)L4JucDVEq'b6'hUJ^7fl1F`Q9nQ4![$m7TWE$!!
+lP5l=DRj&V=6p\A'opCIZWZZ2RoQWED7<a;&=QnMT/h]qY4imcmeM9rh'?'kp(%I`_dW'PS5q9\/@nXI
+\K$o2.2U%[j"L`1$3(-[_4^:R'D`(DKgHsQ#`MA''T0l(nVGD(2]RjuU[e^"MFSqTae\Ka9WD/FQHQ,r
+$&m#>1n)[do81]VG<DJCVt:<*$AV$DdAZ\p9e)K'Jq,<C$B7ZU;l8*Fonq"/[m[/r/+s>[MT985frXn*
+9rceZW`/;O$]W<lFG*l$ognF1l[6G(YP8M9$O;@%iNW*9:+I->`oF?"#o2IU*N/sYq)A?Trr[j=+4,6`
+-5?oC6Xe@:KLR7$MFD"%Gf42O)idEudJ3p"73dsaJ.d,qU.[#&94cQIKZ7RZRS@DCH,Sif4.]5\e+s4P
+@4@Dd+ReS1-C%6$;eabVPnKolN7@.@W3%*[>)h,`(&J/h`FH2VCt<r%VU]Ij>A_sgKuW4q\m94*Hc>.=
+?FNqr!#u1=MgE6KE7fI'ne6VT@PQO5L.<PRb%5VE/7\e]!eJ01Y\6-C'+0H2+gC0X66d,"`?MR#]OEZ8
+NQ39Kkkp#R!0PAKZ=uFm6RnAE-*lc__IG?hbpKc2]]*unS^/[il2:[96D;dTZt_`JP=h\#.CAAg6DIGX
+eLId`7:NSVIodcCa7WWR@^4T8p%XeadjDBT/[jtn_W,[Ih(H0MXfBio^#(KPl2BcI,JW1k\84>R'8jch
+0t?S!6R.c9jYFA_^1%*BJO&.T=>V'2#QR3MOP"Y=*smci@PET0?7-VB7GlLkoR9(LO\"Pr=Yu^I.@!Ne
+P1ark@3p_'k)d]DhJkQH:?Rhoo_sD-Thss;=u@@`8Yo>LPh7hDTbXJ)lBPP\?EmXu_rHq1NC($]Yup@Y
+>;`#"Bsh.3QJ6PriGlD5m[%.chXPm)?LO68c#sh/!(fF8>SK*pM8`roP&*88)j/6QnsNak?SMP1^n>X;
+//f$)KYjF%aD<mZ&:sm+ECd070,05^UN+BAH9WO6aJ<iJ/=K?_PffhAW5Q8'+.'t.P=_k0D`F94VfTuH
+qL:c'd&;%Y/K0[@Usc5ab&'23:oMmDF\8c>Y?7mWX*)SPH3H(.bi1;A/EY+SYM-+%bA9)a$+O(g0Pcrb
+ms)M%Y;RoeqYu)]e1T*0'Z1*1`8\%A*&]i"KSO)H=Zg;#0:78Si(uBY((CM%6=E^#A2YG=LdY]L32BS,
+(Q:gn;7P\14WfbVA5YE5Q;&`k8nCo2A@>bsQqV*j3Mb5C2k3WU;n:u_I6XAl?dq%P!f]^G;JB+1)u>1_
+W)RM33i%Xo<NK5:<P%:8),$_)CfTdIQHa'L95FS99t&kr\4J-T93m>UCSb9S=1dSfrI;UjE*,4L(Cc/<
+@W>M_AiC`kaCJa]N29hgF,*!\&1AM-rs"+m+Y]j"1)g^Y`$-oaS5LjQMoHtrW8)DT*fnAf0urpL%jZWm
+,k:XTZ:-C4bU,+pSC212S'EB;3FqU[3hObI1b'LYMajJbkED<6,+D?*e1*=*S3hQ(M:3R>C>Ep0?E`!4
+2Cff2b@\*7/N0Y8ZJ09+gb(N9S^QhI]A>2"X53@D2Qg'?GREj8$\lRSX"q=/"s&T>A26.qNXmM'bN9oX
+p_42E"bT,"&=?EL)$p:1iXm#T2CTB!7H4uIe8@8eO%87D)&/*&-'Lp[YpiYT+Wcq;A'aD()J&i#c".QV
+eF%TFT24Yb)ANa=7AE`E'Ui#SR8'SXl4k5&:8q6o<U1BgeS_p'Y?1'+)\nCT:R?TK')>Onfkn3&mLVH[
+c<G;#?1/SuFjfr2^L-IDS#)b[CV\p!(n=PDl$SN:,T."s:FVRPAb-H<r!EZ3K#+,LLeK97%#2ZnnHb(G
+-PVHWU@F&`C,[,ma.r23%#RP#P0'NjM+jpN/=+JUo*LAuB/H(%VXoYgl?>@YJ1'sr%17kXPs;5:auq3P
+4f6]-oa6YpJ,u[t.eHi&/s-O<<3,^#%>r1LXACI6MbU5'Cm%dJe,$!IbsJkpY4mk!l3DFFcu4.;%LWMp
+_Vq`oN(tl>N5jn_q$`9V-^;d8ZMB:YrWNCU6"&&a6m`WVL-oCrpb2aq'8f4fd5W*A2%PVa@LuYjqEH3f
+8S$7p7&Es7Q:kf;q1Qb!&<>"EP<$SDFZZ0jB@H\\#)+%d!%;r874+9mVGh3Xat6)B:T@E0eU#2HT2CeO
+W3rZ0L;dZ.=_uZ97AeUN[TdV"qh<&OF1PXpf6bL!om=D[DqFmi*c!4.9s?U)7OHAb`FEo?qmJ:(PKIHQ
+\6QBArrRbf+L#NA+qk<;_]c8JHpT%jM8^[DBY7e1'RrUQ&a9.E6R%T1A9&O:U/NP,b9aIYI)9AKRE[(b
+BtWGH3h=SEZg%DiK0l9Z.(!_P,*PWqdj_ZhI6s],WRWK+C;")_>+A0bZ9$fn_d]n"UfL,OU=3kbgF]l"
+IDSog\D8dHC=RY%B"QqR\*O"q"+nAJ0Xtp_,85sRj"\(1IR>?C\&TT;r2_4F!.dDnOB==Wrs=BGi@jD:
+.NJGB7,j>2ZsGI)NCMrjf^sVY+d#=VP$'W5;(7c&hshP:4rFTV9.#j*[,,d_SPJ@3g%>8p6(q-=PZfpc
+OXGf[@aaOQ5+tiQ<9b1^1s3'.W`JGNg@]p2@Bir$Q<Q5<d:p!lm?ZLL^>X(B>jdq_[GLG!]jC/mb.n5_
+=HQWl\(ik`&Nm*cE0*Y=9,!H0AFc-n[U16Z!'m2r8/(t5#_^%Od)]0I*tX7HU2``*=t^_O`hROpm!:l=
+ON=5<8M"<Y-icRWO6G)j?RV+3VK5>1g2As@cDPa*m.u2sT[9WZ8hCsB8>O\5FNSG]T2;K9Wc^q9>-D&0
+euNr9m<ZNTYh3NNHR((LAs:Fj?iUYI#@b3uY'3GpVV-3Z?#Or1mJ?j5^u2G;>KjhgLrA;PfPA]S;/QBn
+np*p3>;)@o5N#?t,SggoKL0*D\7@K<%u<V_;)k@P/Jj@8@o9bsG!-q/87YUY,aM.PPY,Lb\R`-S0:5FF
+;`UZ)D)[t[B2cA%p3f/u7_f^!,o2J1UX3^S\n*dj,c"CS<(_R>X]MT)CK7t-G.gYMd(hP$#QbG6ZpsEn
+lM\0IDl-ZT<&bo$iHMq@DcaR4pAKKV?uT41-5R,H`+!^g]Oj)CO2tjDQTCY:m1IOW+7LZu&dnnr_BCV3
+>V[6.LVtAk.%F0c(5p0W0rWk=!?M6^,LS"\O9$>basAgB>d@QdQcpd4.@eh%2Ohu>1TB1"rB?jhjKpBV
+MKq[ddO@#PN<5FpU/WO_lCChR<iae%26,JQ]3_\n/2f"!P07IDg+>4`?*`4&\(iSp/"P,SG-Y(\;2`[7
+D,%Y#0K-Pe9)jL\i\<Eo?8EO,_a(-oaX0)"QAsrJ&,6hK#mGrIi=MAU(]b)$!+HN'F=o!AL]Cm]R+,.s
+*KN_O&fDCD8L9QljV!t\Y$!?C9BHm*Pg3u#Rn`&ZRFLYM4eGO6'H.\rM++1:knKRd/t#G3;sG)9Ptn;Y
+X&\I#Rad3R>`DhO&XqO9a^qeLCUSRiY1[[$>OE:HPU69NQe62"S(6p5Fam%83#`QtdsT&AnJIcs0,]bi
+A+CKWQ;8rpb@U8V#Q+o6"G4I_n;'af(CZ&9U%&DI8gb=1`M2mYb\B'VNlRpc#n2\],a-9Fn;$Y9"ost4
+V=P"P`_eR]c)1)hbj'C3R7gq.WXJZK7&&)-oSQ?-I4qEqWV$UX8uE#_<@[[!c"a]oTY[\Vg1?.L!OC<.
+p5;YFf5.nMXnN3_b3*lXh6-L1c0G%N^>H-h$k<XMKYl]JQ3rkraoSckU9csG9.,qBflB)D"9&H+JjEek
+GXNkn$\h#Wd.i8`,nl/)@aTG=*!%"=7fY:=b_AP2P"B34GsnN0/!`PtZM<LhAM]cLB%)%Dk#X6obU:m8
+jQ_FdU/>URH:90G9;YX%eG=kgV,OBoC=RXLB!kjG=)6@`"bt!+Z<;"pHUXg^AUdosZjD+hiBOa+DV'/F
+cL_+L?Z4Ql/aEFi_I6n4]8dgFMlGH<dO[e0hiYW_1>.&n!WN4P_'#sq4<bFGKu5(<k^5]A&rFROZ"UdZ
+1E)7n,I-J1JjU`EaX"0+4JGb(Q-1JZl$U?X17?B6ZY@)3F#ol<-aW(9!eWh5d3uA:4;n)iJUf2Vl?u!o
+:8Cl>[;*>uPl?D:X0q5`@`)Z[fc`6LD3iXc[F+7^)h"<SCq8@SZAX]gh>sidYIEis!s=.ki@qcX4sL_u
+`T&\_m!_;HP0)f@\SSu\!<.O6i/h%h!YG`lJ74PLCap/(M+$?c=L;Bh)3%,GOkB;T5p;@]jH<Y&Sl$JY
+5GHO3FM8D;R7ub,=g[%*3Lrq.OElN!HU4?%k`f7.*g%20dc(k,>`,-VW7#FG>.%\A4f28q'q)1!]j\0J
+m$:j5T$_8[>4%X1FhZgS\QnQh>IE>XH+dPQQeV35!J/'pn<dH;[^fY*:[ApGG!=B7K48W,%(9Lt!.VeW
+E%hD5%g[eR+`PM=3Zeoh`1h6BXBI7oN5hW4aR"4;+HX[<E,Z5S'.<iOj`8IZ\mI.Ybb`YMXNgbnNQkhY
+RI'b\2k\NrF@n,'O%?(pWH?:"3hK6Ie>dX`X]ho1XOaFpb3aMi@'J:bG"XEUcY0]>X`hm)]&,Q<6tc"f
+mEbk\!7#HubO,/h4cE.q\3'[/%u.^U0mLoYJpi[#jK$m[KPN)\J3Vsg3$]7K#D>EP:q1$o*=mro@So+\
+<\5,H7Uo<*jE<[.O@Wn[3@'nb-^757;Rp>H>q_R=AlC^cenm@9:1mM9jS"!dTMT<$3[GQ$8#0$s<4ZX!
+FT/4,J/(,A<ioH';l`p0jY!f:K[_*ogEi01+Ks=3p:FnE5?YI#DHAgJVX7`O=K\"&jnAY&^gM+`4=1jR
+LW!YA=M/6)*KS9PE`kN%<ZQL>5Te?#r"9AAK>JccW)s*?%YqtH0c4.n.i+&_,;H.PE]Y>'a<WMi*0Nr1
+JNosWW0FSf/sjd/1F\jBCGq[--SqaWnp<Qm_IX?^L^&bITMd3qWa.BL*2,f4Pq&=cX&c:P.lF?_Ek>Y]
+fISp2*KnTXZe?uhX'N$cDR\CR2_1HIlZTns0/orfniosD^u]]$*&^$7^>^k)r$EL#NlU393@p];M?1_*
+?k<#H%Kuc`5p6f,<%]$tLI:&5(mIcE'oPN@&X_'c3?<[$,SCt'DFGk88`UKIPSsE:Q:e"f)3iE\24I>'
+':IA<Gs.cqkS+pM%Z*WL;<\d`<A'\6Vc2jq)O4's<NB-c'q3Zj\QuC?lkUNTNlbk&as9iB7$n'nP?G%)
+)jDi(Fgp/p(RrtCq0g"G0%Pqo#"JiLhshPP/d>/TQc1T0lo`EnO2Y]%&-r+?#6]XpT^[b2.MiMJ_kHT+
+N(PH3MT)=[Ls0Tm*0/(7nd,_^7jO8>V"0@9W`La;bGFe:N65ciRa%`$M9P7/4J'lsoEl$7LI@laW:YsA
+.WbZfe#E!INCK76Wn!p<.a;_3>cu\Zp'V=eX]i$[/9ZqGG0Oj$g9()WNQUF+]%sO`Mp:P]I(nLAp^@W?
+#DBtQYkX/P.i/D>A#NG_2DZ_7aFH%6L]dV["+igHd!.r*'aoa`@F4e&7O8_*7:OYh`+CkGN^mU,n-"J7
+,EbTmn0dk*<<JN.jjNsX`aprp7:``M^]np.QqM%tq?7(W6_[Fke9XP1PtRuQC"3!57\s%`<GL'1`FcM^
+Y#fDhqZV_nA$T6RepBi_eSDTtD:9BA`^^lV88\*J`>X/E]\dYZr!!B0A\MRAfQ]g\'6O:LZ'S]b7jXAA
+ATHIO_u]l>J\`J5BKRIP$AHA@YipI$,8,jP,-bgo@P\p^a!7kQr.79[Oi\lSBfr+g.[A1'ZKZbR@ksIs
+-F7F!ic@/OcR6'`r;qU<Qp7OR^]bpG8W(rq[-E&tLJk,%.THHP<jPu3f.48orG%5hLXPN)CH\CD<rgu)
+p01N`drN"T0"5W0iq%K0h_2J)rW<7S_;R)XCd''WMT+U1\EnZ3,6PDd.G68cJcPe$5N%W*1`d57!(,Y+
+fQ8G`&W&p8O]\ts0c>s?j,r!dIR,->6_o5='V8/NPtL/$flXr*-&9\kP?G9LEB0R\AlIA6_?Bk/d--]t
+2'.lOV,HQBg3#TQ;5mO[Q!1S%Z!"20l]p2sI_fHt=R;>X24i30[9Ds`gNC6h:nYaEF,BSH8TDFMlF2W;
+o)XE4hCr&:1q*?=_rC3M9MPBL.*1FhR9[1-0`Z^=TQ!FQ)@m+,_P(qiCcWXLLr?$-8?>uJ(lZJ0EQIKm
+59Q'/UiK$XRSP>rb,'.#Cq<t-R*;FK8Z^Wa31S9lF33eFImB[RW,tW`)NR"1;PE"UD*":cVa`-n&.Mg*
+=KKqbED!'R^J_19XEI-WJt$>Yg9"D&D*HQj\B:dP8+[_UBWfg!^`1&jknq3,n5h.n)\7bCij!aPDEAr%
+aQ0XP9WhSQR".EZ:cK^9%0qPQ@8OIE2B<<a6t0"QUfK&`N(.;S\E%fr+-9$(;E6"g9dc/tAQ$'L[TtPR
+9OTU=Uf7@RS4'68kT&T15G1h"<&u<@N<GffkqRJmg]L?Lc`$LtV,j]DW6T/N]&e+K$EV^V'\`MOc"E&=
+D,i!\!hKG">]*V)V:P$X]O#MX]B/bbJ&#H2=?IoH%>Vl2EEKkc2][t#A9(g8VH+:%N5,E)-l`j-#(o/!
+0W853)\.YA+u(L9;C`N@`Zm4:gi>ItN5)/BfK><%+-Xhn19"Na>:u8d+Ym1W`bRK%c6kEIgeMK-Skpgl
+.NK.#5,5qB[&RCeRnfm2.Q&]H;QEj!egiVXh/^,6YLkBa.ijerB!^2C2QL,hgMXLU/iP;Odd)(DaC!Jt
+7Ionr^W.V0$m$%@5).p5\?&q&"V8PlZ4Hl!1Fkf6?Q]=S'FkEKK0eH-QrG[U%>R8Wd277+.2@b0it7[.
+DE/_u8)t:#'TPa2P=ajKR8g=l/XK,m',d%[Bf2ASk7a95mWgsf:ZrK2'b6'hUJ^7iRT1u.9rCqT'cN?4
+WE$!!lP0[ODRfk-6sn;em>ek<YZ>TVRhQ4[D7<0>Q<Sd_kod38Y.'nMIcFpu?Yd-`((U_*_dW'PS5q9\
+NQ5Q")'"r<.@&(fo+20)$3p]c_4^:R9I^heL;T_T#`MA''T0l(nVGD(2]RjuU[e^"MFSqTae\Ka9JQJs
+M+\r<+9]i"1n)[dd](IUG<DJ:-M(C5$AV$Db%MG\2(FqdVSjns3d"&m<23DBo8$YcX'DgZX7co1MT985
+frXn*9rcf][bIqY$]W<lFLp;2pP[;]pO'^4YP8M9$O;?;<\"`Mh+JI^`aNlUr&k9.Pd4aR\VL@e"Ts?B
+@*j-d-5?H669l+WKLR7!KgfIuGf42O)idEudJ3p")#fOdj=tnLVH":nb@T,tKZ7RZRS@DCH,Sif4.]5\
+e+s4PKgVS3B[h>s-C%6$;eabXKgqn;W`<faHGsL(>HV%Ceb]N)`FH2VCt<r%VNW?[>9d2428TMIQ%3c"
+95HL:/<!i/\*I'!F*,9+,T$q*-P_QZ>-PO3IQ&Q0`(][Jr.G%N!eJ00n7Xo['*j6/+V:Sg66d,"`?MR#
+]OEZ8NQ39Kkkp$",*BtmZ=uFq;_"'U-*lc__IG?hbpKc2]]*unS^/[il2:[96D;dTZt_`JP=h\#.CAAg
+6DIGXeLItA]je<OXk"V[lMPtC@^4N9[VHio")>2GXg[PD_W*P]=tMuV*Qmt'KYO<AaDKAI(VdjA0Nh-`
+98U>l0t?S!6R.c9jYFA_^1%*BJO&.T=>V'2$&(_)OP"Y=+VBQ!ifR?M?83=W7cTW`oR9(LO\"Pr=Yu^I
+.@!NeP1ark@540Dk*&rThJkQH:?Rhoo_s"6Thss;=r7I+7YX.,Pe(]5Ti$SD+4-H6?Aeoc<3);<omX_c
+YuWE+#d&!`Bsg4-[b=`aiGlD5m[%.chXPm)?LO68p&>&D_-lc">W*Z9M8`roR+ujL+d'lWkEbJB$Rl(*
+^n>X;//f$)KYjF%aD<mZ&;1$-ECclp0,TYfUN+BAH9WO6aJ<iJ/=K?_Pff[S=_qgN0U9kZF%NI'"#uUl
+VfSgW_>P1Bc)>_V/K0[@Usc5ab&'23:oMmDF\8c>Y?7mWX*)SPHG<jlfW96h/Xk"![+_X*bAFiJE4F]+
+G=XRuLHN5pj0tBrhWo]W?fP""%N>q7`7/b9XDEdk)80RY!$#Pl#EF=!i(uBY((CM%6=E^#A2YG=LdY]L
+32BS,(Q:gn;7P\14WfbVA5YE5Q;&`k8nCo2A@>bsQqV*j3Mb5C2k3WU;n:u_I6XB$BN.#=(6(h[;JB+A
+AN$)TW)RM/J-AuU=/se$'tWL=,6"f7X:OTeQ9Sl1f4sl'7@N%N\6NP[X-M7gA$oWYd;.)1m=2oZE*,4L
+(Cc/<@W>M_AiC`kaCK<o4Jl13Qcq]:n0f7h$O27#+Y]j"1)g^Y`$-oaS5LjQMoHtrW8)DT*fnAf1+=3+
+9.#P2V(rSbZ<JrJbU*sJSC212P>#P<);Ode2kSGF1b'LYMajJZB/H7b,+D>l8uV=fm4M[@IoGYjWnh^-
+?E`!42Cff2b@\*7/N0Y8ZJ09+gb(N9S^QhI]A>2"X53@DI_Xep3%Q*`o2W]YYdgYJ,9)Q]a"[;tS0h0:
+L#ZP@#S[aSs+<Vqn*!^p)%D?giXm#l:+6p97H4uICao<$O%*N?)%[!D,([er&t)_%=Y5t5jqAVsc=o/*
+:$31XeF%TFT24Yb)ANa=7AE`E'Ui#SR8'SXl4k5&:8q6o<U1BgeS_p'Y?1'+)\nCTA[>P,(7=/Lf/8ar
+mLf>LSgA6\h;fA6e-]i3]O0]#]ESjSIZ!"P(W_%E$&s\tUY)',Z58GAj0K:%r!EZ3K#+,LLeK97%#2Zn
+nHb(G-PVHWU@F&`C,[,ma.r23%#RP#P0'NjM+jpN/=+JUo*LAuB/H(%VXoYgl?>@^c_pCB%17kYU=#q3
+MG5Re9W$:<oa6[N>lLb@^_MaOAhdJlf;g#5%;n%'IoPe(HMskaBXZ8>G0>$N4(XE,/QY$X:?qtnhgc9-
+jehK5_-XA@N(tl>N5jn_q$`9V-^;d8ZMB:YrWNCU6"&&a6m`WVL-oCrpk2*_'8f4fd<NTA2&hQGA't)T
+L.*>M8S$7p7&Es7Q:kf;q1Qb!1R_$Mds8moFY3YiB@H\\#(8S-;.J*)m2D6_RF3JTb(W;\:8-1;eS:pm
+K3,3WCXr:cL;dZ.=_uZ97AeUN[TdV"qh<&OF1PXpf6bL!om=D[DqFmk#6fa]<j9@J-70<'`a`E,=B7Ku
+Brtq:d(G#4rrRbdTWgsD%MK2'_]c8JHpT%jM8^[DBY7dq!0,#DZ0;++1Eqt',dM,HU/NP,b9aIYI)9AK
+RE[(bBtWGH3h=SEZg%DiK0l9Z.(!_P,*PWqdj_ZhI6s],WRWK+C;")_>-6C,[Hd^B_d]n(/@.nOU-Bj/
+g8rli/[@<R\_Jek\1@F?HAGaCGNc0I!HeABE4?bprtC:/j"\(1IR>?CalP:gCqa?Ys+*GnOB==\&IF.X
+iK2]64s:Mp7,j>2ZsGI)NCMrjf^sVY+d#=VP$'W5;(7c&jc\;=^0raa9]hOA[,,d_SPJ@3g%;'@6(q,L
+ZoU&cO[btkl'.WU!guob5j@nZSR.X_UfJ`OlLf0.?@P8A<,`;<O%#ks/XG.6^>X(B>jdq_[GLG!]jC/o
+g\(RIJ\ba`Qs;Nk&W+J9nX/*T59Z02AE#Kq:0JkB!'m2r81YYfs+J.\E0tH&*tX7HU2``*=t^_O`hROp
+]H09[J]D;A8M$<+.$V_^0I]u4?SIkkUQPTcg/n?CcDPa*lrFo$L<_2fg%?8E8>O\5FNSG]T2;K9Wc^q9
+>-D&0euNr9m<ZNTYh6%#9.cUYBXHKqG0=a6hf-*\Y'3O@g@':!hQM.HmG`p%RfHk5lW"!XJ<42ZGg'u!
+%>)E(1"X'3ZRM8l5N#?t,SggoKL0*D\7@K<%u<V_;)k@P/Jj@8@o9bsG!-q/87YUY,aM.PPY,Lb\R`-S
+0:5FF;`UZ)D)[t[B2cA%p3f/u:hWfh,o2J1Uf(o+\n*dj:T.6-<B?q4rE"[&hpGWW%_DlE=DV#"+9p($
+YJDcU],aqACq*TLf/oh[BlUHZD0K[dVFbd@`UFZOjqeJ^`+!^g]Oj)CO2tjP=ZiQ_/XO[H+7LZu&dnnr
+_BCV3>V[6.LVtAk.%F0c(5p0W0rWlJ4!'I(,VgegP"R-casAgB>d@QdQcpd4.@eh%2Ohu>1T=a`HTm>5
+Vna2k#)bsCa'[>qh(fL2T#p4ml>9G"<ia9@;#5SEZ!NDk-r`fd@Z=Kl=7%oH?*`4&\(iSp/"P,SG.ZTa
+2lkd*qgQ<<0K:U)'+9Q4i\<Eo?8EO\a5f!9.$Y^*!O16"&,6hK#mGrIi=MAU/f>+R6fJ[pPYNYBMacY<
+R+-"6*KN_O&f>Qh8Ks?ijUlb`Y$!?C9B@rIPg3u#Rn`&ZRFLYM4eGO6'H.\rM++1:knKRd/t#G3;sG)9
+Ptn;YX&\I#Ral;d?*@>r()n!Ka^qe]m1u)LqUn-#g[5]aXLcpg[QgnG&-^Y\I@XUqf%]inknLg>jd8/2
+0,]biA+CKWQ;8rpb@U8V#Q+o6"G4I_n;'af(CZ&9U%&DI8gb=1`M2mYb\B'VNlRpc#n2\],a-9Fnqg&?
+="KZ\V=P"Pb%EQ"c)1)hbj'C7T$O>,$4IsR7&%sl'T,U7QPcRJWUq[!7\<YU_J%ILc"a^8WmX-j$FOop
+"KtfL[VCJUYlD.$/XG]Kb3*lXh6-L1c0G%N^>H-h$k<XMKYl]Ppl%ru(Q?AoZ2"fg9.,tHjg+]<"9&H+
+JjEekGXNkn$\h#Wd.i8`,m+-9@aTG=Ah=4:7q-K6"EHXKP!ieXGslN^*IgXldeSR9AM]cLB$eY1)Cto\
+8n@O<FQS,eTg@nI.J5#@6`*dreG=kgV,OBoC=RXLB!kjG=)6@`"bt!+Z<;"pHUXg^CURGaf)(0@j`A"=
+DV'6Sk4O)8?Z4Qo"pY<a_I7E9GYD^o!Mr7?'l7]a+-Xi<V6Go;!!*.P_&uPK4<bFGKu5(<k^5]A&rFRO
+Yg<ef$Q>#E!&80bJjU`EaX"0+4JGb(Q-1JZl$U?X17?B6ZY@)3F#ol<-aW(9!eWh5d3uA:4X-(^V:-m#
+l?u!o;Q81r[;*BaZWaK_/%+[@K#;'&fdsRI4_?WfNCRArp[uDT-+H1A&:7^*-Zlsq0+_p\,5iIr8`N]R
+((1G+`T&\_m!_;HP0)f@\SSuh!<7U8i/h%t*YA^46K+$YF?Ui[M+$?c=L;Bh)3%,GOkB;T5p;@]jH<Y&
+Sl$r%9')5hFM;0<R7ub,=g[%*3Lrq.PM,U-JO,u+k`a?s*g'$j7%_u_<Bd*ILXTV[>%KT$;#in^Q"ou(
+[7@FQi>*@IHFkN1=CS_MQ'1*G\QnQh>IE>XH+dPQQeV35!J/'pn<dH=*ta@K@e#i@G!@.4a^jt1>dduo
+!.VeWE(DMu%g[j*T^V)\/enhF6fN'8"BmGqN5hVi8F-s6*g"I=EEKT2:EP?a-$%+D:,a&W9Vul&XElNX
+SBdp/$1.M45bQK&F@n,'O%?(pWH?:"3hK6Ie>dX`X]ho1XOaFpb3aMi@'J:bG"XEUcY0]>X`hm)]&.J:
+gobioXkN5g]\]i9b:J64Iu$^ooB\#sq^]ItnPWK)#9Sbg@BqZAmS\lRJ,g]g3#Di/"GB*Kn@3!e*=mro
+@INEU8hCj<7Uo<*jE<[.O@Wn[3@'nb-^757;Rp>H>q_R=AlC^cenm@9:1mM9jS"!dTMT<$3[GQ$8#0$s
+<4ZX!SPQ1`C/m<k<ioH)<bk^Hj`\=EYZP^B4!g3;,_X$B^`,rSd;?51D7;2&`_1E_?)2\&9V*[3X^(8f
+bGFM6LW!YA=M/6)*KS9PE`kN%="Tc_5TfJD*"iV`K>JccW*D(s%YqtH0drPi.i+&_,;H.PE]Y>'a<WMi
+*0NrAPKG1,WEc`5/sjd/1F\jBCGq[--SqaWnp<Qm_]RAW3!,"-UX<PX?k"lR:8cG`[/-=kN<u:CW\Q'+
+-4<qX8Lo;u?j<T<WE?0?.f9XmB=HYK2_1HIlZTns0/orfo)!mNi%R,A*YSp9_r<C1XBm\%NlU393@pb#
+/!eB@+:n5]%LE;k6/`BB<%]$tLI:&5(mIcE'oPN@&X_&f!?I4kj:W=EN_(O\8`^SQ<3B@UQV6HS)3iE\
+24I>'':HoGGr(H+kS+pM%Z*WL;<\d`<A'\6Vc2jq)O4's<NB-c'q3Zj\QuC?lkUNTNlbk==mZuo<Nb"l
+[p/8:)jS_5Fh:rJ(RrtCq0g"bn/*,Z-?hVD@IY2)<\G>Ma(+ZX*/*e`+i3:3&-r+?#6]XpT^[b2.MiMJ
+_kHT+N(PH3MT)=[Ls0Tm*0/(7nd,_^7jO8>V"0@9W`La;bGFe:N65ciRa%`$M9P7/4J'lsoEl$7LI@la
+W:YsA.[Ni+e#E!INCp*JWn"-BLi<F)>cu\/2@B,7a(2L/XS.QHWn2'qgTC2XNQUF+]%sO`Mp:P]BWU*p
+p^@W?#DBtQYkX/P.i4/aj0ACgN_:aab2or)L]dV["+igHd!.r*'aoa`@F4e&7O8_*7:OYh`+CkGN^mU,
+q#lF@,EbW/dWn6X<@aA.A^^C-`apr\^S]D/"QjhgSkj"Jq?7(W6_[Fke9XP1PtRuQC"3!57\s%`<GGH)
+`FcM^Y#fDhqZV_nA$T6RepBi_eSDTtD:\T<`oV9Q?#J8@`THi?^0bg1r!!B0K>M&9fR-.9'oU(!-_MH4
+lPl&1ARlK;ZiU1.J\`J5BKRIP$AHA@YipI$,8,jP,-bgo@P\p^a!7kQr.79[Oi\lSBfr+g.[A1'ZKZbR
+@ksIs-F7F!ic@/OcR6'`r;qU<U!Y9qC-<c)8u9uc[-E'+UJe)A.^a$)@^B7*J1J%mrH>YZZ.U[/$TJ42
+C:2eJ[d/@Yj)V]d0"5W0iq%K0h_2J)rW<7S_;R)XCd''WMT+U1ZKLpJ'9L>NTf.f53WT225i@`+1`d58
+KgOa[fQ9;#&W&p8O]\ts0c>Rn,CgX'E^0Va8E>q:1nIPnPtL/$flXr:0pt_tP?G9LEB0RbkEFTkrddA/
+;!=-I2'.lOV,HQBg3#TQ;5mO[Q!1S%Z!"20l]p2sI_fHt=R;>X24c0=[7DkbgNC6(*WXp]QOC4XnThfS
+n!Df%rrI\e@.9Og2BNNf`FAA)gibn*Oi_/)R9[1-0`Z^=TQ!FQ)?^%n_P(q94?=PqLr?$-8?>uJ(lZJ0
+EQIKm59Q'/UiK#E1/7h4b,'.#Cq<t-R*;FK8Z^Wa31S9lF33eFImB[RW,tW`)NRFbd]%?2D*":cW77hi
+9!):#=KL)SFis)t^L4:uXEI5gRa5ZSg8Qi`AZjp0\C7Ra]9V+=GeDn:GK]CMs+%oCY]rho)\7bCij!aP
+DEAr%aQ0XP9WhSQN.:mN:cK^,rs+3D@8OIE2B<<a6t0"QUfK&`N(.;S\E%fr+-9$(;@"h<!@*h$AQ$'L
+[TtPR9P.3`Ut0BAS5*]q\`EI45G1hd<&u<@NCTdBBiMZT2P!XB<,,DoV,j^"XB'+:]&e+K?a*XK<]_Un
+c"FCeAQ!1nWnhU';f.UhNRmK@]O#MX]B/bbJ&#H2=?IoH%>Vl2EEKkc2][t#A9(g8VH5@-\\J1V-i=Sb
+#(sc90W853)\.YA+u(L9;C`N@`Zm4:gi>ItO2kX+.3+42-BlRu19"Na>:u8d-8R*@dVCb1c6kEIh"#eU
+T?nuC.NK.[7\eB\1oah:Rnfm2.Q&]H;QEj!egiVXh/^,6YLkBa.ijerB!]W*QCnDUgMXLKm;bjRdd)(g
+hCgggh=CGl^Yge*/05H4L;W"*336FB)ihu"1-$nW;_*a98Dk$R'FkEQK0eH-QrG[U%>R=1&K$a-.2@b0
+it7[.DE/_sJ0YaF'S8IoP=ajKR8g=l/XK,m',d%[Bf2ASk7a95mWgsf:ZrK2'b6'hUJ^7iRT1u.9rCqT
+'cN?4WE$!!lP5l=DRj&V=6p\A'opCIZUs5$O9M6/D7<EF;EK<Pl#jUDmh_JDmeM:G?gnmP((U_*_dW'P
+S5q9\NQ5Q")'"r<.>bRUZEOT3$3p]c_4^:R9I^heL;T_T#`MA''T0l(nVGBd!?@-?UQMMaMFSqTae\Ka
+9WD/FQHQ,r$&m#>1n)[do81]VG<DJCVt:<*$AV$DdAZ\p9e)K'VUMO;$B7ZU<3"KKonq"/[p6)fX7co1
+MT985`8gQA"e+%Z[aV?5qfU'EFLp;2pP[;]pO'^4YP8M9$O;@%iNW*9:+I->`oF?"%$!t.P`/ilfiS@U
+"Ts?B@*j-d-5?oC6Xe@:KLR7$MFD"%Gf41m!00QZdE'gl73dseAC>`kVH#.494cQIKZ7RZRS@DCH,Sif
+4.]5\e+s4PKgVS3B[h>s-C%6$;eabXKgqn;W`<faHGsL(>HV%Ceb]N)`FH2V@WD91!mPMh>A;ZUrOV*3
+\m94*Hc>.?HbNj*fDGgX"bX[#E7fP--P_QZ@r^0!L.<PRb!muqm&U6f!eJ01Y\6-C'+0H2+gC0X66d,"
+`?MR#]OEYr!(S9=ki?JG,*BtmZ=uFq;_"'U-*lc__IG?hbpKc2]]*unS^/[il2:[96D;dTZt_`JP=h\#
+.CAAg6DIGXeLItA]je<OXk,)2lMZ=P@^4T;YrM]T!G8ao/[Xh;Ibf%Th(H0P^#JX0^#(KPli$tgK#-D"
+\84>R'8jch0t?S!6R.c9jWbQIp/V1nJO&.T=>V'2$&(_)OP"Y=+VBQ!ifR?M?83=IJ0U3/oPuf4O\"Pr
+=Yu^I.@!NeP1ark@540Dk*&rThJkQH:?Rhoo_sD-Thss;=u@@`8Yo>LPhL7DTi%dglBPP\?EmY8<pQ%)
+omX_cYup@Y=Iaie!4,krQJ-JY5An#:m[%.chXPm)?LO68p&>&D_-lc">W*Z9M8`roR+ujL+d'lWnr\i`
+HRf)G^n>X;//f$)KYjF%aD<mZ&;\9!ECd070,TY_^_+ZSH8un*aJ<iJ/=K?_PffhCa_\Oq0UU(]F%NIe
+D`F94VfTuHqL:c'd&;%Y/K0[@Usc5ab&'23:oMmDF\8c>Y?7mWX*)SPHG<jlfW96h/5AEC!*Q<TlYWf^
+A$j;E(JCmams)M%YBS1WqYu)]i37H"/fP=W`8\%Hb\fKaON?LgGtbAEKlV\D+@$20((CM%6=E^#A2YG=
+LdY]L32@l!(Q-4B;7P\14WfbVA5YCg%S\=68nCo2A@>bsQqV*j3Mb5C2k3WU;n:u_I6XB$BN.#=(6(h[
+;JB+AAN$)TW)RM33i,lZ=0,G<<P%:8]jJ!GCfWVDQHa'L>&@0J4gkZ4V+':gbE[D>#eSkCG3MH\rI;Uj
+E*,4L(Cc/<@W>M_AiC`kaCK<o4Jl13Qcq]:n0f7h$O27#+Y]j"1)g^Y`$-oaS5LjQMoHtrW8)DT*fnAf
+1+=3+9.#kF,r2H)Z<Jr>!%'KNSAnnoS%kjWGV%tT,bE<F1b'J'Bgr)".5\&117M%:e1*=*SPlLhX4AdY
+Wnh^-?E`!42Cff2b@\*7/N0Y8ZJ09+gb(N9S^QhI]A>2"X53=e8"*dre-i,`X+e@.Dt?(\1E2@pj>&_H
+Sl7/*bN9oXp_42E"bT,"&=?EL)%D?giXm#l:+6p97H4uIe8@8eO%87D)&/*&-'Lp^&t)_%=Y5t5jqAVs
+c=o/*:$31XeF%TFT24Yb)ANa=7AE`E&<I&JR8'O+C)%YP:8pj`<U-u\eS_p'Y?1'+)\nCTA[>P,(7S=,
+fkn3&mM?h-cKTJ`?1/T!eaE6]^L-II)NA(.Jr!hi'Z`0^4,LhnZ.U+]@jRDY!-8\O":>A9J&.fILeK97
+%#2ZnnHb(G-OPGoTWq&3C,[,ma.r23%#RP#P0'NjM+jpN/=+JUo*LAuB/H(%VXoYgl?>@^c_pCB%17kY
+U=#q3MG5Re9W$:<oa6[NVc9\HWqD7oC:@HNf;nTQ%>r2:ZGE:*HSi=_&rXN,nVHk4"V&"m,'N_Q<p:U4
+8M2_*c0">>[7P8g$oTUPN5jn_q$`9V-^;d8ZMB:YrWNCU6"&&a6m`WVL-oCrpk2*_'8f4fd<NTA2&hQG
+A't)TL.*>M8S$7p7&Es7Q:kf;q1Qb!1R_$Mds8moFZZ0jB@H\\#),F=;/"I)0ERM4VGaB,RV2aW;2WmJ
+Q"Xt0[0*8@lVH`0@])t]f4jhKNJc%t[TdV"qh<&OF1PXpf6bL!om=D[DqFmk#6fas@;skH7OJq/`aa#@
+r.[]fPKIHK(7K%?rrRbf+L#NA+qk<;_]c8JHl)ksM8EWIBS6^A(l?8)nRqK'#p#,Ki=YiqE[;lbb,''V
+/@o=HREZmqRCE<63h=SEZg%DiK0l9Z.(!_P,*PWqdj_ZhI6s],WRWK+C;")_>-6C,[Hd^B_d]n(/@K=W
+U=3kbgF]l"IDY#b\_SmICVAa!HG/2h\*M8t;h(F`-[8e$[g@nHiT=7tAgU;0a5H(3)!4j!s+*GnOB==\
+&IF.XiK2]64s:Mp7,j>2ZsGI)NCMrjf^sVY+d#=VP$'W5;(7c&jc\;=^0raa9]hOA[,,d_SPJ@3g%>8p
+6(q-=PZfpcO\)BIl'0nE5+tiQ<9f`P[9g+@X\XH^g@]p,>EDqe&81[-)/"FcCXDr)W]b3M>V:2U/]o5Y
+K@qHXLu%pHEO&\#3*\?`&W+J9nX/*T59Z02AFc-n[U1`hJ&%^r81YYi#_^'gE6)iV*tX7HU2``*=t^_O
+`hROpm!:l=ON=5<8M$<+.$VlNEli./?SIkkVK5>1g2As@cDPa*m.u2sKn(Rn8hCO*3hf8SeAsKa!?nAY
+ku%Kj=t<R,enGl?/O$":Yh6%#9.cUYBXHKqG0=a6hf-*\Y'3O@g@':!hQM.HmJ?j5^u2GA9J.7pLrA;X
+Gg($Y^IH71CND&&M_,$]5G1gI+9DuTKL0*D\7@3#!/AB6:Zt21,7]@Fj&*>IG!-q/87Sn",aLkHPY,Lb
+\R`-S0:5FF;`UZ)D)[t[B2cA%p3f/u:hWfh,o2J1Uf(o+\n*dj:T.6-<B?sWX]MT)CK7t-G.h7e=DV#"
+-'legZs%<I]4JG,Dn&\U[lB)]?P\Vhjk$GJic0F,i$9,[A3UAA\mfQ%HaN)RK#Zkl=ZiQ_/XO[H+7LZu
+&dnnr_BCV3>V[6.LVtAk.%F0c(5p0W0rWlJ4!'I(,VgegP"R-casAgB>d@QdQcpd4.@eh%2Ohu>1TB1#
+HTn(K-o<Co&rT5SdO@#Q>r%mEVpm1N^]dW:<iT,q2-I>)9jNM*iU?(P%`\L#=7"<2$neSqXOerr.tuF;
+G.ZTa2lkd*qgQ<<0K:U)'+9Q4i\<Eo?8EO\a5f!9/=ocjQHSD5&,6hK#mGrIi=MAU/f>+R6fJ[pPYNYB
+MacY<R+*5Z*KN_NZ+1R/8I:GL@e+e4)H@64aX-HpN%/HjRn`!b$.&`n4eGO6'H.\rM++1:knKRd/t#G3
+;sG)9Ptn;YX&\I#Ral;d?*@>r()n!Ka^qe]m1u0kY1[[$>OE:HQ-SW:]3XkAS(-SE+2,Z@YUB,SKn5*=
+hpQ3I3t6_Z`::':NW*@7alP;i#Q+o6"G4I_n;'af(CZ&9U%&DI8gb=1`M2mYb\B'VNlRpc#n2\],a-9F
+nqg&?="KZ\V=P"Pb%EQ"c)1)hbj'C7T$O>,$4R>t7&&)-oSQ?mQV=:*WV$UX8uGXgeZ/;"b_Q:)Y1K_>
+W==4Trj'LZYNWrc`F"DPA(J.YU(_I*h/#!m*I@7'^>H-h$k<XMKYl]Ppl%ru(Q?AoZ2"fg9.,tHjg+]<
+"9&H+JjEekGXNkn$\h#Wd.i8`,nl/)@aTG=Ai1Nf7q9sB"GT>iP"B34GsnN0/!`h<!""=uAMBHFA2>+1
+)K?mj`$_h#r)/.bU!@?!=e-f=8#B4!eG=kgV,OBoC=RXLB!kjG=)6@`"bt!+Z<;"pHUXg^CURGaf)(0@
+j`A"=DV'6Sk4O)8?Z4Qo"a6.e^sXp!g.VtSMhL)"=R#J,&MV2=Ygg=U!!*%M_'#sq4<bFGKu5(<k^5],
+!/\Z=YrI\O1E)7n,I-J1JjU`EaX"0+4JGb(Q-1JZl$U?X17?B6ZY@)3F#ol<-aW(9!eWh5d3uA:4X-(^
+V:-m#l?u!o;Q81r[;*BaZWaK_/%+[@K#;'&fcZDm4:97\ZcDHq]6%fH)2^tfO>ljl$$^qf0%)iSWrHai
+i,H2B4sL_u`T&\_m!_;HP0)f@\SSuh!<7U8i/h%t*YA^46K+$YF?Ui[M+$?c=L;Bh)3%,GOkB;T5p;@]
+jH<Y&Sl$r%9')5hFM;0<R7ub,=g[%*3Lrq.PM,U-(]^7+k`dP#*W8R(d38.lh)Z?FTuJR%8q_5c%A_S4
+d$i3#F]+sd/='KtT$_8[>4%X1FhZgS\QnQh>IE>XH+dPQQeV35!J/'pn<dH=*ta@K@e#i@G!@.4Zrj;q
+.]--!!!#7AE(DMu%g[i=+`PM=3YN'X6_\QkXAU8[JjlGSaC#3:(6$>1E_.gN:FLe7AMVAD\mI.YbbfGQ
+XP.SPSBe$RamAkR5bQK&F@n,'O%?(pWH?:"3hK6Ie>dX`X]ho1XOaFpb3aMi@'J:bG"XEUcY0]>X`hm)
+]&.J:gobio"Kq&lIpT;pbNrj0I_amGGYB_/%uA0`Z$=K14!0R*jKa&)Y$3QHJ3Vsg3$]7K#D>EP:q1$o
+*=mro@So+\<\5,H7Uo<*jE<[.O@Wn[3@'nb-^757;Rp>H>q_R=AlC^cenl!!:1mM9bhdb4TLWA=3XdKm
+rh@hLF37klPu">XC/m<k<ioH)<bk^Hj`\=EYZP^B4!g3;B=(iZ<kDqOh/Bf.DHAorf'R[o?>ioWjnAX$
+VU$pd)E]e`#fFZ%3(bM-omr[oZ<9;e="Tc_5TfJD*"iV`K>JccW*D(s%YqtH0drPi.i+&_,;H.PE]Y>'
+a<WMi*0NrAPKG1,WEc`5/sjd/1F\jBCGq[--SqaWnp<QmcmU_#*>49"UXCSJWa.BL:8cSk0CT-CX&c6"
+X"]n5Ej]/%6*'[Z*)`tP!*Lm3X'N$cDR\CR2_1HIlZTns0/orfo)!mNi%R,A*YSp9_r<C1XBm\%NlT5B
+omDKm.oFDgTF^f3%LE;k6/`BB<%]$tLI:&5(mIcE'oPN@&X_'c3?=/Nj:W=EN_(O\8`^SQ<3B@UQV6HS
+)3iE\24I>'':IA<Gs.cqkS+pM%Z*WL;<\d`<A'\6Vc2jq)O4's<NB-c'q3ZjL]FV[lkSgINlbk6=D\$G
+26PVL[p/8:)jS_5Fh:rJ(RrtCq0g"bn/*,\%gds-@IY2)<\G>Ma%7j@*.C[44NQ/1YQt(5#6]XpT^[b2
+.MiMJ_kHT+N(PH3MT)=[Ls0Tm*0/(7nd,_^7jO8>V"0@9W`La;bGFe:N65ciRa%`$M9P7/4J'lsoEl$7
+LI@laW:YsA.[Ni+e#E!INCp*JWn"-BMTolg!3XqSp"J5Za(2GW/DpmfWn2'qgTC2XNQUF+]%sO`Mp:P]
+I(nLAp^@W?#DBtQYkX/P.i4/adVTa.G"X2IaB.r#L]dV["+igHd!.r*'aoa`@F4e&7O8_*7:OYh`+CkG
+N^mU,q#lF@,EbW/dWn6X<@aA.A^^C-`aprp9kMk"`9)2(Skj"Jq?7(W6_[Fke9XP1PtRuQC"3!57\s%`
+<GL'1`=)cOY#fC]Rg"Pc@tWC7^^DHceSDTtD:\T<`oV9Q?#J8@`THi?^0bg1r!!B0K>M&9fR-.9'oU(<
+/G8@I7jULBf5c.a_u]l>J\`J5BKRIP$AHA@YipI$,8,jP,-bgo@P\p^a!7kQr.79[Oi\lSBfr+g.[A1'
+ZKZbR@ksIs-F7F!ic@/OcR6'`r;qU<U!Y9qC-<c)8u9uc[-E'+UJe)A.^a$(;up1)f.0jYrIVprL0&2a
+$QYtjC:2eJ[d/@Yj)V]d0"5W0iq%K0h_2J)rW<7S_;R)XCd''WMT+U"2JVY=,Eea1l^9lL@K?FZ5i@`+
+1`d58KgOa[fQ9;#&W&p8O]\ts0c>s?j,r!dIR,->8E>q:1nIPnPtL/$flXr:0pt_tP?G9LEB0RbkEFTk
+rddA/;!=-I2'.lOV,HQBg3#TQ;5mO[Q!1S%.KHSOl]nKhI_fHt6S#TA"cguE[9Ds`gNC6hEOf?BQWplS
+nThfSn!Df%rrI\e@.9Og2BNNf`FAA")`;gYOi^G)ous"70`Z^=TQ!FQ)@m+,_P(qiCcWXLLr?$-8?>uJ
+(lZJ0EQIKm59Q'/UiK$XRSP>rb,'.#Cq<t-R*;FK8Z^Wa31S9lF33eFImB[RW,tW`)NRFbd]%?2D*":c
+W77hi9!):#'`_:8Fir6D^L4:uTp=@\!lnu]g9#PAD7\VD\D4629<Hq:GeDn:GK]CMs+%oCY]rho)\7bC
+ij!aLNLIJ=aQ0:%qW:R,R".EZ:cK^9%0qPQ@8OIE2B<<a6t0"QUfK&`N(.;S\E%fr+-9$(;E6"g9dc/t
+AQ$'L[TtPR9P.3`Ut0BAS5*]q\`EI45G1hd<&u<@NCTdBBiMZT2P!XB<,,DoV,j^"ML[3W]&d\3?a*XK
+:s/0i!FrK?D-"8[[bYl3>]*V)V:P$X]O#MX]B/bbJ&#H2=?IoH%>Vl2EEKka7a55YjDn3NI<-d&bWm9>
+-l`j-#(sc90W853)\.YA+u(L9;C`N@`Zm4:gi>ItO2rS%.3+LD-BlRu19"Na>:u8d-8R*@dVCb1c6kEI
+h"#eUT?nuC.NK.[7\eB\1oah:Rnfm2.Q&]H;QEj!`BY0<h/]o*YLkBa-tRSE!3t602QL,hgMXLU/iP;O
+dd)(ghCgggh=CGl^Yge*/05H4L;W"*336FA,A++=E]GTb5.Qm#jrb30'FkEQK0eH-QrG[U%>R=1&K$a-
+.2@b0it7[.DE/_u8)t:#'TPa2P=ajKR8g=l/XK,m',d%[Bf2ASk7a95mWgsf:ZrK2'b6'hUJ^7iRT1u.
+9rCqT'cN?4WE$!!ih-Y/DRirP=6p\A'Jd:3!*JV(RoQWED7<a;(E8Xbl#jUDmh_JDmeM:G?gnmP((U_*
+_dW'PS5q9\&[PPY\K$kB+'cqLo+20)$3p]c_4^:R9I^heL;T_T#`MA''T0l(nVGD(2]RjuU[e^"MFSqT
+ae\Ka9WD/FQHQ,r$&m#>1n)[do81]VG<DJCVt:<*$AV$DdAZ\p9e)K'VUMO;$B7ZU<3"KKnPBC([p6%#
+hpr.RMT985_5k"p"e+%Z[bIqY$]W<lFLp;2pP[;]pO'^4YP8M9$O;@%iNW*9:+I->`oF>o)bkN"Pfh@Y
+<QG:A"Ts?B@*j-d-5?oC6Xe@:KLR7$MFD"%Gf42O)idEudJ3p"73dseAC>`kVH#.494cQIKZ7RZRS@DC
+H,Sif4.]5\e+s4PKgVS3B[h>s-C%6$;eabXKgqn;W`<faHGsL(>G;*Jeb]Mr\RVpJCDIjS!mPMh>A_sg
+KuW4q\m94*Hc>.?HbNj*fDGgX"bX[#E7fP--P_QZ@r]pi9nsgSb"jcN%'0L0!eJ01Y\6-C'+0H2+gC0X
+66d,"`?MR#]OEZ8NQ39Kkkp$",*BtmZ=uFq;_"'U-*lc__IG?hbpKc2]]*unS^/[il2:[96D;dTZt_`J
+P=h\#.CAAg6DIGXeLItA]je<OMh!=clMYn8@^4T;<XUkgbA+H>/[jtn_W,[Ih(H0P^#JX0^#(KPli$tg
+K#-D"\84>R'8jch0smE=K,p,scghhKVIBQ*JO&.T=>V'2$&(_)OP"Y=+VBQ!ifR?M?83=W7cTW`oR9(L
+O\"Pr=Yu^I.@!NeP1ark@540Dk*&rThJkQH:?Rhoo_sD-Thss;=u@@`8Yo>LPhL7DTi%dglBPP\?Elit
+f"`$SfESneXOum*>;RD=Bsh+2QJ6PriGlD5m[%.chXPm)?LO68p&>&D_-lc">W*Z9M8`roR+ujKpM.(e
+nl]5+?SMN\5bN'e//f$)KYjF%aD<mZ&;\9!ECd070,TYfUN+B8r]_NeaJ<iJ/=K?_PffhCa_\Oq0UU(]
+F%NIeD`F94VfTuHqL:c'd&;%Y/K0[@Usc5ab&'23:oMmDF\8c>Y?7mWX*)SPHG<jlfW96h/Xk"![+_X*
+bAFiJE4F]+G>#'lms)(WDg0ClqYu)]i37H"/fOP2`8\%Hb\fKaON?LgGtbAF0:78Si(uBY((CM%6=E^#
+A2YG=LdY]L32BS,(Q:gn;7P\14WfbVA5YE5Q;&`k8nCo2A@>bsQqV*j3Mb5C2k3WU;n:u_I6XB$BN.#=
+(6(`_;JB+AAN$)TW)RM33i,lZ=0,G<<P%:8]jJ!GCfWVDQFTMm>&@<PA[^E5\6NoQ4/LNqGJ%7#=1dSf
+rI;UjE*,4L(Cc/<@W>M_AiC`kaCK<o3^oMiQcq\p&1AM2$O27#+Y]j"1)g^Y`$-oaS5LjQMoHtrW$D:'
+*fnAf1+=3+9.#kF,r2H)Z<JrJbU,+pSC212S'EB;WSI&k5+g1M1b'LYMajJi.5\&117M%:e1*=*SPlLh
+X4AdYWnh^-?E`!42Cff2b@\*7/N0Y8ZJ09+gb(N9S^QhI]A>2"X53@DI_Xep3%Q*a$\lRY0fZ7@1E2@p
+j>&_HSl7/*bN9oXp_42E"bT,"&=?EL)%D?giXm#l:+6p97H4uIe8@8eO%87D)&/*&-'Lp^&t)_%=Y5t2
++4D*Tc=o/*:$31XeF%TFT24Yb)ANa=7AE`E'Ui#SR8'SXl4k5&:8q6o<U1BgeS_p'Y?1'+)\nCTA[>P,
+(7S=,fkn3&mM?h-cKTJ`?1/T!eaE6]^L-II*#9%kKu7?h(n=V[)3)[HneiF5:FVRPAb-H<r!EZ3K#+,L
+LeK97%#2ZnnHb(G-PVHWU@F&`C,[,ma.r23%#RP#P0'NjM+jpN/=+JUo*LAuB/H(%VXoYgl?>@^c_pCB
+%17kYU=#q3MG5Re9W$:<oa6[NVc9\HWqD7oC:@HNf;nTQ%>r2:ZIu>QMbU5'Cpr*#pBuu'kB+;kY4mk!
+lM#\?hlle`%LWMp_Vq`oN(tl>N5jn_q$`9V-^;d8ZMB:YrWNCU6"&&a6m`WVL-oCrpk2*_'8f4fd<NTA
+2&hQGA't)TL.*>M8S$7p7&Es7Q:kf;q1Qb!1R_$Mds8moFZZ0jB@H\\#),F=;/"I*74+9mVGh3YqLqD8
+;lWi4eU#2H[9Ke8CXr:cL;dZ.=_uZ97AeUN[TdV"qh<&OF1PXpf6bL!om=D[DqFmk#6fas@;skH7OJq/
+`aa#@r.[]fPKIHWfmL^=rrRbf+L#NA+qk<;_]c8JHpT%jM8^[DBY7e1)NDc^Z0;+;6R%Z7,dM,HU/NP,
+b9aIYI)9AKRE[(bBtWGH3h=SEZg%DiK0l9Z.(!_P,*PWqdj_ZhI6s],WRWK+C;")_>-6C,[Hd^B_d]n(
+/@K=WU=3kbgF]l"IDY#b\_SmICVAa!HG/2h\*O"q"+nAJ0Xtp_,85sRj"\(1IR>?CalP:gCqa?Ys+*Gn
+OB==\&IF.XiK2]64s:Mp7,j>2ZsGI)NCMrjf^sVY+d#=VP$'W5;(7c&jc\;=^0raa9]hOA[,,d_SPJ@3
+g%>8p6(q-=PZfpcO\)BIl'0nE5+tiQ<9f`P[9g+@X]FbQg@]p2@Bir$Q<Q5<d:p!lm?ZLL^>X(B>jdq_
+[GLG!]jC/og\(RIJ\ba`Qs;Nk&W+J9nX/*T59Z02AFc-n[U1`hJ&%^r81YYi#_^'gE6)iV*tX7HU2``*
+=t^_O`hROpm!:l=ON=5<8M$<+.$VlNEli./?SIkkVK5>1g2As@cDPa*m.u2sT[9WZ8hCsB8>O\5FNSG]
+T2;K9Wc^q9>-D&0euNr9m<ZNTYh6%#9.cUYBXHKqG0=a6hf-*\Y'3O@g@':!hQM.HmJ?j5^u2GA9J.7p
+LrA;XGg(%e+-=S)Z?]-H>;)@o5N#?t,SggoKL0*D\7@K<%u<V_;)k@P/Jj@8@o9bsG!-q/87YUY,aM.P
+PY,Lb\R`-S0:5FF;`UZ)D)[t[B2cA%p3f/u:hWfh,o2J1Uf(o+\n*dj:T.6-<B?sWX]MT)CK7t-G.h7e
+=DV#"-'legZs%<I]4JG,Dn'%i=$*80m<?3LDcaR4pAKKV?uT41-5R,H`+!^g]Oj)CO2tjP=ZiQ_/XO[H
++7LZu&dnnr_BCV3>V[6.LVtAk.%F0c(5p0W0rWlJ4!'I(,VgegP"R-casAgB>d@QdQcpd4.@eh%2Ohu>
+1TB1#HTn(K-o<Co&rT5SdO@#Q>r%mEVpm1R.\0J<<iae%26,JQ]3_\n/2f"!P07IDg+>4`?*`4&\(iSp
+/"P,SG.ZTa2lkd*qgQ<<0K:U)'+9Q4i\<Eo?8EO\a5f!9/=ocjQHSD5&,6hK#mGrIi=MAU/f>+R6fJ[p
+PYNYBMacY<R+-"6*KN_O&fDCD8L9QljV!t\Y$!?C9BHm*Pg3u#Rn`&ZRFLYM4eGO6'H.\rM++1:knKRd
+/t#G3;sG)9Ptn;YX&\I#Ral;d?*@>r()n!Ka^qe]m1u0kY1[[$>OE:HQ-SW:]3XkAS(6s&ID9.Y(`X;%
+$&-9*nJIcs0,]biA+CKWQ;8rpb@U8V#Q+o6"G4I_n;'af(CZ&9U%&DI8gb=1`M2mYb\B'VNlRpc#n2\]
+,a-9Fnqg&?="KZ\V=P"Pb%EQ"c)1)hbj'C7T$O>,$4R>t7&&)-oSQ?mQV=:*WV$UX8uGXgeZ/;"c"a^m
+Y1K`J$Or!6A?smip5;YFf5.nMXnN3_b3*lXh6-L1c0G%N^>H-h$k<XMKYl]Ppl%ru(Q?AoZ2"fg9.,tH
+jg+]<"9&H+JjEekGXNkn$\h#Wd.i8`,nl/)@aTG=Ai1Nf7q9sB"GT>iP"B34GsnN0/!`h>deSR9AM]cL
+B%)%Dk&ibW:M8/Q"U9ZJU/>URH:90G9;YX%eG=kgV,OBoC=RXLB!kjG=)6@`"bt!+Z<;"pHUXg^CURGa
+f)(0@j`A"=DV'6Sk4O)8?Z4Qo"pY<a_I7E9Hq#IuMoK7Hf_gIo-'QJ_EnPiY!WN4P_'#sq4<bFGKu5(<
+k^5]A&rFROZ"UdZ1E)7n,I-J1JjU`EaX"0+4JGb(Q-1JZl$U?X17?B6ZY@)3F#ol<-aW(9!eWh5d3uA:
+4X-(^V:-m#l?u!o;Q81r[;*BaZWaK_/%+[@K#;'&fdsRI4egD?[G*:Al[?Y1Ek1!Y[qi\:o6S+-0=U9H
+!s=.ki@qcX4sL_u`T&\_m!_;HP0)f@\SSuh!<7U8i/h%t*YA^46K+$YF?Ui[M+$?c=L;Bh)3%,GOkB;T
+5p;@]jH<Y&Sl$r%9')5hFM;0<R7ub,=g[%*3Lrq.PM,U-JO,u+k`f7.*g'$j;X'G"FZuKrWDr/J>.%\A
+=fk`jQ.kn[_-sTNm$:j5T$_8[>4%X1FhZgS\QnQh>IE>XH+dPQQeV35!J/'pn<dH=*ta@K@e#i@G!@.4
+a^jt1>dduo!.VeWE(DMu%g[j*TlA(h3Zeoh`1h6BXBI7oN5hW4aR"4;+HX[?E_.gN:FMIMV/j[o\mI.Y
+bbfGQXP.SPSBe$RamAkR5bQK&F@n,'O%?(pWH?:"3hK6Ie>dX`X]ho1XOaFpb3aMi@'J:bG"XEUcY0]>
+X`hm)]&.J:gobioXkN5g]\]i9bO,0+JAC*IGYB_/%uA0`Z$=K14!0R*jKa&)Y$3QHJ3Vsg3$]7K#D>EP
+:q1$o*=mro@So+\<\5,H7Uo<*jE<[.O@Wn[3@'nb-^757;Rp>H>q_R=AlC^cenm@9:1mM9jS"!dTMT<$
+3[GQ$8#0$s<4ZX!SPQ1`C/m<k<ioH)<bk^Hj`\=EYZP^B4!g3;B=(iZ<kDqOh/Bf.DHAorf'R[o?>ioW
+jnAY&^gM+`4=1jRLW!YA=M/6)*KS9PE`kN%="Tc_5TfJD*"iV`K>JccW*D(s%YqtH0drPi.i+&_,;H.P
+E]Y>'a<WMi*0NrAPKG1,WEc`5/sjd/1F\jBCGq[--SqaWnp<QmcmU_#*>49"UXCSJWa.BL:8cSk2(G.p
+X&c:P.lF?_Ek>Y]e)2>~>
+grestore
+showpage
+grestore grestore
+%%PageTrailer
+
+%%Page: 4 4
+%%PageBoundingBox: 18 18 594 774
+%%BeginSetup
+%
+%%EndSetup
+%%BeginPageSetup
+%
+gsave
+[0.24 0 0 -0.24 18 774] concat
+gsave
+%%EndPageSetup
+/Times-Roman-iso1252 /Times-Roman ISO1252Encoding psp_definefont
+/Times-Bold-iso1252 /Times-Bold ISO1252Encoding psp_definefont
+%!PS-AdobeFont-1.0-2.0
+%%Creator: SunTypeTools-TT 1.0 gelf
+%%Title: OpenSymbolHSet1
+%%CreationDate:
+%%Pages: 0
+%%EndComments
+%%BeginResource: font OpenSymbolHSet1
+% Original font name: OpenSymbol
+30 dict begin
+/PaintType 0 def
+/FontType 3 def
+/StrokeWidth 0 def
+/FontName /OpenSymbolHSet1 def
+/XUID [103 0 0 16#8D049593 3 16#ABC23EE2 16#6072D5A5] def
+/FontMatrix [.001 0 0 .001 0 0] def
+/FontBBox [-179 -313 1083 917] def
+/Encoding 256 array def
+ 0 1 255 {Encoding exch /.notdef put} for
+ Encoding 32 /glyph0 put
+ Encoding 150 /glyph1 put
+ Encoding 149 /glyph2 put
+/CharProcs 4 dict def
+ CharProcs begin
+ /.notdef {} def
+ /glyph0 {
+ 500 0 0 0 0 0 setcachedevice
+ } bind def
+ /glyph1 {
+ 556 0 -2 224 554 296 setcachedevice
+ -2 224 moveto
+ 554 224 lineto
+ 554 296 lineto
+ -2 296 lineto
+ -2 224 lineto
+ closepath
+ fill
+ } bind def
+ /glyph2 {
+ 356 0 36 223 297 483 setcachedevice
+ 169 223 moveto
+ 134 223 103 236 76 261 curveto
+ 50 286 36 317 36 353 curveto
+ 36 389 49 420 76 445 curveto
+ 102 470 133 483 169 483 curveto
+ 204 483 235 471 260 445 curveto
+ 285 420 297 389 297 353 curveto
+ 297 318 285 287 260 261 curveto
+ 236 236 206 223 169 223 curveto
+ closepath
+ fill
+ } bind def
+ end
+/BuildGlyph {
+ exch /CharProcs get exch
+ 2 copy known not
+ {pop /.notdef} if
+ get exec
+} bind def
+/BuildChar {
+ 1 index /Encoding get exch get
+ 1 index /BuildGlyph get exec
+} bind def
+currentdict end
+/OpenSymbolHSet1 exch definefont pop
+%%EndResource
+/Times-Italic-iso1252 /Times-Italic ISO1252Encoding psp_definefont
+grestore
+gsave
+220 258 moveto
+0 0 0 setrgbcolor
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<496C>
+show
+265 258 moveto
+<657374>
+show
+330 258 moveto
+<6175737369>
+show
+432 258 moveto
+<706F737369626C65>
+show
+590 258 moveto
+<6465>
+show
+648 258 moveto
+<72E9616C69736572>
+show
+790 258 moveto
+<756E65>
+show
+870 258 moveto
+<70726F63E964757265>
+show
+1056 258 moveto
+<6427696E7374616C6C6174696F6E>
+show
+1290 258 moveto
+<636F6D706CE87465>
+show
+1464 258 moveto
+<6427756E65>
+show
+1571 258 moveto
+<706172746965>
+show
+1685 258 moveto
+<646573>
+show
+1761 258 moveto
+<6D6F64756C6573>
+show
+1922 258 moveto
+<6F75>
+show
+1982 258 moveto
+<6465>
+show
+2041 258 moveto
+<746F7573>
+show
+2130 258 moveto
+<6C6573>
+show
+220 305 moveto
+<6D6F64756C65732C>
+show
+389 305 moveto
+<717569>
+show
+459 305 moveto
+<7065726D65747465>
+show
+622 305 moveto
+<6427696E7374616C6C6572>
+show
+803 305 moveto
+<706172>
+show
+873 305 moveto
+<6C6573>
+show
+936 305 moveto
+<74726F6973>
+show
+1028 305 moveto
+<6DEA6D6573>
+show
+1164 305 moveto
+<636F6D6D616E646573>
+show
+1381 305 moveto
+<717565>
+show
+1458 305 moveto
+<63692D646573737573>
+show
+1629 305 moveto
+<6C27656E73656D626C65>
+show
+1823 305 moveto
+<646573>
+show
+1895 305 moveto
+<6D6F64756C6573>
+show
+2054 305 moveto
+<64616E73>
+show
+2148 305 moveto
+<6C65>
+show
+220 353 moveto
+<6DEA6D652072E9706572746F69726520286C657320736F7572636573207365726F6E742064616E
+7320636520636173207072E963697320726567726F7570E965732064616E7320756E2072E9706572
+746F69726520>
+show
+1646 353 moveto
+/Times-Bold-iso1252 findfont 42 -42 matrix scale makefont setfont
+<53414C4F4D455F5352432F>
+show
+1944 353 moveto
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<2E>
+show
+220 448 moveto
+/OpenSymbolHSet1 findfont 38 -38 matrix scale makefont setfont
+<96>
+show
+220 448 moveto
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<2020>
+[10 0]
+xshow
+220 452 20 2 rectfill
+241 448 moveto
+1 1 1 setrgbcolor
+/OpenSymbolHSet1 findfont 38 -38 matrix scale makefont setfont
+<2020>
+[21 0]
+xshow
+241 448 moveto
+0 0 0 setrgbcolor
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<2020>
+[29 0]
+xshow
+241 452 39 2 rectfill
+279 448 moveto
+<436F6E73E97175656E63657320706F7572206C65732064E976656C6F70706575727320646520>
+show
+279 448 moveto
+<2020>
+[669 0]
+xshow
+279 452 679 2 rectfill
+959 448 moveto
+/Times-Italic-iso1252 findfont 42 -42 matrix scale makefont setfont
+<53616C6F6D65>
+show
+959 448 moveto
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<2020>
+[112 0]
+xshow
+959 452 122 2 rectfill
+1082 448 moveto
+<203A>
+show
+1082 448 moveto
+<2020>
+[11 0]
+xshow
+1082 452 21 2 rectfill
+220 545 moveto
+<506F7572>
+show
+314 545 moveto
+<6C6573>
+show
+376 545 moveto
+<64E976656C6F7070657572732C>
+show
+624 545 moveto
+<6C6573>
+show
+687 545 moveto
+<63686F736573>
+show
+813 545 moveto
+<736F6E74>
+show
+899 545 moveto
+<64696666E972656E7465732E>
+show
+1103 545 moveto
+<556E>
+show
+1169 545 moveto
+<64E976656C6F7070657572>
+show
+1392 545 moveto
+<696E74657276656E616E74>
+show
+1596 545 moveto
+<737572>
+show
+1661 545 moveto
+<756E>
+show
+1719 545 moveto
+<736F75732D656E73656D626C65>
+show
+1981 545 moveto
+<6465>
+show
+2035 545 moveto
+<6D6F64756C6573>
+show
+220 592 moveto
+<646F6E6EE9>
+show
+334 592 moveto
+<72E9637570E87265>
+show
+491 592 moveto
+<6C6573>
+show
+549 592 moveto
+<736F7572636573>
+show
+686 592 moveto
+<6465>
+show
+738 592 moveto
+<636573>
+show
+804 592 moveto
+<6D6F64756C6573>
+show
+957 592 moveto
+<64616E73>
+show
+1046 592 moveto
+<6C65757273>
+show
+1139 592 moveto
+<6261736573>
+show
+1243 592 moveto
+<435653>
+show
+1336 592 moveto
+<72657370656374697665732C>
+show
+1544 592 moveto
+<6C6573>
+show
+1604 592 moveto
+<636F6D70696C65>
+show
+1750 592 moveto
+<6574>
+show
+1792 592 moveto
+<6C6573>
+show
+1850 592 moveto
+<6D6F6469666965>
+show
+1993 592 moveto
+<6C6F63616C656D656E74>
+show
+220 639 moveto
+<E976656E7475656C6C656D656E742C>
+show
+499 639 moveto
+<6465>
+show
+550 639 moveto
+<6661E76F6E>
+show
+656 639 moveto
+<6974E97261746976652E>
+show
+816 639 moveto
+<43686163756E>
+show
+955 639 moveto
+<646573>
+show
+1024 639 moveto
+<617574726573>
+show
+1136 639 moveto
+<6D6F64756C6573>
+show
+1291 639 moveto
+<6465>
+show
+1342 639 moveto
+/Times-Italic-iso1252 findfont 42 -42 matrix scale makefont setfont
+<53616C6F6D65>
+show
+1477 639 moveto
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<657874E9726965757273>
+show
+1654 639 moveto
+<E0>
+show
+1685 639 moveto
+<6365>
+show
+1734 639 moveto
+<736F75732D656E73656D626C65>
+show
+1994 639 moveto
+<72656E747265>
+show
+2103 639 moveto
+<64616E73>
+show
+220 686 moveto
+<6C27756E652064657320636174E9676F726965732073756976616E746573203A>
+show
+378 733 moveto
+/OpenSymbolHSet1 findfont 38 -38 matrix scale makefont setfont
+<95>
+show
+437 733 moveto
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<536F6974>
+show
+517 733 moveto
+<696C>
+show
+553 733 moveto
+<6E27657374>
+show
+641 733 moveto
+<706173>
+show
+710 733 moveto
+<696E64697370656E7361626C65>
+show
+951 733 moveto
+<E0>
+show
+983 733 moveto
+<6C277574696C69736174696F6E>
+show
+1183 733 moveto
+<646573>
+show
+1251 733 moveto
+<6D6F64756C6573>
+show
+1406 733 moveto
+<737572>
+show
+1471 733 moveto
+<6C65737175656C73>
+show
+1619 733 moveto
+<696E7465727669656E74>
+show
+1792 733 moveto
+<6C65>
+show
+1835 733 moveto
+<64E976656C6F70706575722C>
+show
+2067 733 moveto
+<61757175656C>
+show
+437 783 moveto
+<636173>
+show
+501 783 moveto
+<696C>
+show
+534 783 moveto
+<6E27657374>
+show
+620 783 moveto
+<706173>
+show
+688 783 moveto
+<666F7263E96D656E74>
+show
+868 783 moveto
+<636F6D70696CE9>
+show
+1014 783 moveto
+<6574>
+show
+1055 783 moveto
+<696E7374616C6CE92E>
+show
+1197 783 moveto
+<4C6573>
+show
+1270 783 moveto
+<64E970656E64616E636573>
+show
+1495 783 moveto
+<656E747265>
+show
+1589 783 moveto
+<6D6F64756C6573>
+show
+1742 783 moveto
+<736F6E74>
+show
+1822 783 moveto
+<646F6E6EE96573>
+show
+1972 783 moveto
+<706172>
+show
+2036 783 moveto
+<6C61>
+show
+2077 783 moveto
+<666967757265>
+show
+437 830 moveto
+<63692D6465737375732E>
+show
+378 877 moveto
+/OpenSymbolHSet1 findfont 38 -38 matrix scale makefont setfont
+<95>
+show
+437 877 moveto
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<536F697420696C2065737420696E64697370656E7361626C6520657420646F697420EA74726520
+696E7374616C6CE92E20436574746520696E7374616C6C6174696F6E207065757420736520666169
+726520706172206365732064657578206D616E69E8726573203A>
+show
+594 927 moveto
+<2D>
+show
+621 927 moveto
+<736F6974>
+show
+694 927 moveto
+<6C65>
+show
+738 927 moveto
+<6D6F64756C65>
+show
+877 927 moveto
+<657374>
+show
+937 927 moveto
+<7675>
+show
+991 927 moveto
+<636F6D6D65>
+show
+1128 927 moveto
+<756E>
+show
+1183 927 moveto
+<7072E92D7265717569732C>
+show
+1377 927 moveto
+<6574>
+show
+1420 927 moveto
+<657374>
+show
+1480 927 moveto
+<696E7374616C6CE9>
+show
+1614 927 moveto
+<E0>
+show
+1646 927 moveto
+<6C61>
+show
+1689 927 moveto
+<6D616E69E87265>
+show
+1838 927 moveto
+<937574696C6973617465757294>
+show
+2055 927 moveto
+<E0>
+show
+2088 927 moveto
+<706172746972>
+show
+594 974 moveto
+<6465206C276172636869766520>
+show
+797 974 moveto
+/Times-Italic-iso1252 findfont 42 -42 matrix scale makefont setfont
+<7461722E677A>
+show
+893 974 moveto
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<20636F6D6D652064E9637269742063692D6465737375732E>
+show
+594 1021 moveto
+<2D20736F6974206C65206D6F64756C652065737420657874726169742064652073612062617365
+204356532C20636F6D70696CE920657420696E7374616C6CE92E>
+show
+220 1068 moveto
+<496C>
+show
+259 1068 moveto
+<657374>
+show
+318 1068 moveto
+<706F737369626C65>
+show
+468 1068 moveto
+<6465>
+show
+520 1068 moveto
+<6372E96572>
+show
+618 1068 moveto
+<646573>
+show
+686 1068 moveto
+<73637269707473>
+show
+808 1068 moveto
+/Times-Italic-iso1252 findfont 42 -42 matrix scale makefont setfont
+<6275696C645F636F6E666967757265>
+show
+1076 1068 moveto
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<2C>
+show
+1100 1068 moveto
+/Times-Italic-iso1252 findfont 42 -42 matrix scale makefont setfont
+<636F6E666967757265>
+show
+1272 1068 moveto
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<6574>
+show
+1315 1068 moveto
+/Times-Italic-iso1252 findfont 42 -42 matrix scale makefont setfont
+<4D616B6566696C65>
+show
+1474 1068 moveto
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<64616E73>
+show
+1563 1068 moveto
+<6C65>
+show
+1606 1068 moveto
+<6D6F64756C65>
+show
+1745 1068 moveto
+<53414C4F4D45>
+show
+1931 1068 moveto
+<717569>
+show
+1997 1068 moveto
+<7065726D657474656E74>
+show
+220 1115 moveto
+<64276175746F6D617469736572>
+show
+458 1115 moveto
+<6C61>
+show
+501 1115 moveto
+<70726F63E964757265>
+show
+684 1115 moveto
+<7369>
+show
+725 1115 moveto
+<6C65>
+show
+769 1115 moveto
+<64E976656C6F7070657572>
+show
+990 1115 moveto
+<736F756861697465>
+show
+1144 1115 moveto
+<636F6D70696C6572>
+show
+1307 1115 moveto
+<65742F6F75>
+show
+1404 1115 moveto
+<696E7374616C6C6572>
+show
+1554 1115 moveto
+<706C75736965757273>
+show
+1719 1115 moveto
+<6D6F64756C6573>
+show
+1875 1115 moveto
+<656E>
+show
+1928 1115 moveto
+<6DEA6D65>
+show
+2044 1115 moveto
+<74656D7073>
+show
+2158 1115 moveto
+<E0>
+show
+220 1163 moveto
+<7061727469722064657320736F7572636573206578747261697465732064657320626173657320
+4356532E>
+show
+220 1258 moveto
+<43686163756E20646573206D6F64756C657320706F7373E8646520756E2072E9706572746F6972
+6520>
+show
+947 1258 moveto
+/Times-Bold-iso1252 findfont 42 -42 matrix scale makefont setfont
+<3C4D4F44554C453E5F5352432F>
+show
+1300 1258 moveto
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<20617263686976E92064616E732073612062617365204356532E205369206C652064E976656C6F
+70706575722064E963696465>
+show
+220 1306 moveto
+<6465>
+show
+271 1306 moveto
+<72E9637570E9726572>
+show
+440 1306 moveto
+<6C6573>
+show
+498 1306 moveto
+<736F7572636573>
+show
+635 1306 moveto
+<6427756E>
+show
+716 1306 moveto
+<6D6F64756C652C>
+show
+864 1306 moveto
+<63656C6C65732D6369>
+show
+1016 1306 moveto
+<736F6E74>
+show
+1096 1306 moveto
+<72616E67E96573>
+show
+1236 1306 moveto
+<64616E73>
+show
+1324 1306 moveto
+<756E>
+show
+1377 1306 moveto
+<72E9706572746F697265>
+show
+1552 1306 moveto
+/Times-Bold-iso1252 findfont 42 -42 matrix scale makefont setfont
+<3C4D4F44554C453E5F5352432F>
+show
+1916 1306 moveto
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<6C6F63616C2E>
+show
+2019 1306 moveto
+<496C>
+show
+2055 1306 moveto
+<617070656C6C65>
+show
+220 1353 moveto
+<656E7375697465>
+show
+355 1353 moveto
+/Times-Italic-iso1252 findfont 42 -42 matrix scale makefont setfont
+<6275696C645F636F6E666967757265>
+show
+623 1353 moveto
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<2C>
+show
+650 1353 moveto
+/Times-Italic-iso1252 findfont 42 -42 matrix scale makefont setfont
+<636F6E666967757265>
+show
+826 1353 moveto
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<28646570756973>
+show
+965 1353 moveto
+<6C65>
+show
+1012 1353 moveto
+<72E9706572746F697265>
+show
+1192 1353 moveto
+<6465>
+show
+1248 1353 moveto
+<636F6D70696C6174696F6E29>
+show
+1479 1353 moveto
+<6574>
+show
+1526 1353 moveto
+/Times-Italic-iso1252 findfont 42 -42 matrix scale makefont setfont
+<6D616B65>
+show
+1629 1353 moveto
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<706F7572>
+show
+1722 1353 moveto
+<636F6D70696C6572>
+show
+1888 1353 moveto
+<636573>
+show
+1958 1353 moveto
+<736F7572636573>
+show
+2101 1353 moveto
+<64616E73>
+show
+220 1401 moveto
+/Times-Bold-iso1252 findfont 42 -42 matrix scale makefont setfont
+<2F6D6F6E2F7265706572746F6972652F64652F636F6D70696C6174696F6E2F706F75722F4D4F4E
+5F6D6F64756C652F>
+show
+1160 1401 moveto
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<2E>
+show
+1189 1401 moveto
+<496C>
+show
+1232 1401 moveto
+<617070656C6C65>
+show
+1370 1401 moveto
+<656E66696E>
+show
+1474 1401 moveto
+/Times-Italic-iso1252 findfont 42 -42 matrix scale makefont setfont
+<6D616B65>
+show
+1581 1401 moveto
+<696E7374616C6C>
+show
+1703 1401 moveto
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<28666163756C746174696629>
+show
+1900 1401 moveto
+<706F7572>
+show
+1995 1401 moveto
+<696E7374616C6C6572>
+show
+2148 1401 moveto
+<6C65>
+show
+220 1449 moveto
+<6D6F64756C65>
+show
+365 1449 moveto
+<64616E73>
+show
+460 1449 moveto
+/Times-Bold-iso1252 findfont 42 -42 matrix scale makefont setfont
+<2F6D6F6E2F7265706572746F6972652F642F696E7374616C6C6174696F6E2F706F75722F4D4F4E
+5F6D6F64756C652F>
+show
+1370 1449 moveto
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<2E>
+show
+1399 1449 moveto
+<54726F6973>
+show
+1506 1449 moveto
+<72E9706572746F69726573>
+show
+1705 1449 moveto
+<736F6E74>
+show
+1793 1449 moveto
+<646F6E63>
+show
+1894 1449 moveto
+<6EE9636573736169726573>
+show
+2102 1449 moveto
+<706F7572>
+show
+220 1497 moveto
+<636861717565>
+show
+399 1497 moveto
+<6D6F64756C65>
+show
+584 1497 moveto
+<696E7374616C6CE9>
+show
+766 1497 moveto
+<73E9706172E96D656E74>
+show
+1018 1497 moveto
+<28706172>
+show
+1145 1497 moveto
+<6578656D706C65>
+show
+1348 1497 moveto
+<706F7572>
+show
+1484 1497 moveto
+<4B45524E454C>
+show
+1711 1497 moveto
+/Times-Bold-iso1252 findfont 42 -42 matrix scale makefont setfont
+<24484F4D452F4B45524E454C5F5352432F>
+show
+2170 1497 moveto
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<2C>
+show
+220 1545 moveto
+/Times-Bold-iso1252 findfont 42 -42 matrix scale makefont setfont
+<2F2E2E2E2F4B45524E454C5F4255494C442F>
+show
+642 1545 moveto
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<6574>
+show
+697 1545 moveto
+/Times-Bold-iso1252 findfont 42 -42 matrix scale makefont setfont
+<2F2E2E2E2F50726F64756374732F696E7374616C6C2F53616C6F6D652D6B65726E656C2D312E30
+2F>
+show
+1383 1545 moveto
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<292E>
+show
+1431 1545 moveto
+<4C6573>
+show
+1518 1545 moveto
+<64696666E972656E7473>
+show
+1703 1545 moveto
+<72E9706572746F69726573>
+show
+1908 1545 moveto
+<736F6E74>
+show
+2003 1545 moveto
+<64E96372697473>
+show
+2139 1545 moveto
+<6465>
+show
+220 1593 moveto
+<6D616E69E8726520706C75732064E97461696C6CE9652063692D617072E8732E>
+show
+220 1687 moveto
+<436861717565>
+show
+360 1687 moveto
+<6D6F64756C65>
+show
+499 1687 moveto
+<7574696C697365>
+show
+613 1687 moveto
+<6C6573>
+show
+672 1687 moveto
+<6F7574696C73>
+show
+778 1687 moveto
+/Times-Italic-iso1252 findfont 42 -42 matrix scale makefont setfont
+<6175746F636F6E66>
+show
+936 1687 moveto
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<6574>
+show
+979 1687 moveto
+/Times-Italic-iso1252 findfont 42 -42 matrix scale makefont setfont
+<6C6962746F6F6C>
+show
+1088 1687 moveto
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<2C>
+show
+1111 1687 moveto
+<636F6D6D65>
+show
+1246 1687 moveto
+<6327657374>
+show
+1331 1687 moveto
+<64E96AE0>
+show
+1413 1687 moveto
+<6C65>
+show
+1455 1687 moveto
+<636173>
+show
+1521 1687 moveto
+<64616E73>
+show
+1611 1687 moveto
+<6C276F7267616E69736174696F6E>
+show
+1849 1687 moveto
+<61637475656C6C65>
+show
+1992 1687 moveto
+<6465>
+show
+2045 1687 moveto
+/Times-Italic-iso1252 findfont 42 -42 matrix scale makefont setfont
+<53616C6F6D65>
+show
+2168 1687 moveto
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<2E>
+show
+220 1734 moveto
+<4C65206368616E67656D656E742064276F7267616E69736174696F6E207065757420E976656E74
+75656C6C656D656E7420EA747265206C276F63636173696F6E206427696E74726F64756972652065
+6E206F75747265206C276F7574696C20>
+show
+1793 1734 moveto
+/Times-Italic-iso1252 findfont 42 -42 matrix scale makefont setfont
+<6175746F6D616B65>
+show
+1956 1734 moveto
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<2E>
+show
+1188 2982 moveto
+/Times-Roman-iso1252 findfont 50 -50 matrix scale makefont setfont
+<35>
+show
+221 2845 1959 1 rectfill
+221 2933 1959 1 rectfill
+showpage
+grestore grestore
+%%PageTrailer
+
+%%Page: 5 5
+%%PageBoundingBox: 18 18 594 774
+%%BeginSetup
+%
+%%EndSetup
+%%BeginPageSetup
+%
+gsave
+[0.24 0 0 -0.24 18 774] concat
+gsave
+%%EndPageSetup
+%!PS-AdobeFont-1.0-2.0
+%%Creator: SunTypeTools-TT 1.0 gelf
+%%Title: OpenSymbolHSet1
+%%CreationDate:
+%%Pages: 0
+%%EndComments
+%%BeginResource: font OpenSymbolHSet1
+% Original font name: OpenSymbol
+30 dict begin
+/PaintType 0 def
+/FontType 3 def
+/StrokeWidth 0 def
+/FontName /OpenSymbolHSet1 def
+/XUID [103 0 0 16#8D049593 3 16#ABC23EE2 16#6072D5A5] def
+/FontMatrix [.001 0 0 .001 0 0] def
+/FontBBox [-179 -313 1083 917] def
+/Encoding 256 array def
+ 0 1 255 {Encoding exch /.notdef put} for
+ Encoding 32 /glyph0 put
+ Encoding 150 /glyph1 put
+ Encoding 149 /glyph2 put
+/CharProcs 4 dict def
+ CharProcs begin
+ /.notdef {} def
+ /glyph0 {
+ 500 0 0 0 0 0 setcachedevice
+ } bind def
+ /glyph1 {
+ 556 0 -2 224 554 296 setcachedevice
+ -2 224 moveto
+ 554 224 lineto
+ 554 296 lineto
+ -2 296 lineto
+ -2 224 lineto
+ closepath
+ fill
+ } bind def
+ /glyph2 {
+ 356 0 36 223 297 483 setcachedevice
+ 169 223 moveto
+ 134 223 103 236 76 261 curveto
+ 50 286 36 317 36 353 curveto
+ 36 389 49 420 76 445 curveto
+ 102 470 133 483 169 483 curveto
+ 204 483 235 471 260 445 curveto
+ 285 420 297 389 297 353 curveto
+ 297 318 285 287 260 261 curveto
+ 236 236 206 223 169 223 curveto
+ closepath
+ fill
+ } bind def
+ end
+/BuildGlyph {
+ exch /CharProcs get exch
+ 2 copy known not
+ {pop /.notdef} if
+ get exec
+} bind def
+/BuildChar {
+ 1 index /Encoding get exch get
+ 1 index /BuildGlyph get exec
+} bind def
+currentdict end
+/OpenSymbolHSet1 exch definefont pop
+%%EndResource
+/Helvetica-BoldOblique-iso1252 /Helvetica-BoldOblique ISO1252Encoding psp_definefont
+/Times-Roman-iso1252 /Times-Roman ISO1252Encoding psp_definefont
+/Times-Bold-iso1252 /Times-Bold ISO1252Encoding psp_definefont
+279 318 moveto
+0 0 0 setrgbcolor
+/OpenSymbolHSet1 findfont 38 -38 matrix scale makefont setfont
+<95>
+show
+338 318 moveto
+/Helvetica-BoldOblique-iso1252 findfont 50 -50 matrix scale makefont setfont
+<4F7267616E69736174696F6E2064657320736F7572636573>
+show
+220 428 moveto
+/OpenSymbolHSet1 findfont 38 -38 matrix scale makefont setfont
+<96>
+show
+220 428 moveto
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<2020>
+[10 0]
+xshow
+220 432 20 2 rectfill
+241 428 moveto
+1 1 1 setrgbcolor
+/OpenSymbolHSet1 findfont 38 -38 matrix scale makefont setfont
+<2020>
+[21 0]
+xshow
+241 428 moveto
+0 0 0 setrgbcolor
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<2020>
+[29 0]
+xshow
+241 432 39 2 rectfill
+279 428 moveto
+<4F7267616E69736174696F6E2064657320626173657320435653203A>
+show
+279 432 499 2 rectfill
+220 525 moveto
+<43686163756E>
+show
+366 525 moveto
+<646573>
+show
+441 525 moveto
+<6D6F64756C6573>
+show
+602 525 moveto
+<6465>
+show
+660 525 moveto
+<6C61>
+show
+709 525 moveto
+<706C6174652D666F726D65>
+show
+923 525 moveto
+<50414C>
+show
+1021 525 moveto
+<706F7373E86465>
+show
+1171 525 moveto
+<7361>
+show
+1225 525 moveto
+<70726F707265>
+show
+1353 525 moveto
+<62617365>
+show
+1446 525 moveto
+<4356532E>
+show
+1557 525 moveto
+<4C65>
+show
+1620 525 moveto
+<6D6F64756C65>
+show
+1764 525 moveto
+<435653524F4F54>
+show
+1979 525 moveto
+<286D6F64756C65>
+show
+2137 525 moveto
+<6465>
+show
+220 572 moveto
+<636F6E66696775726174696F6E>
+show
+463 572 moveto
+<6465>
+show
+520 572 moveto
+<43565329>
+show
+634 572 moveto
+<E974616E74>
+show
+733 572 moveto
+<7370E963696669717565>
+show
+923 572 moveto
+<E0>
+show
+959 572 moveto
+<636861717565>
+show
+1094 572 moveto
+<626173652C>
+show
+1197 572 moveto
+<63656C61>
+show
+1282 572 moveto
+<7065726D6574>
+show
+1416 572 moveto
+<6465>
+show
+1474 572 moveto
+<67E9726572>
+show
+1577 572 moveto
+<6465>
+show
+1634 572 moveto
+<6D616E69E87265>
+show
+1786 572 moveto
+<64696666E972656E7465>
+show
+1967 572 moveto
+<6C6573>
+show
+2031 572 moveto
+<616363E873>
+show
+2140 572 moveto
+<656E>
+show
+220 619 moveto
+<6C65637475726520657420656E20E963726974757265206175782064696666E972656E7473206D
+6F64756C65732050414C2E>
+show
+220 713 moveto
+<4C276172626F72657363656E63652064652063686163756E65206465732062617365732028686F
+726D69732053414C4F4D45206574204B45524E454C292073756974206C65206D6F64E86C65207375
+6976616E74203A>
+show
+220 808 moveto
+/Times-Bold-iso1252 findfont 42 -42 matrix scale makefont setfont
+<3C4D4F44554C453E5F5352432F>
+show
+368 856 moveto
+<61646D5F6C6F63616C2F>
+show
+515 904 moveto
+<756E69782F>
+show
+368 952 moveto
+<62696E2F>
+show
+368 1000 moveto
+<646F632F>
+show
+368 1048 moveto
+<6578616D706C65732F>
+show
+368 1096 moveto
+<69646C2F>
+show
+368 1144 moveto
+<7265736F75726365732F>
+show
+368 1192 moveto
+<7372632F>
+show
+368 1240 moveto
+<74657374732F>
+show
+368 1288 moveto
+<524541444D45>
+show
+368 1335 moveto
+<6275696C645F636F6E666967757265>
+show
+368 1383 moveto
+<636F6E6669677572652E696E2E62617365>
+show
+368 1431 moveto
+<4D616B6566696C652E696E>
+show
+220 1575 moveto
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<496C>
+show
+257 1575 moveto
+<6E2779>
+show
+318 1575 moveto
+<61>
+show
+348 1575 moveto
+<706173>
+show
+415 1575 moveto
+<6465>
+show
+466 1575 moveto
+<72E9706572746F697265>
+show
+640 1575 moveto
+/Times-Bold-iso1252 findfont 42 -42 matrix scale makefont setfont
+<61646D2F>
+show
+742 1575 moveto
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<2872E9706572746F697265>
+show
+931 1575 moveto
+<636F6E74656E616E74>
+show
+1106 1575 moveto
+<6C6573>
+show
+1164 1575 moveto
+<6669636869657273>
+show
+1300 1575 moveto
+<642761646D696E697374726174696F6E29>
+show
+1597 1575 moveto
+<64616E73>
+show
+1685 1575 moveto
+<63686163756E>
+show
+1816 1575 moveto
+<646573>
+show
+1883 1575 moveto
+<6D6F64756C65732C>
+show
+2048 1575 moveto
+<6D616973>
+show
+2138 1575 moveto
+<756E>
+show
+220 1623 moveto
+<756E69717565>
+show
+348 1623 moveto
+<72E9706572746F697265>
+show
+525 1623 moveto
+/Times-Bold-iso1252 findfont 42 -42 matrix scale makefont setfont
+<73616C6F6D655F>
+show
+669 1623 moveto
+<61646D2F>
+show
+774 1623 moveto
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<64616E73>
+show
+864 1623 moveto
+<6C65>
+show
+909 1623 moveto
+<72E9706572746F697265>
+show
+1086 1623 moveto
+<6427696E7374616C6C6174696F6E>
+show
+1316 1623 moveto
+<6465>
+show
+1369 1623 moveto
+<4B45524E454C2C>
+show
+1560 1623 moveto
+<717569>
+show
+1628 1623 moveto
+<657374>
+show
+1688 1623 moveto
+<636F6D6D756E>
+show
+1849 1623 moveto
+<E0>
+show
+1882 1623 moveto
+<746F7573>
+show
+1966 1623 moveto
+<6C6573>
+show
+2026 1623 moveto
+<6D6F64756C65732E>
+show
+220 1671 moveto
+<4C65>
+show
+340 1671 moveto
+<72E9706572746F697265>
+show
+580 1671 moveto
+/Times-Bold-iso1252 findfont 42 -42 matrix scale makefont setfont
+<73616C6F6D655F61646D2F>
+show
+891 1671 moveto
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<657374>
+show
+1014 1671 moveto
+<636F6E74656E75>
+show
+1223 1671 moveto
+<64616E73>
+show
+1376 1671 moveto
+/Times-Bold-iso1252 findfont 42 -42 matrix scale makefont setfont
+<4B45524E454C5F5352432F>
+show
+1670 1671 moveto
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<2C>
+show
+1757 1671 moveto
+<70756973>
+show
+1903 1671 moveto
+<7265636F7069E9>
+show
+2103 1671 moveto
+<64616E73>
+show
+220 1719 moveto
+/Times-Bold-iso1252 findfont 42 -42 matrix scale makefont setfont
+<2F6D6F6E2F7265706572746F6972652F642F696E7374616C6C6174696F6E2F706F75722F4B4552
+4E454C2F>
+show
+1082 1719 moveto
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<6C6F7273>
+show
+1177 1719 moveto
+<6465>
+show
+1249 1719 moveto
+<6C27696E7374616C6C6174696F6E>
+show
+1486 1719 moveto
+<6475>
+show
+1560 1719 moveto
+<6D6F64756C65>
+show
+1718 1719 moveto
+<4B45524E454C2E>
+show
+1926 1719 moveto
+<43656369>
+show
+2035 1719 moveto
+<E976697465>
+show
+2148 1719 moveto
+<6C61>
+show
+220 1766 moveto
+<6475706C69636174696F6E2064616E73206C657320626173657320435653206574206C65732063
+6F70696573206465207472617661696C206427756E206365727461696E206E6F6D62726520646520
+666963686965727320636F6D6D756E7320E020746F7573206C6573206D6F64756C65732E>
+show
+220 1815 moveto
+<4C65>
+show
+280 1815 moveto
+<72E9706572746F697265>
+show
+461 1815 moveto
+/Times-Bold-iso1252 findfont 42 -42 matrix scale makefont setfont
+<61646D5F6C6F63616C2F>
+show
+673 1815 moveto
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<73657274>
+show
+750 1815 moveto
+<617578>
+show
+828 1815 moveto
+<6669636869657273>
+show
+971 1815 moveto
+<642761646D696E697374726174696F6E>
+show
+1258 1815 moveto
+<7370E96369666971756573>
+show
+1464 1815 moveto
+<E0>
+show
+1499 1815 moveto
+<756E>
+show
+1559 1815 moveto
+<6D6F64756C65>
+show
+1701 1815 moveto
+<706172746963756C6965722E>
+show
+1901 1815 moveto
+<5369>
+show
+1953 1815 moveto
+<756E>
+show
+2012 1815 moveto
+<66696368696572>
+show
+2138 1815 moveto
+<6475>
+show
+220 1863 moveto
+<72E9706572746F697265>
+show
+396 1863 moveto
+/Times-Bold-iso1252 findfont 42 -42 matrix scale makefont setfont
+<61646D5F6C6F63616C2F>
+show
+604 1863 moveto
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<657374>
+show
+664 1863 moveto
+<7574696C6973E9>
+show
+779 1863 moveto
+<706172>
+show
+846 1863 moveto
+<706C75736965757273>
+show
+1011 1863 moveto
+<6D6F64756C65732C>
+show
+1177 1863 moveto
+<616C6F7273>
+show
+1271 1863 moveto
+<696C>
+show
+1308 1863 moveto
+<73657261>
+show
+1388 1863 moveto
+<72656D6F6E74E9>
+show
+1539 1863 moveto
+<64616E73>
+show
+1629 1863 moveto
+<6C65>
+show
+1673 1863 moveto
+<72E9706572746F697265>
+show
+1848 1863 moveto
+/Times-Bold-iso1252 findfont 42 -42 matrix scale makefont setfont
+<73616C6F6D655F61646D2F>
+show
+2096 1863 moveto
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<6465>
+show
+2148 1863 moveto
+<6C61>
+show
+220 1910 moveto
+<626173652053414C4F4D452E>
+show
+220 1957 moveto
+<4C61>
+show
+277 1957 moveto
+<636F6E66696775726174696F6E>
+show
+518 1957 moveto
+<6427756E>
+show
+602 1957 moveto
+<6D6F64756C65>
+show
+742 1957 moveto
+<6175747265>
+show
+839 1957 moveto
+<717565>
+show
+913 1957 moveto
+<4B45524E454C>
+show
+1092 1957 moveto
+<61>
+show
+1125 1957 moveto
+<646F6E63>
+show
+1220 1957 moveto
+<6265736F696E>
+show
+1344 1957 moveto
+<6465>
+show
+1397 1957 moveto
+<7361766F6972>
+show
+1513 1957 moveto
+<6FF9>
+show
+1569 1957 moveto
+<7365>
+show
+1617 1957 moveto
+<74726F757665>
+show
+1738 1957 moveto
+<6C65>
+show
+1782 1957 moveto
+<6D6F64756C65>
+show
+1921 1957 moveto
+<4B45524E454C>
+show
+2100 1957 moveto
+<706F7572>
+show
+220 2005 moveto
+<616363E9646572>
+show
+383 2005 moveto
+<6175>
+show
+457 2005 moveto
+<72E9706572746F697265>
+show
+655 2005 moveto
+/Times-Bold-iso1252 findfont 42 -42 matrix scale makefont setfont
+<73616C6F6D655F61646D2F>
+show
+890 2005 moveto
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<2E>
+show
+936 2005 moveto
+<496C>
+show
+996 2005 moveto
+<657374>
+show
+1078 2005 moveto
+<646F6E63>
+show
+1194 2005 moveto
+<6F626C696761746F697265>
+show
+1410 2005 moveto
+<6465>
+show
+1486 2005 moveto
+<64E966696E6972>
+show
+1632 2005 moveto
+<756E65>
+show
+1728 2005 moveto
+<7661726961626C65>
+show
+1898 2005 moveto
+<6427656E7669726F6E6E656D656E74>
+show
+220 2052 moveto
+<4B45524E454C5F494E5354414C4C2E>
+show
+1188 2982 moveto
+/Times-Roman-iso1252 findfont 50 -50 matrix scale makefont setfont
+<36>
+show
+221 2845 1959 1 rectfill
+221 2933 1959 1 rectfill
+showpage
+grestore grestore
+%%PageTrailer
+
+%%Page: 6 6
+%%PageBoundingBox: 18 18 594 774
+%%BeginSetup
+%
+%%EndSetup
+%%BeginPageSetup
+%
+gsave
+[0.24 0 0 -0.24 18 774] concat
+gsave
+%%EndPageSetup
+/Times-Roman-iso1252 /Times-Roman ISO1252Encoding psp_definefont
+/Times-Bold-iso1252 /Times-Bold ISO1252Encoding psp_definefont
+220 258 moveto
+0 0 0 setrgbcolor
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<4C276172626F72657363656E6365206465206C612062617365206475206D6F64756C65204B4552
+4E454C20657374206C612073756976616E7465203A>
+show
+220 353 moveto
+/Times-Bold-iso1252 findfont 42 -42 matrix scale makefont setfont
+<4B45524E454C5F5352432F>
+show
+368 401 moveto
+<61646D5F6C6F63616C2F>
+show
+515 449 moveto
+<756E69782F>
+show
+368 497 moveto
+<62696E2F>
+show
+368 545 moveto
+<646F632F>
+show
+368 593 moveto
+<6578616D706C65732F>
+show
+368 641 moveto
+<69646C2F>
+show
+368 689 moveto
+<7265736F75726365732F>
+show
+368 737 moveto
+<73616C6F6D655F61646D2F>
+show
+515 785 moveto
+<756E69782F>
+show
+663 833 moveto
+<6D616B655F626567696E2E696E>
+show
+663 880 moveto
+<6D616B655F636F6E636C7564652E696E>
+show
+663 928 moveto
+<3C6F746865725F66696C65733E2E696E>
+show
+663 976 moveto
+<636F6E6669675F66696C65732F>
+show
+810 1024 moveto
+<636865636B2A2E6D34>
+show
+810 1072 moveto
+<3C6F746865725F66696C65733E2E6D34>
+show
+368 1168 moveto
+<7372632F>
+show
+368 1216 moveto
+<74657374732F>
+show
+368 1264 moveto
+<524541444D45>
+show
+368 1312 moveto
+<6275696C645F636F6E666967757265>
+show
+368 1360 moveto
+<636F6E6669677572652E696E2E62617365>
+show
+368 1408 moveto
+<4D616B6566696C652E696E>
+show
+220 1549 moveto
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<4C276172626F72657363656E6365>
+show
+483 1549 moveto
+<6465>
+show
+535 1549 moveto
+<6C61>
+show
+576 1549 moveto
+<62617365>
+show
+663 1549 moveto
+<6475>
+show
+715 1549 moveto
+<6D6F64756C65>
+show
+853 1549 moveto
+<53414C4F4D45>
+show
+1037 1549 moveto
+<657374>
+show
+1095 1549 moveto
+<6C61>
+show
+1137 1549 moveto
+<73756976616E7465>
+show
+1288 1549 moveto
+<286C65>
+show
+1343 1549 moveto
+<6D6F64756C65>
+show
+1480 1549 moveto
+<53414C4F4D45>
+show
+1665 1549 moveto
+<6E65>
+show
+1716 1549 moveto
+<636F6E7469656E74>
+show
+1863 1549 moveto
+<717565>
+show
+1935 1549 moveto
+<646573>
+show
+2001 1549 moveto
+<6669636869657273>
+show
+2139 1549 moveto
+<6465>
+show
+220 1596 moveto
+<636F6E66696775726174696F6E2C20636F6D70696C6174696F6E20657420696E7374616C6C6174
+696F6E20676C6F62616C657329203A>
+show
+220 1692 moveto
+/Times-Bold-iso1252 findfont 42 -42 matrix scale makefont setfont
+<53414C4F4D455F5352432F>
+show
+368 1740 moveto
+<6275696C645F636F6E666967757265>
+show
+368 1788 moveto
+<636F6E6669677572652E696E>
+show
+368 1835 moveto
+<4D616B6566696C652E696E>
+show
+1188 2982 moveto
+/Times-Roman-iso1252 findfont 50 -50 matrix scale makefont setfont
+<37>
+show
+221 2845 1959 1 rectfill
+221 2933 1959 1 rectfill
+showpage
+grestore grestore
+%%PageTrailer
+
+%%Page: 7 7
+%%PageBoundingBox: 18 18 594 774
+%%BeginSetup
+%
+%%EndSetup
+%%BeginPageSetup
+%
+gsave
+[0.24 0 0 -0.24 18 774] concat
+gsave
+%%EndPageSetup
+%!PS-AdobeFont-1.0-2.0
+%%Creator: SunTypeTools-TT 1.0 gelf
+%%Title: OpenSymbolHSet1
+%%CreationDate:
+%%Pages: 0
+%%EndComments
+%%BeginResource: font OpenSymbolHSet1
+% Original font name: OpenSymbol
+30 dict begin
+/PaintType 0 def
+/FontType 3 def
+/StrokeWidth 0 def
+/FontName /OpenSymbolHSet1 def
+/XUID [103 0 0 16#8D049593 2 16#0AC01B5C 16#CD31002C] def
+/FontMatrix [.001 0 0 .001 0 0] def
+/FontBBox [-179 -313 1083 917] def
+/Encoding 256 array def
+ 0 1 255 {Encoding exch /.notdef put} for
+ Encoding 32 /glyph0 put
+ Encoding 150 /glyph1 put
+/CharProcs 3 dict def
+ CharProcs begin
+ /.notdef {} def
+ /glyph0 {
+ 500 0 0 0 0 0 setcachedevice
+ } bind def
+ /glyph1 {
+ 556 0 -2 224 554 296 setcachedevice
+ -2 224 moveto
+ 554 224 lineto
+ 554 296 lineto
+ -2 296 lineto
+ -2 224 lineto
+ closepath
+ fill
+ } bind def
+ end
+/BuildGlyph {
+ exch /CharProcs get exch
+ 2 copy known not
+ {pop /.notdef} if
+ get exec
+} bind def
+/BuildChar {
+ 1 index /Encoding get exch get
+ 1 index /BuildGlyph get exec
+} bind def
+currentdict end
+/OpenSymbolHSet1 exch definefont pop
+%%EndResource
+/Times-Roman-iso1252 /Times-Roman ISO1252Encoding psp_definefont
+/Times-Bold-iso1252 /Times-Bold ISO1252Encoding psp_definefont
+/Times-Italic-iso1252 /Times-Italic ISO1252Encoding psp_definefont
+220 258 moveto
+0 0 0 setrgbcolor
+/OpenSymbolHSet1 findfont 38 -38 matrix scale makefont setfont
+<96>
+show
+220 258 moveto
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<2020>
+[10 0]
+xshow
+220 262 20 2 rectfill
+241 258 moveto
+1 1 1 setrgbcolor
+/OpenSymbolHSet1 findfont 38 -38 matrix scale makefont setfont
+<2020>
+[21 0]
+xshow
+241 258 moveto
+0 0 0 setrgbcolor
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<2020>
+[29 0]
+xshow
+241 262 39 2 rectfill
+279 258 moveto
+<4F7267616E69736174696F6E2064657320636F70696573206465207472617661696C203A>
+show
+279 262 591 2 rectfill
+220 355 moveto
+<5369>
+show
+282 355 moveto
+<6C65>
+show
+340 355 moveto
+<64E976656C6F7070657572>
+show
+575 355 moveto
+<72E9637570E87265>
+show
+748 355 moveto
+<756E>
+show
+818 355 moveto
+<756E69717565>
+show
+959 355 moveto
+<6D6F64756C65>
+show
+1113 355 moveto
+<64616E73>
+show
+1217 355 moveto
+<6C61>
+show
+1275 355 moveto
+<62617365>
+show
+1377 355 moveto
+<4356532C>
+show
+1497 355 moveto
+<696C>
+show
+1548 355 moveto
+<6F627469656E647261>
+show
+1734 355 moveto
+<6C6F63616C656D656E74>
+show
+1946 355 moveto
+<756E>
+show
+2015 355 moveto
+<72E9706572746F697265>
+show
+220 403 moveto
+/Times-Bold-iso1252 findfont 42 -42 matrix scale makefont setfont
+<3C4D4F44554C453E5F5352432F>
+show
+591 403 moveto
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<636F6E74656E616E74>
+show
+773 403 moveto
+<6C6573>
+show
+838 403 moveto
+<736F7572636573>
+show
+982 403 moveto
+<6964656E7469717565>
+show
+1157 403 moveto
+<E0>
+show
+1194 403 moveto
+<63656C7569>
+show
+1295 403 moveto
+<6465>
+show
+1353 403 moveto
+<6C61>
+show
+1401 403 moveto
+<62617365>
+show
+1494 403 moveto
+<4356532E>
+show
+1604 403 moveto
+<496C>
+show
+1648 403 moveto
+<6E2761>
+show
+1714 403 moveto
+<64616E73>
+show
+1810 403 moveto
+<6365>
+show
+1865 403 moveto
+<636173>
+show
+1938 403 moveto
+<706173>
+show
+2012 403 moveto
+<6265736F696E>
+show
+2140 403 moveto
+<6465>
+show
+220 450 moveto
+<72E9637570E9726572206C65206D6F64756C652053414C4F4D452E>
+show
+220 545 moveto
+<5369>
+show
+267 545 moveto
+<6C65>
+show
+309 545 moveto
+<64E976656C6F7070657572>
+show
+529 545 moveto
+<736F756861697465>
+show
+680 545 moveto
+<72E9637570E9726572>
+show
+850 545 moveto
+<706C75736965757273>
+show
+1015 545 moveto
+<6D6F64756C6573>
+show
+1168 545 moveto
+<64697374696E637473>
+show
+1321 545 moveto
+<737572>
+show
+1384 545 moveto
+<6C65737175656C73>
+show
+1532 545 moveto
+<696C>
+show
+1567 545 moveto
+<696E7465727669656E647261>
+show
+1782 545 moveto
+<73696D756C74616EE96D656E742C>
+show
+2051 545 moveto
+<696C>
+show
+2087 545 moveto
+<6465767261>
+show
+220 593 moveto
+<642761626F7264>
+show
+358 593 moveto
+<72E9637570E9726572>
+show
+531 593 moveto
+<6C6573>
+show
+593 593 moveto
+<736F7572636573>
+show
+734 593 moveto
+<6475>
+show
+790 593 moveto
+<6D6F64756C65>
+show
+931 593 moveto
+<53414C4F4D45>
+show
+1118 593 moveto
+<64616E73>
+show
+1211 593 moveto
+<736F6E>
+show
+1283 593 moveto
+<72E9706572746F697265>
+show
+1461 593 moveto
+<6465>
+show
+1515 593 moveto
+<64E976656C6F7070656D656E74>
+show
+1786 593 moveto
+/Times-Bold-iso1252 findfont 42 -42 matrix scale makefont setfont
+<53414C4F4D455F5352432F>
+show
+2084 593 moveto
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<2C>
+show
+2109 593 moveto
+<70756973>
+show
+220 640 moveto
+<656E73756974652072E9637570E9726572206C657320736F757263657320646573206D6F64756C
+657320717527696C20766F756472612064E976656C6F707065722064616E73206365206DEA6D6520
+72E9706572746F6972652064652064E976656C6F7070656D656E742E>
+show
+220 687 moveto
+<4C276172626F72657363656E63652064652064E976656C6F7070656D656E7420657374206C6120
+73756976616E7465203A>
+show
+220 782 moveto
+/Times-Bold-iso1252 findfont 42 -42 matrix scale makefont setfont
+<53414C4F4D455F5352432F>
+show
+368 830 moveto
+<6275696C645F636F6E666967757265>
+show
+368 878 moveto
+<636F6E6669677572652E696E>
+show
+368 926 moveto
+<4D616B6566696C652E696E>
+show
+368 974 moveto
+<3C4D4F44554C453E5F5352432F>
+show
+515 1022 moveto
+<61646D5F6C6F63616C2F>
+show
+663 1070 moveto
+<756E69782F>
+show
+515 1118 moveto
+<62696E2F>
+show
+515 1165 moveto
+<646F632F>
+show
+515 1213 moveto
+<6578616D706C65732F>
+show
+515 1261 moveto
+<69646C2F>
+show
+515 1309 moveto
+<7265736F75726365732F>
+show
+515 1357 moveto
+0.50196 0.50196 0.50196 setrgbcolor
+<73616C6F6D655F61646D2F>
+show
+1105 1357 moveto
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<28756E697175656D656E7420706F7572206C65206D6F64756C65204B45524E454C202129>
+show
+663 1405 moveto
+/Times-Bold-iso1252 findfont 42 -42 matrix scale makefont setfont
+<756E69782F>
+show
+515 1453 moveto
+0 0 0 setrgbcolor
+<7372632F>
+show
+515 1501 moveto
+<74657374732F>
+show
+515 1549 moveto
+<524541444D45>
+show
+515 1597 moveto
+<6275696C645F636F6E666967757265>
+show
+515 1645 moveto
+<636F6E6669677572652E696E2E62617365>
+show
+515 1693 moveto
+<4D616B6566696C652E696E>
+show
+220 1834 moveto
+/OpenSymbolHSet1 findfont 38 -38 matrix scale makefont setfont
+<96>
+show
+220 1834 moveto
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<2020>
+[10 0]
+xshow
+220 1838 20 2 rectfill
+241 1834 moveto
+1 1 1 setrgbcolor
+/OpenSymbolHSet1 findfont 38 -38 matrix scale makefont setfont
+<2020>
+[21 0]
+xshow
+241 1834 moveto
+0 0 0 setrgbcolor
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<2020>
+[29 0]
+xshow
+241 1838 39 2 rectfill
+279 1834 moveto
+<4F7267616E69736174696F6E2064657320617263686976657320>
+show
+279 1834 moveto
+<2020>
+[433 0]
+xshow
+279 1838 443 2 rectfill
+723 1834 moveto
+/Times-Italic-iso1252 findfont 42 -42 matrix scale makefont setfont
+<7372632E7461722E677A>
+show
+723 1834 moveto
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<2020>
+[147 0]
+xshow
+723 1838 157 2 rectfill
+881 1834 moveto
+<203A>
+show
+881 1834 moveto
+<2020>
+[11 0]
+xshow
+881 1838 21 2 rectfill
+220 1931 moveto
+<4C65>
+show
+275 1931 moveto
+<63686F6978>
+show
+379 1931 moveto
+<726574656E75>
+show
+496 1931 moveto
+<706F7572>
+show
+584 1931 moveto
+<6C276F7267616E69736174696F6E>
+show
+821 1931 moveto
+<646573>
+show
+889 1931 moveto
+<636F70696573>
+show
+1008 1931 moveto
+<6465>
+show
+1058 1931 moveto
+<7472617661696C>
+show
+1177 1931 moveto
+<697373756573>
+show
+1289 1931 moveto
+<646573>
+show
+1355 1931 moveto
+<6261736573>
+show
+1458 1931 moveto
+<435653>
+show
+1550 1931 moveto
+<696D706C69717565>
+show
+1711 1931 moveto
+<756E65>
+show
+1783 1931 moveto
+<6172626F72657363656E6365>
+show
+2012 1931 moveto
+<6964656E74697175652C>
+show
+220 1979 moveto
+<706F7572>
+show
+313 1979 moveto
+<636861717565>
+show
+448 1979 moveto
+<6D6F64756C652C>
+show
+600 1979 moveto
+<E0>
+show
+636 1979 moveto
+<736F6E>
+show
+709 1979 moveto
+<61726368697665>
+show
+850 1979 moveto
+/Times-Italic-iso1252 findfont 42 -42 matrix scale makefont setfont
+<7372632E7461722E677A>
+show
+1008 1979 moveto
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<2E>
+show
+1035 1979 moveto
+<4C6573>
+show
+1111 1979 moveto
+<6172636869766573>
+show
+1267 1979 moveto
+<6E65>
+show
+1323 1979 moveto
+<636F6E7469656E6E656E74>
+show
+1535 1979 moveto
+<706173>
+show
+1607 1979 moveto
+<6465>
+show
+1662 1979 moveto
+<72E9706572746F697265>
+show
+1842 1979 moveto
+/Times-Bold-iso1252 findfont 42 -42 matrix scale makefont setfont
+<73616C6F6D655F61646D2F>
+show
+2077 1979 moveto
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<2C>
+show
+2104 1979 moveto
+<706F7572>
+show
+220 2026 moveto
+<6C657175656C>
+show
+333 2026 moveto
+<656C6C6573>
+show
+421 2026 moveto
+<64E970656E64656E74>
+show
+604 2026 moveto
+<6475>
+show
+657 2026 moveto
+<6D6F64756C65>
+show
+793 2026 moveto
+<4B45524E454C2E>
+show
+980 2026 moveto
+<456C6C6573>
+show
+1075 2026 moveto
+<736F6E74>
+show
+1156 2026 moveto
+<656E>
+show
+1206 2026 moveto
+<6F75747265>
+show
+1303 2026 moveto
+<6175746F6E6F6D65732C>
+show
+1506 2026 moveto
+<69652E>
+show
+1558 2026 moveto
+<756E65>
+show
+1629 2026 moveto
+<61726368697665>
+show
+1763 2026 moveto
+<646F6E6EE965>
+show
+1895 2026 moveto
+<636F6E7469656E74>
+show
+2041 2026 moveto
+<756E>
+show
+2095 2026 moveto
+<6574>
+show
+2135 2026 moveto
+<756E>
+show
+220 2073 moveto
+<756E69717565206D6F64756C652E>
+show
+220 2120 moveto
+<4C652073637269707420>
+show
+378 2120 moveto
+/Times-Italic-iso1252 findfont 42 -42 matrix scale makefont setfont
+<6275696C645F636F6E666967757265>
+show
+646 2120 moveto
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<207365726120666F75726E692061766563206C65732061726368697665732020>
+show
+1153 2120 moveto
+/Times-Italic-iso1252 findfont 42 -42 matrix scale makefont setfont
+<7372632E7461722E677A>
+show
+1311 2120 moveto
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<2E>
+show
+220 2167 moveto
+<4C6573>
+show
+294 2167 moveto
+<64657578>
+show
+389 2167 moveto
+<6D6F646573>
+show
+513 2167 moveto
+<64276163717569736974696F6E>
+show
+739 2167 moveto
+<646573>
+show
+809 2167 moveto
+<736F7572636573>
+show
+948 2167 moveto
+<736F6E74>
+show
+1032 2167 moveto
+<646F6E63>
+show
+1127 2167 moveto
+<E971756976616C656E74732C>
+show
+1342 2167 moveto
+<6D616973>
+show
+1435 2167 moveto
+<696C>
+show
+1473 2167 moveto
+<657374>
+show
+1533 2167 moveto
+<6269656E>
+show
+1619 2167 moveto
+<73FB72>
+show
+1684 2167 moveto
+<7072E966E97261626C65>
+show
+1867 2167 moveto
+<64277574696C69736572>
+show
+2026 2167 moveto
+<6C6573>
+show
+2086 2167 moveto
+<6261736573>
+show
+220 2214 moveto
+<43565320706F7572206C6573206D6F64756C657320737572206C65737175656C73206C652064E9
+76656C6F707065757220646F697420696E74657276656E69722E>
+show
+1188 2982 moveto
+/Times-Roman-iso1252 findfont 50 -50 matrix scale makefont setfont
+<38>
+show
+221 2845 1959 1 rectfill
+221 2933 1959 1 rectfill
+showpage
+grestore grestore
+%%PageTrailer
+
+%%Page: 8 8
+%%PageBoundingBox: 18 18 594 774
+%%BeginSetup
+%
+%%EndSetup
+%%BeginPageSetup
+%
+gsave
+[0.24 0 0 -0.24 18 774] concat
+gsave
+%%EndPageSetup
+%!PS-AdobeFont-1.0-2.0
+%%Creator: SunTypeTools-TT 1.0 gelf
+%%Title: OpenSymbolHSet1
+%%CreationDate:
+%%Pages: 0
+%%EndComments
+%%BeginResource: font OpenSymbolHSet1
+% Original font name: OpenSymbol
+30 dict begin
+/PaintType 0 def
+/FontType 3 def
+/StrokeWidth 0 def
+/FontName /OpenSymbolHSet1 def
+/XUID [103 0 0 16#8D049593 3 16#ABC23EE2 16#6072D5A5] def
+/FontMatrix [.001 0 0 .001 0 0] def
+/FontBBox [-179 -313 1083 917] def
+/Encoding 256 array def
+ 0 1 255 {Encoding exch /.notdef put} for
+ Encoding 32 /glyph0 put
+ Encoding 150 /glyph1 put
+ Encoding 149 /glyph2 put
+/CharProcs 4 dict def
+ CharProcs begin
+ /.notdef {} def
+ /glyph0 {
+ 500 0 0 0 0 0 setcachedevice
+ } bind def
+ /glyph1 {
+ 556 0 -2 224 554 296 setcachedevice
+ -2 224 moveto
+ 554 224 lineto
+ 554 296 lineto
+ -2 296 lineto
+ -2 224 lineto
+ closepath
+ fill
+ } bind def
+ /glyph2 {
+ 356 0 36 223 297 483 setcachedevice
+ 169 223 moveto
+ 134 223 103 236 76 261 curveto
+ 50 286 36 317 36 353 curveto
+ 36 389 49 420 76 445 curveto
+ 102 470 133 483 169 483 curveto
+ 204 483 235 471 260 445 curveto
+ 285 420 297 389 297 353 curveto
+ 297 318 285 287 260 261 curveto
+ 236 236 206 223 169 223 curveto
+ closepath
+ fill
+ } bind def
+ end
+/BuildGlyph {
+ exch /CharProcs get exch
+ 2 copy known not
+ {pop /.notdef} if
+ get exec
+} bind def
+/BuildChar {
+ 1 index /Encoding get exch get
+ 1 index /BuildGlyph get exec
+} bind def
+currentdict end
+/OpenSymbolHSet1 exch definefont pop
+%%EndResource
+/Helvetica-BoldOblique-iso1252 /Helvetica-BoldOblique ISO1252Encoding psp_definefont
+/Times-Roman-iso1252 /Times-Roman ISO1252Encoding psp_definefont
+/Times-Italic-iso1252 /Times-Italic ISO1252Encoding psp_definefont
+/Times-Bold-iso1252 /Times-Bold ISO1252Encoding psp_definefont
+220 318 moveto
+0 0 0 setrgbcolor
+/OpenSymbolHSet1 findfont 38 -38 matrix scale makefont setfont
+<95>
+show
+279 318 moveto
+/Helvetica-BoldOblique-iso1252 findfont 50 -50 matrix scale makefont setfont
+<4F7267616E69736174696F6E2064657320736F757263657320636F6D70696CE96573>
+show
+220 428 moveto
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<556E6520666F6973206C657320736F75726365732072E9637570E972E965732028E02070617274
+6972206427756E65206261736520435653206F75207061722065787472616374696F6E206427756E
+65206172636869766520>
+show
+1708 428 moveto
+/Times-Italic-iso1252 findfont 42 -42 matrix scale makefont setfont
+<7372632E7461722E677A>
+show
+1866 428 moveto
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<292C20756E652072E8676C6520646520626F6E>
+show
+220 475 moveto
+<7573616765>
+show
+328 475 moveto
+<706F7572>
+show
+416 475 moveto
+<756E>
+show
+471 475 moveto
+<64E976656C6F7070657572>
+show
+691 475 moveto
+<636F6E7369737465>
+show
+839 475 moveto
+<E0>
+show
+869 475 moveto
+<636F6D70696C6572>
+show
+1031 475 moveto
+<636573>
+show
+1096 475 moveto
+<736F7572636573>
+show
+1234 475 moveto
+<64616E73>
+show
+1324 475 moveto
+<756E>
+show
+1378 475 moveto
+<72E9706572746F697265>
+show
+1553 475 moveto
+<64697374696E6374>
+show
+1689 475 moveto
+<286E6F6E>
+show
+1779 475 moveto
+<666F7263E96D656E74>
+show
+1960 475 moveto
+<7574696C65>
+show
+2047 475 moveto
+<706F7572>
+show
+2136 475 moveto
+<756E>
+show
+220 522 moveto
+<73696D706C65207574696C69736174657572292E>
+show
+220 569 moveto
+<4E6F7573>
+show
+321 569 moveto
+<616C6C6F6E73>
+show
+433 569 moveto
+<64697374696E67756572>
+show
+613 569 moveto
+<6C65>
+show
+655 569 moveto
+<636173>
+show
+720 569 moveto
+<6465>
+show
+772 569 moveto
+<6C61>
+show
+814 569 moveto
+<636F6D70696C6174696F6E>
+show
+1027 569 moveto
+<6427756E>
+show
+1109 569 moveto
+<6D6F64756C65>
+show
+1248 569 moveto
+<7365756C>
+show
+1327 569 moveto
+<6574>
+show
+1370 569 moveto
+<63656C7569>
+show
+1463 569 moveto
+<6465>
+show
+1515 569 moveto
+<6C61>
+show
+1557 569 moveto
+<636F6D70696C6174696F6E>
+show
+1770 569 moveto
+<6465>
+show
+1821 569 moveto
+<706C75736965757273>
+show
+1984 569 moveto
+<6D6F64756C6573>
+show
+2139 569 moveto
+<656E>
+show
+220 616 moveto
+<6DEA6D65>
+show
+335 616 moveto
+<74656D70732E>
+show
+457 616 moveto
+<44616E73>
+show
+556 616 moveto
+<6C6573>
+show
+614 616 moveto
+<64657578>
+show
+708 616 moveto
+<6361732C>
+show
+784 616 moveto
+<6C276172626F72657363656E6365>
+show
+1034 616 moveto
+<6475>
+show
+1088 616 moveto
+<72E9706572746F697265>
+show
+1263 616 moveto
+<6465>
+show
+1315 616 moveto
+<636F6D70696C6174696F6E>
+show
+1527 616 moveto
+<657374>
+show
+1586 616 moveto
+<73656E7369626C656D656E74>
+show
+1817 616 moveto
+<64696666E972656E7465>
+show
+1993 616 moveto
+<6465>
+show
+2044 616 moveto
+<63656C6C65>
+show
+2136 616 moveto
+<6475>
+show
+220 663 moveto
+<72E9706572746F6972652064657320736F75726365732E>
+show
+220 757 moveto
+/OpenSymbolHSet1 findfont 38 -38 matrix scale makefont setfont
+<96>
+show
+220 757 moveto
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<2020>
+[10 0]
+xshow
+220 761 20 2 rectfill
+241 757 moveto
+1 1 1 setrgbcolor
+/OpenSymbolHSet1 findfont 38 -38 matrix scale makefont setfont
+<2020>
+[21 0]
+xshow
+241 757 moveto
+0 0 0 setrgbcolor
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<2020>
+[29 0]
+xshow
+241 761 39 2 rectfill
+279 757 moveto
+<436173206427756E20756E69717565206D6F64756C65203A>
+show
+279 761 427 2 rectfill
+220 855 moveto
+<4C276172626F72657363656E63652064752072E9706572746F69726520646520636F6D70696C61
+74696F6E20646520>
+show
+1020 855 moveto
+/Times-Bold-iso1252 findfont 42 -42 matrix scale makefont setfont
+<3C4D4F44554C453E5F5352432F>
+show
+1373 855 moveto
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<20657374206C612073756976616E7465203A>
+show
+220 951 moveto
+/Times-Bold-iso1252 findfont 42 -42 matrix scale makefont setfont
+<2F6D6F6E2F7265706572746F6972652F64652F636F6D70696C6174696F6E2F706F75722F4D4F4E
+5F6D6F64756C652F>
+show
+368 999 moveto
+<61646D5F6C6F63616C2F>
+show
+515 1046 moveto
+<756E69782F>
+show
+368 1094 moveto
+<62696E2F>
+show
+515 1142 moveto
+<73616C6F6D652F>
+show
+368 1190 moveto
+<69646C2F>
+show
+515 1238 moveto
+<73616C6F6D652F>
+show
+368 1286 moveto
+<696E636C7564652F>
+show
+515 1334 moveto
+<73616C6F6D652F>
+show
+368 1382 moveto
+<6C69622F>
+show
+515 1430 moveto
+<73616C6F6D652F>
+show
+368 1478 moveto
+<73616C6F6D655F61646D2F>
+show
+515 1526 moveto
+<756E69782F>
+show
+368 1574 moveto
+<73686172652F>
+show
+515 1621 moveto
+<73616C6F6D652F>
+show
+663 1669 moveto
+<646F632F>
+show
+663 1717 moveto
+<7265736F75726365732F>
+show
+368 1765 moveto
+<7372632F>
+show
+368 1813 moveto
+<4D616B6566696C65>
+show
+220 1909 moveto
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<4365747465>
+show
+319 1909 moveto
+<6172626F72657363656E6365>
+show
+549 1909 moveto
+<657374>
+show
+607 1909 moveto
+<67E96EE972E965>
+show
+748 1909 moveto
+<706172>
+show
+812 1909 moveto
+<6C65>
+show
+854 1909 moveto
+/Times-Italic-iso1252 findfont 42 -42 matrix scale makefont setfont
+<636F6E666967757265>
+show
+1024 1909 moveto
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<6475>
+show
+1077 1909 moveto
+<6D6F64756C65>
+show
+1213 1909 moveto
+<636F6E736964E972E92E>
+show
+1395 1909 moveto
+<4C65>
+show
+1450 1909 moveto
+<72E9706572746F697265>
+show
+1624 1909 moveto
+/Times-Bold-iso1252 findfont 42 -42 matrix scale makefont setfont
+<73616C6F6D655F61646D2F>
+show
+1869 1909 moveto
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<657374>
+show
+1926 1909 moveto
+<6372E9E9>
+show
+2007 1909 moveto
+<E0>
+show
+2037 1909 moveto
+<706172746972>
+show
+2138 1909 moveto
+<6475>
+show
+220 1957 moveto
+<72E9706572746F697265>
+show
+398 1957 moveto
+/Times-Bold-iso1252 findfont 42 -42 matrix scale makefont setfont
+<2F6D6F6E2F7265706572746F6972652F642F696E7374616C6C6174696F6E2F706F75722F4B4552
+4E454C2F>
+show
+1228 1957 moveto
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<2C>
+show
+1253 1957 moveto
+<656E>
+show
+1307 1957 moveto
+<72657370656374616E74>
+show
+1492 1957 moveto
+<6C61>
+show
+1537 1957 moveto
+<6DEA6D65>
+show
+1654 1957 moveto
+<736F75732D6172626F72657363656E6365>
+show
+1978 1957 moveto
+<286C6573>
+show
+2053 1957 moveto
+<6669636869657273>
+show
+220 2004 moveto
+<2A2E696E2067617264656E74206C65206DEA6D65206E6F6D206D6169732073616E73206C276578
+74656E73696F6E20272E696E2720617072E873207472616974656D656E7420706172206C6520>
+show
+1487 2004 moveto
+/Times-Italic-iso1252 findfont 42 -42 matrix scale makefont setfont
+<636F6E666967757265>
+show
+1647 2004 moveto
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<292E>
+show
+220 2051 moveto
+<456E>
+show
+282 2051 moveto
+<6F757472652C>
+show
+394 2051 moveto
+<6C65>
+show
+440 2051 moveto
+/Times-Italic-iso1252 findfont 42 -42 matrix scale makefont setfont
+<636F6E666967757265>
+show
+614 2051 moveto
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<7465737465>
+show
+706 2051 moveto
+<6C61>
+show
+752 2051 moveto
+<7072E973656E6365>
+show
+915 2051 moveto
+<646573>
+show
+986 2051 moveto
+<7072E9726571756973>
+show
+1157 2051 moveto
+<61696E7369>
+show
+1252 2051 moveto
+<717565>
+show
+1328 2051 moveto
+<6C27696E7374616C6C6174696F6E>
+show
+1549 2051 moveto
+<646573>
+show
+1620 2051 moveto
+<6D6F64756C6573>
+show
+1778 2051 moveto
+<646F6E74>
+show
+1868 2051 moveto
+<64E970656E64>
+show
+2005 2051 moveto
+<6C65>
+show
+2051 2051 moveto
+<6D6F64756C65>
+show
+220 2098 moveto
+<636F6E736964E972E92E>
+show
+1188 2982 moveto
+/Times-Roman-iso1252 findfont 50 -50 matrix scale makefont setfont
+<39>
+show
+221 2845 1959 1 rectfill
+221 2933 1959 1 rectfill
+showpage
+grestore grestore
+%%PageTrailer
+
+%%Page: 9 9
+%%PageBoundingBox: 18 18 594 774
+%%BeginSetup
+%
+%%EndSetup
+%%BeginPageSetup
+%
+gsave
+[0.24 0 0 -0.24 18 774] concat
+gsave
+%%EndPageSetup
+/Times-Roman-iso1252 /Times-Roman ISO1252Encoding psp_definefont
+/Times-Italic-iso1252 /Times-Italic ISO1252Encoding psp_definefont
+/Times-Bold-iso1252 /Times-Bold ISO1252Encoding psp_definefont
+%!PS-AdobeFont-1.0-2.0
+%%Creator: SunTypeTools-TT 1.0 gelf
+%%Title: OpenSymbolHSet1
+%%CreationDate:
+%%Pages: 0
+%%EndComments
+%%BeginResource: font OpenSymbolHSet1
+% Original font name: OpenSymbol
+30 dict begin
+/PaintType 0 def
+/FontType 3 def
+/StrokeWidth 0 def
+/FontName /OpenSymbolHSet1 def
+/XUID [103 0 0 16#8D049593 2 16#0AC01B5C 16#CD31002C] def
+/FontMatrix [.001 0 0 .001 0 0] def
+/FontBBox [-179 -313 1083 917] def
+/Encoding 256 array def
+ 0 1 255 {Encoding exch /.notdef put} for
+ Encoding 32 /glyph0 put
+ Encoding 150 /glyph1 put
+/CharProcs 3 dict def
+ CharProcs begin
+ /.notdef {} def
+ /glyph0 {
+ 500 0 0 0 0 0 setcachedevice
+ } bind def
+ /glyph1 {
+ 556 0 -2 224 554 296 setcachedevice
+ -2 224 moveto
+ 554 224 lineto
+ 554 296 lineto
+ -2 296 lineto
+ -2 224 lineto
+ closepath
+ fill
+ } bind def
+ end
+/BuildGlyph {
+ exch /CharProcs get exch
+ 2 copy known not
+ {pop /.notdef} if
+ get exec
+} bind def
+/BuildChar {
+ 1 index /Encoding get exch get
+ 1 index /BuildGlyph get exec
+} bind def
+currentdict end
+/OpenSymbolHSet1 exch definefont pop
+%%EndResource
+220 258 moveto
+0 0 0 setrgbcolor
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<4F7267616E69736174696F6E20647520636174616C6F677565206465206D6F64756C6573203A>
+show
+220 262 666 2 rectfill
+220 305 moveto
+<4C276F7267616E69736174696F6E>
+show
+472 305 moveto
+<6475>
+show
+524 305 moveto
+<636174616C6F677565>
+show
+696 305 moveto
+<6465>
+show
+747 305 moveto
+<6D6F64756C6573>
+show
+900 305 moveto
+<706F757272616974>
+show
+1044 305 moveto
+<7672616973656D626C61626C656D656E74>
+show
+1374 305 moveto
+<7072656E647265>
+show
+1514 305 moveto
+<6578656D706C65>
+show
+1667 305 moveto
+<737572>
+show
+1729 305 moveto
+<63656C6C65>
+show
+1820 305 moveto
+<6D697365>
+show
+1909 305 moveto
+<656E>
+show
+1961 305 moveto
+<706C616365>
+show
+2060 305 moveto
+<706F7572>
+show
+2148 305 moveto
+<6C65>
+show
+220 352 moveto
+<70726F6A6574>
+show
+329 352 moveto
+/Times-Italic-iso1252 findfont 42 -42 matrix scale makefont setfont
+<416C6C69616E636573>
+show
+495 352 moveto
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<706172>
+show
+560 352 moveto
+<6C61>
+show
+602 352 moveto
+<736F6369E974E9>
+show
+729 352 moveto
+<4F70656E43617363616465>
+show
+972 352 moveto
+<28416374696F6E>
+show
+1111 352 moveto
+<592E>
+show
+1163 352 moveto
+<46726963617564>
+show
+1302 352 moveto
+<4F70656E43617363616465>
+show
+1544 352 moveto
+<E0>
+show
+1574 352 moveto
+<6D656E6572292E>
+show
+1715 352 moveto
+<4E6F7573>
+show
+1814 352 moveto
+<70726F706F736F6E73>
+show
+1998 352 moveto
+<6EE9616E6D6F696E73>
+show
+220 399 moveto
+<756E6520736F6C7574696F6E2070726F7072652061752050414C20706F7572206C27696E737461
+6E74203A>
+show
+220 495 moveto
+<6C65>
+show
+295 495 moveto
+<736F75732D72E9706572746F697265>
+show
+593 495 moveto
+/Times-Bold-iso1252 findfont 42 -42 matrix scale makefont setfont
+<73686172652F73616C6F6D652F7265736F75726365732F>
+show
+1064 495 moveto
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<636F6E7469656E74>
+show
+1244 495 moveto
+<756E>
+show
+1331 495 moveto
+<66696368696572>
+show
+1486 495 moveto
+<AB>
+show
+1507 495 moveto
+<20>
+show
+1517 495 moveto
+<53414C4F4D455F3C4D4F44554C453E5F434154412E786D6C>
+show
+2148 495 moveto
+<20>
+show
+2158 495 moveto
+<BB>
+show
+220 542 moveto
+<636F72726573706F6E64616E74>
+show
+471 542 moveto
+<E0>
+show
+504 542 moveto
+<6C61>
+show
+548 542 moveto
+<706172746965>
+show
+657 542 moveto
+<6475>
+show
+713 542 moveto
+<636174616C6F677565>
+show
+887 542 moveto
+<6465>
+show
+940 542 moveto
+<6D6F64756C6573>
+show
+1096 542 moveto
+<72656C6174697665>
+show
+1235 542 moveto
+<E0>
+show
+1269 542 moveto
+<3C4D4F44554C453E2E>
+show
+1520 542 moveto
+<436573>
+show
+1596 542 moveto
+<64696666E972656E7473>
+show
+1771 542 moveto
+<6669636869657273>
+show
+1910 542 moveto
+<736F6E74>
+show
+1993 542 moveto
+<636F6E636174E96EE973>
+show
+220 589 moveto
+<706172>
+show
+288 589 moveto
+<6C65>
+show
+331 589 moveto
+<736372697074>
+show
+438 589 moveto
+/Times-Italic-iso1252 findfont 42 -42 matrix scale makefont setfont
+<72756E53616C6F6D65>
+show
+619 589 moveto
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<2C>
+show
+644 589 moveto
+<6166696E>
+show
+722 589 moveto
+<6465>
+show
+775 589 moveto
+<666F726D6572>
+show
+904 589 moveto
+<6C65>
+show
+948 589 moveto
+<636174616C6F677565>
+show
+1123 589 moveto
+<646573>
+show
+1193 589 moveto
+<6D6F64756C6573>
+show
+1349 589 moveto
+<64616E73>
+show
+1439 589 moveto
+<736F6E>
+show
+1511 589 moveto
+<696E74E96772616C6974E92E>
+show
+1706 589 moveto
+<4C276F72647265>
+show
+1842 589 moveto
+<6465>
+show
+1895 589 moveto
+<726563686572636865>
+show
+2073 589 moveto
+<6465>
+show
+2126 589 moveto
+<636573>
+show
+220 636 moveto
+<636174616C6F67756573207061727469656C7320657374206C652073756976616E74203A>
+show
+368 683 moveto
+<312F>
+show
+416 683 moveto
+<6C65>
+show
+462 683 moveto
+<736372697074>
+show
+570 683 moveto
+<7365>
+show
+621 683 moveto
+<72E966E87265>
+show
+735 683 moveto
+<746F7574>
+show
+816 683 moveto
+<642761626F7264>
+show
+956 683 moveto
+<E0>
+show
+990 683 moveto
+<756E>
+show
+1048 683 moveto
+<4D4F44554C45535F50415448>
+show
+1398 683 moveto
+<64E966696E69>
+show
+1511 683 moveto
+<706172>
+show
+1580 683 moveto
+<6C277574696C69736174657572>
+show
+1783 683 moveto
+<636F6E74656E616E74>
+show
+1963 683 moveto
+<756E65>
+show
+2039 683 moveto
+<6C69737465>
+show
+2124 683 moveto
+<646573>
+show
+220 730 moveto
+<72E9706572746F69726573>
+show
+427 730 moveto
+<6427696E7374616C6C6174696F6E>
+show
+668 730 moveto
+<646573>
+show
+752 730 moveto
+<646976657273>
+show
+881 730 moveto
+<6D6F64756C65732E>
+show
+1060 730 moveto
+<4C61>
+show
+1132 730 moveto
+<6C69737465>
+show
+1229 730 moveto
+<646573>
+show
+1312 730 moveto
+<6D6F64756C6573>
+show
+1481 730 moveto
+<7072E973656E7473>
+show
+1646 730 moveto
+<64616E73>
+show
+1750 730 moveto
+<756E65>
+show
+1838 730 moveto
+<61647265737365>
+show
+1988 730 moveto
+<646F6E6EE965>
+show
+2137 730 moveto
+<6475>
+show
+220 777 moveto
+<4D4F44554C45535F50415448>
+show
+587 777 moveto
+<657374>
+show
+667 777 moveto
+<64E96475697465>
+show
+824 777 moveto
+<6175746F6D6174697175656D656E742C>
+show
+1160 777 moveto
+<706172>
+show
+1247 777 moveto
+<726563686572636865>
+show
+1443 777 moveto
+<6427756E65>
+show
+1566 777 moveto
+<6F75>
+show
+1641 777 moveto
+<706C75736965757273>
+show
+1826 777 moveto
+<736F75732D6172626F72657363656E6365287329>
+show
+220 825 moveto
+/Times-Bold-iso1252 findfont 42 -42 matrix scale makefont setfont
+<73686172652F73616C6F6D652F7265736F75726365732F>
+show
+671 825 moveto
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<6E6F6E>
+show
+759 825 moveto
+<766964652873292E>
+show
+911 825 moveto
+<4C61>
+show
+981 825 moveto
+<726563686572636865>
+show
+1169 825 moveto
+<7061726D69>
+show
+1292 825 moveto
+<6C6573>
+show
+1363 825 moveto
+<6164726573736573>
+show
+1529 825 moveto
+<6475>
+show
+1595 825 moveto
+<4D4F44554C45535F50415448>
+show
+1954 825 moveto
+<73756974>
+show
+2041 825 moveto
+<6C61>
+show
+2095 825 moveto
+<72E8676C65>
+show
+220 872 moveto
+<686162697475656C6C65>
+show
+399 872 moveto
+<646573>
+show
+467 872 moveto
+<504154482C>
+show
+600 872 moveto
+<69652E>
+show
+653 872 moveto
+<64E962757465>
+show
+779 872 moveto
+<E0>
+show
+810 872 moveto
+<676175636865>
+show
+941 872 moveto
+<6465>
+show
+994 872 moveto
+<6C61>
+show
+1037 872 moveto
+<6C697374652C>
+show
+1130 872 moveto
+<6574>
+show
+1173 872 moveto
+<7327617272EA7465>
+show
+1306 872 moveto
+<64E873>
+show
+1374 872 moveto
+<717565>
+show
+1448 872 moveto
+<6C27E96CE96D656E74>
+show
+1613 872 moveto
+<7265636865726368E9>
+show
+1789 872 moveto
+<657374>
+show
+1848 872 moveto
+<74726F7576E92E>
+show
+1979 872 moveto
+<5369>
+show
+2027 872 moveto
+<706C75736965757273>
+show
+220 919 moveto
+<76657273696F6E73>
+show
+373 919 moveto
+<6427696E7374616C6C6174696F6E>
+show
+602 919 moveto
+<6427756E>
+show
+686 919 moveto
+<6DEA6D65>
+show
+802 919 moveto
+<6D6F64756C65>
+show
+941 919 moveto
+<736F6E74>
+show
+1025 919 moveto
+<74726F7576E96573>
+show
+1181 919 moveto
+<706F7572>
+show
+1271 919 moveto
+<756E65>
+show
+1344 919 moveto
+<6DEA6D65>
+show
+1461 919 moveto
+<61647265737365>
+show
+1598 919 moveto
+<6475>
+show
+1653 919 moveto
+<4D4F44554C45535F504154482C>
+show
+2011 919 moveto
+<6327657374>
+show
+2097 919 moveto
+<616C6F7273>
+show
+220 966 moveto
+<6C276F7264726520616C70686162E974697175652071756920646F6E6E65206C276F7264726520
+6465207072696F726974E92E>
+show
+368 1014 moveto
+<322F>
+show
+415 1014 moveto
+<656E>
+show
+470 1014 moveto
+<7365636F6E64>
+show
+601 1014 moveto
+<6C6965752C>
+show
+690 1014 moveto
+<6327657374>
+show
+778 1014 moveto
+<6C61>
+show
+823 1014 moveto
+<7661726961626C65>
+show
+974 1014 moveto
+<3C4D4F44554C453E5F4150504C495F494E5354414C4C>
+show
+1549 1014 moveto
+<696E64697175616E74>
+show
+1723 1014 moveto
+<6C65>
+show
+1769 1014 moveto
+<6368656D696E>
+show
+1907 1014 moveto
+<6427696E7374616C6C6174696F6E>
+show
+2138 1014 moveto
+<6465>
+show
+220 1061 moveto
+<3C4D4F44554C453E2028706F757220756E65206170706C69636174696F6E20626173E965207375
+7220>
+show
+992 1061 moveto
+/Times-Italic-iso1252 findfont 42 -42 matrix scale makefont setfont
+<53616C6F6D65>
+show
+1115 1061 moveto
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<29207175692065737420707269736520656E20636F6D70746520736920656C6C65206120E974E9
+2064E966696E696520706172206C277574696C697361746575722E>
+show
+368 1108 moveto
+<332F>
+show
+416 1108 moveto
+<656E>
+show
+472 1108 moveto
+<6465726E696572>
+show
+607 1108 moveto
+<6C6965752C>
+show
+697 1108 moveto
+<6C65>
+show
+744 1108 moveto
+<6368656D696E>
+show
+884 1108 moveto
+<6427696E7374616C6C6174696F6E>
+show
+1116 1108 moveto
+<636F6E74656E75>
+show
+1264 1108 moveto
+<64616E73>
+show
+1358 1108 moveto
+<6C61>
+show
+1405 1108 moveto
+<7661726961626C65>
+show
+1557 1108 moveto
+<3C4D4F44554C453E5F494E5354414C4C>
+show
+1996 1108 moveto
+<657374>
+show
+2059 1108 moveto
+<70726973>
+show
+2138 1108 moveto
+<656E>
+show
+220 1155 moveto
+<636F6D70746520706F75722074726F75766572206C65206669636869657220AB>
+show
+755 1155 moveto
+<20>
+show
+765 1155 moveto
+<53414C4F4D455F3C4D4F44554C453E5F434154412E786D6C>
+show
+1396 1155 moveto
+<20>
+show
+1406 1155 moveto
+<BB2E>
+show
+220 1296 moveto
+/OpenSymbolHSet1 findfont 38 -38 matrix scale makefont setfont
+<96>
+show
+220 1296 moveto
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<2020>
+[10 0]
+xshow
+220 1300 20 2 rectfill
+241 1296 moveto
+1 1 1 setrgbcolor
+/OpenSymbolHSet1 findfont 38 -38 matrix scale makefont setfont
+<2020>
+[21 0]
+xshow
+241 1296 moveto
+0 0 0 setrgbcolor
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<2020>
+[29 0]
+xshow
+241 1300 39 2 rectfill
+279 1296 moveto
+<43617320646520706C75736965757273206D6F64756C6573203A>
+show
+279 1300 450 2 rectfill
+220 1393 moveto
+<5369>
+show
+267 1393 moveto
+<6E6F7573>
+show
+359 1393 moveto
+<636F6D70696C6F6E73>
+show
+545 1393 moveto
+<706C75736965757273>
+show
+710 1393 moveto
+<6D6F64756C6573>
+show
+864 1393 moveto
+<656E>
+show
+916 1393 moveto
+<6DEA6D65>
+show
+1031 1393 moveto
+<74656D70732C>
+show
+1154 1393 moveto
+<6C6573>
+show
+1212 1393 moveto
+<72E9706572746F69726573>
+show
+1404 1393 moveto
+<6465>
+show
+1456 1393 moveto
+<636F6D70696C6174696F6E>
+show
+1669 1393 moveto
+<72657370656374696673>
+show
+1842 1393 moveto
+<6465>
+show
+1894 1393 moveto
+<746F7573>
+show
+1976 1393 moveto
+<6C6573>
+show
+2035 1393 moveto
+<6D6F64756C6573>
+show
+220 1440 moveto
+<61707061727469656E6E656E74206175206DEA6D652072E9706572746F697265203A>
+show
+220 1535 moveto
+/Times-Bold-iso1252 findfont 42 -42 matrix scale makefont setfont
+<2F6D6F6E2F7265706572746F6972652F64652F636F6D70696C6174696F6E2F706F75722F4D4553
+5F6D6F64756C65732F>
+show
+368 1583 moveto
+<4D616B6566696C65>
+show
+368 1631 moveto
+<3C4D4F44554C453E5F4255494C442F>
+show
+515 1679 moveto
+<61646D5F6C6F63616C2F>
+show
+663 1727 moveto
+<756E69782F>
+show
+515 1775 moveto
+<62696E2F>
+show
+663 1823 moveto
+<73616C6F6D652F>
+show
+515 1871 moveto
+<69646C2F>
+show
+663 1919 moveto
+<73616C6F6D652F>
+show
+515 1967 moveto
+<696E636C7564652F>
+show
+663 2015 moveto
+<73616C6F6D652F>
+show
+515 2063 moveto
+<6C69622F>
+show
+663 2110 moveto
+<73616C6F6D652F>
+show
+515 2158 moveto
+<73616C6F6D655F61646D2F>
+show
+663 2206 moveto
+<756E69782F>
+show
+515 2254 moveto
+<73686172652F>
+show
+663 2302 moveto
+<73616C6F6D652F>
+show
+810 2350 moveto
+<646F632F>
+show
+810 2398 moveto
+<7265736F75726365732F>
+show
+515 2446 moveto
+<7372632F>
+show
+515 2494 moveto
+<4D616B6566696C65>
+show
+220 2589 moveto
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<4365747465206172626F72657363656E636520657374206372E9E96520706172206C6520>
+show
+810 2589 moveto
+/Times-Italic-iso1252 findfont 42 -42 matrix scale makefont setfont
+<636F6E666967757265>
+show
+970 2589 moveto
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<20676C6F62616C2064752072E9706572746F69726520>
+show
+1322 2589 moveto
+/Times-Bold-iso1252 findfont 42 -42 matrix scale makefont setfont
+<53414C4F4D455F5352432F>
+show
+1620 2589 moveto
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<2C2071756920617070656C6C6520737563636573736976656D656E7420746F7573>
+show
+220 2637 moveto
+<6C657320>
+show
+277 2637 moveto
+/Times-Italic-iso1252 findfont 42 -42 matrix scale makefont setfont
+<636F6E666967757265>
+show
+437 2637 moveto
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<206465732064696666E972656E7473206D6F64756C65732C2071756920657578206372E9656E74
+206C657320736F75732D72E9706572746F6972657320646520>
+show
+1483 2637 moveto
+/Times-Bold-iso1252 findfont 42 -42 matrix scale makefont setfont
+<3C4D4F44554C453E5F4255494C442F>
+show
+1885 2637 moveto
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<2E>
+show
+1175 2982 moveto
+/Times-Roman-iso1252 findfont 50 -50 matrix scale makefont setfont
+<3130>
+show
+221 2845 1959 1 rectfill
+221 2933 1959 1 rectfill
+showpage
+grestore grestore
+%%PageTrailer
+
+%%Page: 10 10
+%%PageBoundingBox: 18 18 594 774
+%%BeginSetup
+%
+%%EndSetup
+%%BeginPageSetup
+%
+gsave
+[0.24 0 0 -0.24 18 774] concat
+gsave
+%%EndPageSetup
+/Times-Roman-iso1252 /Times-Roman ISO1252Encoding psp_definefont
+/Times-Italic-iso1252 /Times-Italic ISO1252Encoding psp_definefont
+/Times-Bold-iso1252 /Times-Bold ISO1252Encoding psp_definefont
+220 258 moveto
+0 0 0 setrgbcolor
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<456C6C65>
+show
+305 258 moveto
+<72657072656E64>
+show
+450 258 moveto
+<63656C6C65>
+show
+547 258 moveto
+<6475>
+show
+607 258 moveto
+<72E9706572746F697265>
+show
+787 258 moveto
+<6427696E7374616C6C6174696F6E>
+show
+1019 258 moveto
+<717569>
+show
+1090 258 moveto
+<657374>
+show
+1155 258 moveto
+<64E96372697465>
+show
+1286 258 moveto
+<706C7573>
+show
+1374 258 moveto
+<6C6F696E2C>
+show
+1467 258 moveto
+<6365>
+show
+1522 258 moveto
+<717569>
+show
+1593 258 moveto
+<7065726D6574>
+show
+1726 258 moveto
+<6175>
+show
+1783 258 moveto
+<64E976656C6F7070657572>
+show
+2009 258 moveto
+<6465>
+show
+2066 258 moveto
+<6E65>
+show
+2123 258 moveto
+<706173>
+show
+220 305 moveto
+<666F7263E96D656E74>
+show
+403 305 moveto
+<6C616E636572>
+show
+519 305 moveto
+/Times-Italic-iso1252 findfont 42 -42 matrix scale makefont setfont
+<6D616B65>
+show
+620 305 moveto
+<696E7374616C6C>
+show
+738 305 moveto
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<617072E873>
+show
+840 305 moveto
+<6C61>
+show
+883 305 moveto
+<636F6D70696C6174696F6E>
+show
+1097 305 moveto
+<2863656369>
+show
+1192 305 moveto
+<657374>
+show
+1251 305 moveto
+<E967616C656D656E74>
+show
+1438 305 moveto
+<76726169>
+show
+1516 305 moveto
+<64616E73>
+show
+1607 305 moveto
+<6C65>
+show
+1650 305 moveto
+<636173>
+show
+1717 305 moveto
+<6465>
+show
+1770 305 moveto
+<6C61>
+show
+1813 305 moveto
+<636F6D70696C6174696F6E>
+show
+2027 305 moveto
+<6427756E>
+show
+2111 305 moveto
+<7365756C>
+show
+220 352 moveto
+<6D6F64756C65292E>
+show
+220 399 moveto
+<43686163756E>
+show
+363 399 moveto
+<646573>
+show
+435 399 moveto
+/Times-Italic-iso1252 findfont 42 -42 matrix scale makefont setfont
+<636F6E666967757265>
+show
+610 399 moveto
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<7465737465>
+show
+701 399 moveto
+<6C61>
+show
+747 399 moveto
+<7072E973656E6365>
+show
+910 399 moveto
+<646573>
+show
+981 399 moveto
+<6D6F64756C6573>
+show
+1139 399 moveto
+<726571756973>
+show
+1256 399 moveto
+<706172>
+show
+1325 399 moveto
+<6C6573>
+show
+1387 399 moveto
+<72656C6174696F6E73>
+show
+1548 399 moveto
+<6465>
+show
+1603 399 moveto
+<64E970656E64616E6365732C>
+show
+1842 399 moveto
+<686F726D6973>
+show
+1975 399 moveto
+<6C6573>
+show
+2037 399 moveto
+<6D6F64756C6573>
+show
+220 448 moveto
+<7072E973656E7473>
+show
+380 448 moveto
+<64616E73>
+show
+479 448 moveto
+<6C65>
+show
+532 448 moveto
+<72E9706572746F697265>
+show
+718 448 moveto
+/Times-Bold-iso1252 findfont 42 -42 matrix scale makefont setfont
+<2F6D6F6E2F7265706572746F6972652F64652F636F6D70696C6174696F6E2F706F75722F4D4553
+5F6D6F64756C65732F>
+show
+1663 448 moveto
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<2E>
+show
+1696 448 moveto
+<456E>
+show
+1764 448 moveto
+<65666665742C>
+show
+1874 448 moveto
+<6C65>
+show
+1926 448 moveto
+/Times-Italic-iso1252 findfont 42 -42 matrix scale makefont setfont
+<636F6E666967757265>
+show
+2108 448 moveto
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<6427756E>
+show
+220 495 moveto
+<6D6F64756C65>
+show
+358 495 moveto
+<646F6E6EE9>
+show
+472 495 moveto
+<6E65>
+show
+523 495 moveto
+<646F6974>
+show
+600 495 moveto
+<706173>
+show
+669 495 moveto
+<746573746572>
+show
+771 495 moveto
+<7369>
+show
+811 495 moveto
+<756E>
+show
+864 495 moveto
+<6175747265>
+show
+960 495 moveto
+<6D6F64756C65>
+show
+1098 495 moveto
+<646F6E74>
+show
+1184 495 moveto
+<696C>
+show
+1219 495 moveto
+<64E970656E64>
+show
+1353 495 moveto
+<657374>
+show
+1411 495 moveto
+<696E7374616C6CE9>
+show
+1544 495 moveto
+<7369>
+show
+1583 495 moveto
+<6E6F7573>
+show
+1674 495 moveto
+<736F6D6D6573>
+show
+1824 495 moveto
+<6A757374656D656E74>
+show
+1999 495 moveto
+<656E>
+show
+2050 495 moveto
+<747261696E>
+show
+2139 495 moveto
+<6465>
+show
+220 542 moveto
+<6C6520636F6E666967757265722061757373692C20717527696C20736F6974206F75206E6F6E20
+64E96AE020636F6D70696CE92E>
+show
+1175 2982 moveto
+/Times-Roman-iso1252 findfont 50 -50 matrix scale makefont setfont
+<3131>
+show
+221 2845 1959 1 rectfill
+221 2933 1959 1 rectfill
+showpage
+grestore grestore
+%%PageTrailer
+
+%%Page: 11 11
+%%PageBoundingBox: 18 18 594 774
+%%BeginSetup
+%
+%%EndSetup
+%%BeginPageSetup
+%
+gsave
+[0.24 0 0 -0.24 18 774] concat
+gsave
+%%EndPageSetup
+%!PS-AdobeFont-1.0-2.0
+%%Creator: SunTypeTools-TT 1.0 gelf
+%%Title: OpenSymbolHSet1
+%%CreationDate:
+%%Pages: 0
+%%EndComments
+%%BeginResource: font OpenSymbolHSet1
+% Original font name: OpenSymbol
+30 dict begin
+/PaintType 0 def
+/FontType 3 def
+/StrokeWidth 0 def
+/FontName /OpenSymbolHSet1 def
+/XUID [103 0 0 16#8D049593 3 16#ABC23EE2 16#6072D5A5] def
+/FontMatrix [.001 0 0 .001 0 0] def
+/FontBBox [-179 -313 1083 917] def
+/Encoding 256 array def
+ 0 1 255 {Encoding exch /.notdef put} for
+ Encoding 32 /glyph0 put
+ Encoding 150 /glyph1 put
+ Encoding 149 /glyph2 put
+/CharProcs 4 dict def
+ CharProcs begin
+ /.notdef {} def
+ /glyph0 {
+ 500 0 0 0 0 0 setcachedevice
+ } bind def
+ /glyph1 {
+ 556 0 -2 224 554 296 setcachedevice
+ -2 224 moveto
+ 554 224 lineto
+ 554 296 lineto
+ -2 296 lineto
+ -2 224 lineto
+ closepath
+ fill
+ } bind def
+ /glyph2 {
+ 356 0 36 223 297 483 setcachedevice
+ 169 223 moveto
+ 134 223 103 236 76 261 curveto
+ 50 286 36 317 36 353 curveto
+ 36 389 49 420 76 445 curveto
+ 102 470 133 483 169 483 curveto
+ 204 483 235 471 260 445 curveto
+ 285 420 297 389 297 353 curveto
+ 297 318 285 287 260 261 curveto
+ 236 236 206 223 169 223 curveto
+ closepath
+ fill
+ } bind def
+ end
+/BuildGlyph {
+ exch /CharProcs get exch
+ 2 copy known not
+ {pop /.notdef} if
+ get exec
+} bind def
+/BuildChar {
+ 1 index /Encoding get exch get
+ 1 index /BuildGlyph get exec
+} bind def
+currentdict end
+/OpenSymbolHSet1 exch definefont pop
+%%EndResource
+/Helvetica-BoldOblique-iso1252 /Helvetica-BoldOblique ISO1252Encoding psp_definefont
+/Times-Roman-iso1252 /Times-Roman ISO1252Encoding psp_definefont
+/Times-Italic-iso1252 /Times-Italic ISO1252Encoding psp_definefont
+/Times-Bold-iso1252 /Times-Bold ISO1252Encoding psp_definefont
+220 318 moveto
+0 0 0 setrgbcolor
+/OpenSymbolHSet1 findfont 38 -38 matrix scale makefont setfont
+<95>
+show
+279 318 moveto
+/Helvetica-BoldOblique-iso1252 findfont 50 -50 matrix scale makefont setfont
+<4F7267616E69736174696F6E20646573206669636869657273206427696E7374616C6C6174696F
+6E>
+show
+220 428 moveto
+/OpenSymbolHSet1 findfont 38 -38 matrix scale makefont setfont
+<96>
+show
+279 428 moveto
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<50617220>
+show
+279 428 moveto
+<2020>
+[55 0]
+xshow
+279 432 65 2 rectfill
+345 428 moveto
+/Times-Italic-iso1252 findfont 42 -42 matrix scale makefont setfont
+<6D616B6520696E7374616C6C>
+show
+345 428 moveto
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<2020>
+[193 0]
+xshow
+345 432 203 2 rectfill
+549 428 moveto
+<203A>
+show
+549 428 moveto
+<2020>
+[11 0]
+xshow
+549 432 21 2 rectfill
+220 526 moveto
+<506172>
+show
+292 526 moveto
+<64E9666175742C>
+show
+424 526 moveto
+<6C27696E7374616C6C6174696F6E>
+show
+646 526 moveto
+<657374>
+show
+710 526 moveto
+<6661697465>
+show
+800 526 moveto
+<64616E73>
+show
+893 526 moveto
+<6C65>
+show
+940 526 moveto
+<72E9706572746F697265>
+show
+1120 526 moveto
+/Times-Bold-iso1252 findfont 42 -42 matrix scale makefont setfont
+<2F7573722F6C6F63616C2F>
+show
+1297 526 moveto
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<2E>
+show
+1324 526 moveto
+<4C277574696C69736174657572>
+show
+1541 526 moveto
+<6574>
+show
+1587 526 moveto
+<6C65>
+show
+1634 526 moveto
+<64E976656C6F7070657572>
+show
+1858 526 moveto
+<70657576656E74>
+show
+2007 526 moveto
+<63686F69736972>
+show
+2138 526 moveto
+<756E>
+show
+220 573 moveto
+<6175747265>
+show
+321 573 moveto
+<72E9706572746F697265>
+show
+501 573 moveto
+<706172>
+show
+572 573 moveto
+<6C27696E7465726DE9646961697265>
+show
+832 573 moveto
+<6465>
+show
+889 573 moveto
+<6C276F7074696F6E>
+show
+1032 573 moveto
+/Times-Italic-iso1252 findfont 42 -42 matrix scale makefont setfont
+<2D2D707265666978>
+show
+1173 573 moveto
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<6475>
+show
+1233 573 moveto
+<736372697074>
+show
+1342 573 moveto
+/Times-Italic-iso1252 findfont 42 -42 matrix scale makefont setfont
+<636F6E666967757265>
+show
+1519 573 moveto
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<28>
+show
+1533 573 moveto
+/Times-Italic-iso1252 findfont 42 -42 matrix scale makefont setfont
+<636F6E666967757265>
+show
+1709 573 moveto
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<7370E963696669717565>
+show
+1899 573 moveto
+<E0>
+show
+1934 573 moveto
+<756E>
+show
+1994 573 moveto
+<6D6F64756C65>
+show
+2136 573 moveto
+<6F75>
+show
+220 620 moveto
+<676C6F62616C29>
+show
+338 620 moveto
+<2E>
+show
+220 667 moveto
+<4C27696E7374616C6C6174696F6E2073696D756C74616EE96520646520706C7573696575727320
+6D6F64756C6573206574206C27696E7374616C6C6174696F6E206427756E20756E69717565206D6F
+64756C6520736F6E742073696D696C61697265732E>
+show
+220 761 moveto
+<4C276172626F72657363656E636520657374206C612073756976616E7465203A>
+show
+220 856 moveto
+/Times-Bold-iso1252 findfont 42 -42 matrix scale makefont setfont
+<2F6D6F6E2F7265706572746F6972652F642F696E7374616C6C6174696F6E2F706F75722F4D4F4E
+5F4F555F4D45535F6D6F64756C652873292F>
+show
+368 904 moveto
+<62696E2F>
+show
+515 952 moveto
+<73616C6F6D652F>
+show
+368 1000 moveto
+<69646C2F>
+show
+515 1048 moveto
+<73616C6F6D652F>
+show
+368 1096 moveto
+<696E636C7564652F>
+show
+515 1144 moveto
+<73616C6F6D652F>
+show
+368 1192 moveto
+<6C69622F>
+show
+515 1240 moveto
+<73616C6F6D652F>
+show
+368 1288 moveto
+<73686172652F>
+show
+515 1336 moveto
+<73616C6F6D652F>
+show
+663 1384 moveto
+<646F632F>
+show
+663 1431 moveto
+<7265736F75726365732F>
+show
+220 1526 moveto
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<4CE0206FF9204B45524E454C2065737420696E7374616C6CE92C206E6F75732061766F6E732065
+6E206F7574726520756E20736F75732D72E9706572746F69726520>
+show
+1363 1526 moveto
+/Times-Bold-iso1252 findfont 42 -42 matrix scale makefont setfont
+<73616C6F6D655F61646D2F>
+show
+1598 1526 moveto
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<2E>
+show
+220 1668 moveto
+/OpenSymbolHSet1 findfont 38 -38 matrix scale makefont setfont
+<96>
+show
+220 1668 moveto
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<2020>
+[10 0]
+xshow
+220 1672 20 2 rectfill
+241 1668 moveto
+1 1 1 setrgbcolor
+/OpenSymbolHSet1 findfont 38 -38 matrix scale makefont setfont
+<2020>
+[21 0]
+xshow
+241 1668 moveto
+0 0 0 setrgbcolor
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<2020>
+[29 0]
+xshow
+241 1672 39 2 rectfill
+279 1668 moveto
+<4120706172746972206427756E65206172636869766520>
+show
+279 1668 moveto
+<2020>
+[365 0]
+xshow
+279 1672 375 2 rectfill
+655 1668 moveto
+/Times-Italic-iso1252 findfont 42 -42 matrix scale makefont setfont
+<62696E2E7461722E677A>
+show
+655 1668 moveto
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<2020>
+[150 0]
+xshow
+655 1672 160 2 rectfill
+816 1668 moveto
+<203A>
+show
+816 1668 moveto
+<2020>
+[11 0]
+xshow
+816 1672 21 2 rectfill
+220 1765 moveto
+<496C>
+show
+265 1765 moveto
+<6573>
+show
+300 1765 moveto
+<74>
+show
+330 1765 moveto
+<706F737369626C65>
+show
+487 1765 moveto
+<6427696E7374616C6C6572>
+show
+669 1765 moveto
+<756E>
+show
+731 1765 moveto
+<6F75>
+show
+791 1765 moveto
+<706C75736965757273>
+show
+962 1765 moveto
+<6D6F64756C6573>
+show
+1124 1765 moveto
+<73616E73>
+show
+1215 1765 moveto
+<61766F6972>
+show
+1321 1765 moveto
+<E0>
+show
+1358 1765 moveto
+<6C6573>
+show
+1424 1765 moveto
+<636F6D70696C65722C>
+show
+1602 1765 moveto
+<6365>
+show
+1659 1765 moveto
+<717569>
+show
+1731 1765 moveto
+<7065726D6574>
+show
+1868 1765 moveto
+<756E>
+show
+1929 1765 moveto
+<6761696E>
+show
+2020 1765 moveto
+<6465>
+show
+2079 1765 moveto
+<74656D7073>
+show
+220 1812 moveto
+<7375627374656E7469656C2E20496C2073756666697420706F75722063656C612064652072E963
+7570E972657220756E6520617263686976652062696E6169726520>
+show
+1273 1812 moveto
+<20>
+show
+1283 1812 moveto
+/Times-Italic-iso1252 findfont 42 -42 matrix scale makefont setfont
+<62696E2E7461722E677A>
+show
+1444 1812 moveto
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<20636F6E74656E616E74206C65732072E9706572746F697265732073756976616E7473203A>
+show
+220 1907 moveto
+/Times-Bold-iso1252 findfont 42 -42 matrix scale makefont setfont
+<62696E2F>
+show
+368 1955 moveto
+<73616C6F6D652F>
+show
+220 2003 moveto
+<69646C2F>
+show
+368 2051 moveto
+<73616C6F6D652F>
+show
+220 2099 moveto
+<696E636C7564652F>
+show
+368 2147 moveto
+<73616C6F6D652F>
+show
+220 2195 moveto
+<6C69622F>
+show
+368 2243 moveto
+<73616C6F6D652F>
+show
+220 2290 moveto
+0.50196 0.50196 0.50196 setrgbcolor
+<73616C6F6D655F61646D2F>
+show
+810 2290 moveto
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<287369206C276172636869766520>
+show
+1015 2290 moveto
+/Times-Italic-iso1252 findfont 42 -42 matrix scale makefont setfont
+<62696E2E7461722E677A>
+show
+1176 2290 moveto
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<20636F6E7469656E74206C65206D6F64756C65204B45524E454C29>
+show
+368 2339 moveto
+/Times-Bold-iso1252 findfont 42 -42 matrix scale makefont setfont
+<756E69782F>
+show
+220 2386 moveto
+0 0 0 setrgbcolor
+<73686172652F>
+show
+368 2434 moveto
+<73616C6F6D652F>
+show
+515 2482 moveto
+<646F632F>
+show
+515 2530 moveto
+<7265736F75726365732F>
+show
+220 2624 moveto
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<556E65>
+show
+303 2624 moveto
+<74656C6C65>
+show
+389 2624 moveto
+<61726368697665>
+show
+526 2624 moveto
+<636F6E7469656E74>
+show
+675 2624 moveto
+<6C6573>
+show
+735 2624 moveto
+<6669636869657273>
+show
+874 2624 moveto
+<62696E6169726573>
+show
+1021 2624 moveto
+<6427756E>
+show
+1105 2624 moveto
+<6F75>
+show
+1159 2624 moveto
+<706C75736965757273>
+show
+1325 2624 moveto
+<6D6F64756C65732E>
+show
+1491 2624 moveto
+<4C277574696C69736174657572>
+show
+1706 2624 moveto
+<65787472616974>
+show
+1826 2624 moveto
+<6365747465>
+show
+1919 2624 moveto
+<61726368697665>
+show
+2056 2624 moveto
+<64616E73>
+show
+2147 2624 moveto
+<6C65>
+show
+220 2671 moveto
+<72E9706572746F69726520646520736F6E2063686F69782E>
+show
+1175 2982 moveto
+/Times-Roman-iso1252 findfont 50 -50 matrix scale makefont setfont
+<3132>
+show
+221 2845 1959 1 rectfill
+221 2933 1959 1 rectfill
+showpage
+grestore grestore
+%%PageTrailer
+
+%%Page: 12 12
+%%PageBoundingBox: 18 18 594 774
+%%BeginSetup
+%
+%%EndSetup
+%%BeginPageSetup
+%
+gsave
+[0.24 0 0 -0.24 18 774] concat
+gsave
+%%EndPageSetup
+/Times-Roman-iso1252 /Times-Roman ISO1252Encoding psp_definefont
+/Times-Italic-iso1252 /Times-Italic ISO1252Encoding psp_definefont
+%!PS-AdobeFont-1.0-2.0
+%%Creator: SunTypeTools-TT 1.0 gelf
+%%Title: OpenSymbolHSet1
+%%CreationDate:
+%%Pages: 0
+%%EndComments
+%%BeginResource: font OpenSymbolHSet1
+% Original font name: OpenSymbol
+30 dict begin
+/PaintType 0 def
+/FontType 3 def
+/StrokeWidth 0 def
+/FontName /OpenSymbolHSet1 def
+/XUID [103 0 0 16#8D049593 1 16#37A9EF96 16#52678846] def
+/FontMatrix [.001 0 0 .001 0 0] def
+/FontBBox [-179 -313 1083 917] def
+/Encoding 256 array def
+ 0 1 255 {Encoding exch /.notdef put} for
+ Encoding 149 /glyph0 put
+/CharProcs 2 dict def
+ CharProcs begin
+ /.notdef {} def
+ /glyph0 {
+ 356 0 36 223 297 483 setcachedevice
+ 169 223 moveto
+ 134 223 103 236 76 261 curveto
+ 50 286 36 317 36 353 curveto
+ 36 389 49 420 76 445 curveto
+ 102 470 133 483 169 483 curveto
+ 204 483 235 471 260 445 curveto
+ 285 420 297 389 297 353 curveto
+ 297 318 285 287 260 261 curveto
+ 236 236 206 223 169 223 curveto
+ closepath
+ fill
+ } bind def
+ end
+/BuildGlyph {
+ exch /CharProcs get exch
+ 2 copy known not
+ {pop /.notdef} if
+ get exec
+} bind def
+/BuildChar {
+ 1 index /Encoding get exch get
+ 1 index /BuildGlyph get exec
+} bind def
+currentdict end
+/OpenSymbolHSet1 exch definefont pop
+%%EndResource
+/Times-Bold-iso1252 /Times-Bold ISO1252Encoding psp_definefont
+220 258 moveto
+0 0 0 setrgbcolor
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<41766563>
+show
+319 258 moveto
+<6365>
+show
+367 258 moveto
+<74797065>
+show
+450 258 moveto
+<6427696E7374616C6C6174696F6E2C>
+show
+686 258 moveto
+<617563756E>
+show
+797 258 moveto
+<736372697074>
+show
+901 258 moveto
+/Times-Italic-iso1252 findfont 42 -42 matrix scale makefont setfont
+<636F6E666967757265>
+show
+1072 258 moveto
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<6E>
+show
+1093 258 moveto
+<27657374>
+show
+1157 258 moveto
+<657865637574E92C>
+show
+1306 258 moveto
+<646F6E63>
+show
+1399 258 moveto
+<617563756E>
+show
+1510 258 moveto
+<636F6E7472F46C65>
+show
+1659 258 moveto
+<6465>
+show
+1709 258 moveto
+<64E970656E64616E6365>
+show
+1917 258 moveto
+<737572>
+show
+1979 258 moveto
+<6C6573>
+show
+2037 258 moveto
+<6D6F64756C6573>
+show
+220 305 moveto
+<6F75206C6573207072E9726571756973206E276573742065666665637475E92E20432765737420
+E0206C277574696C6973617465757220646520732761737375726572206465206C61207072E97365
+6E636520646520746F7573206C657320E96CE96D656E7473207265717569732E>
+show
+220 446 moveto
+<52656D6172717565732067E96EE972616C657320737572206C27696E7374616C6C6174696F6E>
+show
+220 446 moveto
+<2020>
+[625 0]
+xshow
+220 450 635 2 rectfill
+856 446 moveto
+<203A>
+show
+856 446 moveto
+<2020>
+[11 0]
+xshow
+856 450 21 2 rectfill
+220 541 moveto
+<4C65>
+show
+276 541 moveto
+<736372697074>
+show
+382 541 moveto
+<6465>
+show
+434 541 moveto
+<636F6E66696775726174696F6E>
+show
+673 541 moveto
+<6427756E>
+show
+756 541 moveto
+<6D6F64756C65>
+show
+894 541 moveto
+<726563686572636865>
+show
+1069 541 moveto
+<64616E73>
+show
+1159 541 moveto
+<6C6573>
+show
+1218 541 moveto
+<72E9706572746F69726573>
+show
+1410 541 moveto
+<7374616E6461726473>
+show
+1581 541 moveto
+<6475>
+show
+1636 541 moveto
+<73797374E86D65>
+show
+1784 541 moveto
+<7369>
+show
+1824 541 moveto
+<6C6573>
+show
+1882 541 moveto
+<6D6F64756C6573>
+show
+2037 541 moveto
+<646F6E74>
+show
+2124 541 moveto
+<696C>
+show
+2160 541 moveto
+<61>
+show
+220 588 moveto
+<6265736F696E20736F6E7420696E7374616C6CE9732E>
+show
+220 635 moveto
+/OpenSymbolHSet1 findfont 38 -38 matrix scale makefont setfont
+<95>
+show
+279 635 moveto
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<5369>
+show
+331 635 moveto
+<756E>
+show
+392 635 moveto
+<6D6F64756C65>
+show
+535 635 moveto
+<657374>
+show
+599 635 moveto
+<696E7374616C6CE9>
+show
+739 635 moveto
+<64616E73>
+show
+834 635 moveto
+<756E>
+show
+893 635 moveto
+<72E9706572746F697265>
+show
+1075 635 moveto
+<6E6F6E>
+show
+1155 635 moveto
+<7374616E646172642C>
+show
+1326 635 moveto
+<6F75>
+show
+1385 635 moveto
+<7327696C>
+show
+1451 635 moveto
+<6E27657374>
+show
+1544 635 moveto
+<706173>
+show
+1617 635 moveto
+<696E7374616C6CE9>
+show
+1756 635 moveto
+<6D616973>
+show
+1854 635 moveto
+<7365756C656D656E74>
+show
+2042 635 moveto
+<636F6D70696CE9>
+show
+279 685 moveto
+<636F6D6D65>
+show
+419 685 moveto
+<6327657374>
+show
+508 685 moveto
+<736F7576656E74>
+show
+655 685 moveto
+<6C65>
+show
+702 685 moveto
+<636173>
+show
+772 685 moveto
+<656E>
+show
+828 685 moveto
+<7068617365>
+show
+940 685 moveto
+<6465>
+show
+998 685 moveto
+<64E976656C6F7070656D656E742C>
+show
+1281 685 moveto
+<616C6F7273>
+show
+1379 685 moveto
+<6C65>
+show
+1426 685 moveto
+<64E976656C6F7070657572>
+show
+1650 685 moveto
+<6465767261>
+show
+1760 685 moveto
+<706F736974696F6E6E6572>
+show
+1966 685 moveto
+<756E65>
+show
+2043 685 moveto
+<7661726961626C65>
+show
+279 732 moveto
+<6427656E7669726F6E6E656D656E74>
+show
+589 732 moveto
+<AB>
+show
+610 732 moveto
+<20>
+show
+620 732 moveto
+<3C4D4F44554C453E5F494E5354414C4C>
+show
+1042 732 moveto
+<20>
+show
+1052 732 moveto
+<BB>
+show
+1101 732 moveto
+<696E64697175616E74>
+show
+1289 732 moveto
+<726573706563746976656D656E74>
+show
+1573 732 moveto
+<6C65>
+show
+1632 732 moveto
+<72E9706572746F697265>
+show
+1825 732 moveto
+<6427696E7374616C6C6174696F6E>
+show
+2068 732 moveto
+<6F75>
+show
+2140 732 moveto
+<6465>
+show
+279 779 moveto
+<636F6D70696C6174696F6E2E>
+show
+507 779 moveto
+<4365747465>
+show
+613 779 moveto
+<7661726961626C65>
+show
+766 779 moveto
+<657374>
+show
+830 779 moveto
+<7072696F72697461697265>
+show
+1016 779 moveto
+<737572>
+show
+1084 779 moveto
+<6C6573>
+show
+1148 779 moveto
+<72E9706572746F69726573>
+show
+1345 779 moveto
+<7374616E6461726473>
+show
+1521 779 moveto
+<64616E73>
+show
+1615 779 moveto
+<6C276F72647265>
+show
+1741 779 moveto
+<6465>
+show
+1798 779 moveto
+<726563686572636865>
+show
+1979 779 moveto
+<646573>
+show
+2051 779 moveto
+<6669636869657273>
+show
+279 826 moveto
+<62696E6169726573206475206D6F64756C652E>
+show
+279 873 moveto
+<4E6F7573>
+show
+382 873 moveto
+<64E966696E6973736F6E73>
+show
+585 873 moveto
+<656E>
+show
+639 873 moveto
+<66616974>
+show
+710 873 moveto
+<74726F6973>
+show
+799 873 moveto
+<7661726961626C6573>
+show
+965 873 moveto
+<706172>
+show
+1033 873 moveto
+<6D6F64756C65>
+show
+1174 873 moveto
+<696E64697175616E74>
+show
+1347 873 moveto
+<6C6573>
+show
+1408 873 moveto
+<72E9706572746F69726573>
+show
+1602 873 moveto
+<636F6E74656E616E74>
+show
+1780 873 moveto
+<6C6573>
+show
+1841 873 moveto
+<736F75726365732C>
+show
+1992 873 moveto
+<6C6573>
+show
+2053 873 moveto
+<736F7572636573>
+show
+279 920 moveto
+<636F6D70696CE96573>
+show
+476 920 moveto
+<6574>
+show
+533 920 moveto
+<6C6573>
+show
+606 920 moveto
+<6669636869657273>
+show
+760 920 moveto
+<6427696E7374616C6C6174696F6E2E>
+show
+1013 920 moveto
+<44616E73>
+show
+1126 920 moveto
+<756E>
+show
+1194 920 moveto
+<736F75636973>
+show
+1327 920 moveto
+<6465>
+show
+1393 920 moveto
+<6E6F726D616C69736174696F6E2C>
+show
+1662 920 moveto
+<636573>
+show
+1742 920 moveto
+<7661726961626C6573>
+show
+1921 920 moveto
+<736F6E74>
+show
+2018 920 moveto
+<6E6F6D6DE96573>
+show
+279 967 moveto
+<726573706563746976656D656E74>
+show
+549 967 moveto
+<3A>
+show
+576 967 moveto
+<3C4D4F44554C453E5F5352432C>
+show
+930 967 moveto
+<3C4D4F44554C453E5F4255494C44>
+show
+1323 967 moveto
+<6574>
+show
+1368 967 moveto
+<3C4D4F44554C453E5F494E5354414C4C2E>
+show
+1818 967 moveto
+<506F7572>
+show
+1913 967 moveto
+<6C6573>
+show
+1975 967 moveto
+<6170706C69636174696F6E73>
+show
+279 1014 moveto
+<626173E96573>
+show
+413 1014 moveto
+<737572>
+show
+489 1014 moveto
+/Times-Italic-iso1252 findfont 42 -42 matrix scale makefont setfont
+<53616C6F6D65>
+show
+611 1014 moveto
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<2C>
+show
+647 1014 moveto
+<636573>
+show
+725 1014 moveto
+<7661726961626C6573>
+show
+901 1014 moveto
+<64657669656E6E656E74>
+show
+1110 1014 moveto
+<3C4D4F44554C453E5F4150504C495F5352432C>
+show
+1610 1014 moveto
+<3C4D4F44554C453E5F4150504C495F4255494C44>
+show
+2149 1014 moveto
+<6574>
+show
+279 1061 moveto
+<3C4D4F44554C453E5F4150504C495F494E5354414C4C2E>
+show
+220 1110 moveto
+/OpenSymbolHSet1 findfont 38 -38 matrix scale makefont setfont
+<95>
+show
+279 1110 moveto
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<5369>
+show
+329 1110 moveto
+<756E>
+show
+388 1110 moveto
+<6D6F64756C65>
+show
+529 1110 moveto
+<657374>
+show
+591 1110 moveto
+<696E7374616C6CE9>
+show
+728 1110 moveto
+<64616E73>
+show
+821 1110 moveto
+<756E>
+show
+879 1110 moveto
+<72E9706572746F697265>
+show
+1058 1110 moveto
+<7374616E646172642C>
+show
+1226 1110 moveto
+<6C276578697374656E6365>
+show
+1417 1110 moveto
+<6427756E>
+show
+1504 1110 moveto
+<736F75732D72E9706572746F697265>
+show
+1772 1110 moveto
+/Times-Bold-iso1252 findfont 42 -42 matrix scale makefont setfont
+<73616C6F6D652F>
+show
+1922 1110 moveto
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<617578>
+show
+1998 1110 moveto
+<72E9706572746F69726573>
+show
+279 1161 moveto
+/Times-Bold-iso1252 findfont 42 -42 matrix scale makefont setfont
+<62696E2F>
+show
+349 1161 moveto
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<2C>
+show
+370 1161 moveto
+/Times-Bold-iso1252 findfont 42 -42 matrix scale makefont setfont
+<696E636C7564652F>
+show
+513 1161 moveto
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<2C>
+show
+534 1161 moveto
+/Times-Bold-iso1252 findfont 42 -42 matrix scale makefont setfont
+<6C69622F>
+show
+602 1161 moveto
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<696D706C69717565>
+show
+762 1161 moveto
+<6465>
+show
+812 1161 moveto
+<72616A6F75746572>
+show
+954 1161 moveto
+<756E65>
+show
+1025 1161 moveto
+<61647265737365>
+show
+1159 1161 moveto
+<64616E73>
+show
+1247 1161 moveto
+<6C6573>
+show
+1304 1161 moveto
+<7661726961626C6573>
+show
+1466 1161 moveto
+<50415448>
+show
+1587 1161 moveto
+<6173736F6369E965732E>
+show
+1765 1161 moveto
+<43656369>
+show
+1852 1161 moveto
+<6E65>
+show
+1902 1161 moveto
+<6E6F7573>
+show
+1993 1161 moveto
+<73656D626C65>
+show
+2123 1161 moveto
+<706173>
+show
+279 1208 moveto
+<74726F70>
+show
+360 1208 moveto
+<67EA6E616E74>
+show
+485 1208 moveto
+<6475>
+show
+541 1208 moveto
+<66616974>
+show
+611 1208 moveto
+<6475>
+show
+667 1208 moveto
+<6E6F6D627265>
+show
+808 1208 moveto
+<6C696D6974E9>
+show
+920 1208 moveto
+<6465>
+show
+973 1208 moveto
+<6D6F64756C6573>
+show
+1129 1208 moveto
+<283C7E3130292E>
+show
+1269 1208 moveto
+<4365>
+show
+1330 1208 moveto
+<73797374E86D65>
+show
+1479 1208 moveto
+<7072E973656E7465>
+show
+1633 1208 moveto
+<656E>
+show
+1686 1208 moveto
+<636F6E747265706172746965>
+show
+1900 1208 moveto
+<6C6573>
+show
+1960 1208 moveto
+<6176616E7461676573>
+show
+2139 1208 moveto
+<6465>
+show
+279 1255 moveto
+<706F75766F697220696E7374616C6C65722065742064E973696E7374616C6C657220666163696C
+656D656E7420756E206D6F64756C65206574206427E9766974657220746F757420636F6E666C6974
+206465206E6F6D2E>
+show
+1175 2982 moveto
+/Times-Roman-iso1252 findfont 50 -50 matrix scale makefont setfont
+<3133>
+show
+221 2845 1959 1 rectfill
+221 2933 1959 1 rectfill
+showpage
+grestore grestore
+%%PageTrailer
+
+%%Page: 13 13
+%%PageBoundingBox: 18 18 594 774
+%%BeginSetup
+%
+%%EndSetup
+%%BeginPageSetup
+%
+gsave
+[0.24 0 0 -0.24 18 774] concat
+gsave
+%%EndPageSetup
+%!PS-AdobeFont-1.0-2.0
+%%Creator: SunTypeTools-TT 1.0 gelf
+%%Title: OpenSymbolHSet1
+%%CreationDate:
+%%Pages: 0
+%%EndComments
+%%BeginResource: font OpenSymbolHSet1
+% Original font name: OpenSymbol
+30 dict begin
+/PaintType 0 def
+/FontType 3 def
+/StrokeWidth 0 def
+/FontName /OpenSymbolHSet1 def
+/XUID [103 0 0 16#8D049593 1 16#37A9EF96 16#52678846] def
+/FontMatrix [.001 0 0 .001 0 0] def
+/FontBBox [-179 -313 1083 917] def
+/Encoding 256 array def
+ 0 1 255 {Encoding exch /.notdef put} for
+ Encoding 149 /glyph0 put
+/CharProcs 2 dict def
+ CharProcs begin
+ /.notdef {} def
+ /glyph0 {
+ 356 0 36 223 297 483 setcachedevice
+ 169 223 moveto
+ 134 223 103 236 76 261 curveto
+ 50 286 36 317 36 353 curveto
+ 36 389 49 420 76 445 curveto
+ 102 470 133 483 169 483 curveto
+ 204 483 235 471 260 445 curveto
+ 285 420 297 389 297 353 curveto
+ 297 318 285 287 260 261 curveto
+ 236 236 206 223 169 223 curveto
+ closepath
+ fill
+ } bind def
+ end
+/BuildGlyph {
+ exch /CharProcs get exch
+ 2 copy known not
+ {pop /.notdef} if
+ get exec
+} bind def
+/BuildChar {
+ 1 index /Encoding get exch get
+ 1 index /BuildGlyph get exec
+} bind def
+currentdict end
+/OpenSymbolHSet1 exch definefont pop
+%%EndResource
+/Helvetica-BoldOblique-iso1252 /Helvetica-BoldOblique ISO1252Encoding psp_definefont
+/Times-Roman-iso1252 /Times-Roman ISO1252Encoding psp_definefont
+/Times-Italic-iso1252 /Times-Italic ISO1252Encoding psp_definefont
+220 318 moveto
+0 0 0 setrgbcolor
+/OpenSymbolHSet1 findfont 38 -38 matrix scale makefont setfont
+<95>
+show
+279 318 moveto
+/Helvetica-BoldOblique-iso1252 findfont 50 -50 matrix scale makefont setfont
+<436F6E636C7573696F6E>
+show
+220 428 moveto
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<4E6F7573>
+show
+323 428 moveto
+<736F6D6D6573>
+show
+474 428 moveto
+<61637475656C6C656D656E74>
+show
+703 428 moveto
+<656E>
+show
+756 428 moveto
+<747261696E>
+show
+848 428 moveto
+<6465>
+show
+901 428 moveto
+<72E9616C69736572>
+show
+1039 428 moveto
+<756E65>
+show
+1114 428 moveto
+<E974756465>
+show
+1218 428 moveto
+<6465>
+show
+1273 428 moveto
+<666169736162696C6974E9>
+show
+1452 428 moveto
+<72656C6174697665>
+show
+1592 428 moveto
+<E0>
+show
+1624 428 moveto
+<6365747465>
+show
+1718 428 moveto
+<6F7267616E69736174696F6E>
+show
+1939 428 moveto
+<737572>
+show
+2005 428 moveto
+<6C61>
+show
+2049 428 moveto
+<62617365>
+show
+2138 428 moveto
+<6465>
+show
+220 475 moveto
+/Times-Italic-iso1252 findfont 42 -42 matrix scale makefont setfont
+<53616C6F6D655F50726F312E30>
+show
+480 475 moveto
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<2E>
+show
+502 475 moveto
+<4E6F7573>
+show
+601 475 moveto
+<61766F6E73>
+show
+710 475 moveto
+<72E975737369>
+show
+820 475 moveto
+<E0>
+show
+849 475 moveto
+<69736F6C6572>
+show
+954 475 moveto
+<6C65>
+show
+995 475 moveto
+<6D6F64756C65>
+show
+1132 475 moveto
+<4B45524E454C2C>
+show
+1320 475 moveto
+<63276573742DE02D64697265>
+show
+1515 475 moveto
+<E0>
+show
+1545 475 moveto
+<636F6E666967757265722C>
+show
+1742 475 moveto
+<636F6D70696C65722C>
+show
+1912 475 moveto
+<696E7374616C6C6572>
+show
+2059 475 moveto
+<6574>
+show
+2101 475 moveto
+<6661697265>
+show
+220 522 moveto
+<666F6E6374696F6E6E6572>
+show
+426 522 moveto
+<636F7272656374656D656E74>
+show
+656 522 moveto
+<6C65>
+show
+699 522 moveto
+<6D6F64756C65>
+show
+837 522 moveto
+<4B45524E454C>
+show
+1015 522 moveto
+<7365756C2E>
+show
+1104 522 moveto
+<4E6F7573>
+show
+1205 522 moveto
+<736F6D6D65>
+show
+1338 522 moveto
+<61637475656C6C656D656E74>
+show
+1565 522 moveto
+<64616E73>
+show
+1654 522 moveto
+<6C61>
+show
+1696 522 moveto
+<7365636F6E6465>
+show
+1844 522 moveto
+<7068617365>
+show
+1951 522 moveto
+<6465>
+show
+2003 522 moveto
+<6C27E974756465>
+show
+2125 522 moveto
+<717569>
+show
+220 569 moveto
+<636F6E7369737465>
+show
+368 569 moveto
+<E0>
+show
+399 569 moveto
+<6661697265>
+show
+489 569 moveto
+<6C65>
+show
+532 569 moveto
+<6DEA6D65>
+show
+648 569 moveto
+<7472617661696C>
+show
+768 569 moveto
+<706F7572>
+show
+857 569 moveto
+<6C65>
+show
+901 569 moveto
+<6D6F64756C65>
+show
+1040 569 moveto
+<4D45442C>
+show
+1156 569 moveto
+<6166696E>
+show
+1234 569 moveto
+<6465>
+show
+1287 569 moveto
+<6661697265>
+show
+1376 569 moveto
+<666F6E6374696F6E6E6572>
+show
+1582 569 moveto
+<656E73656D626C65>
+show
+1754 569 moveto
+<6C6573>
+show
+1814 569 moveto
+<6D6F64756C6573>
+show
+1968 569 moveto
+<4B45524E454C>
+show
+2148 569 moveto
+<6574>
+show
+220 616 moveto
+<4D45442E20556E652070726F636861696E65206D69736520E0206A6F757220646520636520646F
+63756D656E74207072E973656E74657261206C65732072E973756C74617473206F6274656E75732E>
+show
+220 663 moveto
+<556E65>
+show
+305 663 moveto
+<666F6973>
+show
+383 663 moveto
+<6C61>
+show
+429 663 moveto
+<67657374696F6E>
+show
+566 663 moveto
+<6465>
+show
+621 663 moveto
+<636F6E66696775726174696F6E>
+show
+863 663 moveto
+<6D697365>
+show
+958 663 moveto
+<656E>
+show
+1013 663 moveto
+<706C6163652C>
+show
+1128 663 moveto
+<6C6573>
+show
+1190 663 moveto
+<64696666E972656E746573>
+show
+1385 663 moveto
+<6261736573>
+show
+1491 663 moveto
+<435653>
+show
+1589 663 moveto
+<7365726F6E74>
+show
+1707 663 moveto
+<616C696D656E74E96573>
+show
+1902 663 moveto
+<61766563>
+show
+1994 663 moveto
+<6C61>
+show
+2040 663 moveto
+<6465726E69E87265>
+show
+220 710 moveto
+<76657273696F6E20646520>
+show
+404 710 moveto
+/Times-Italic-iso1252 findfont 42 -42 matrix scale makefont setfont
+<53616C6F6D655F50726F>
+show
+611 710 moveto
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<2E>
+show
+1175 2982 moveto
+/Times-Roman-iso1252 findfont 50 -50 matrix scale makefont setfont
+<3134>
+show
+221 2845 1959 1 rectfill
+221 2933 1959 1 rectfill
+showpage
+grestore grestore
+%%PageTrailer
+
+%%Page: 14 14
+%%PageBoundingBox: 18 18 594 774
+%%BeginSetup
+%
+%%EndSetup
+%%BeginPageSetup
+%
+gsave
+[0.24 0 0 -0.24 18 774] concat
+gsave
+%%EndPageSetup
+%!PS-AdobeFont-1.0-2.0
+%%Creator: SunTypeTools-TT 1.0 gelf
+%%Title: OpenSymbolHSet1
+%%CreationDate:
+%%Pages: 0
+%%EndComments
+%%BeginResource: font OpenSymbolHSet1
+% Original font name: OpenSymbol
+30 dict begin
+/PaintType 0 def
+/FontType 3 def
+/StrokeWidth 0 def
+/FontName /OpenSymbolHSet1 def
+/XUID [103 0 0 16#8D049593 1 16#37A9EF96 16#52678846] def
+/FontMatrix [.001 0 0 .001 0 0] def
+/FontBBox [-179 -313 1083 917] def
+/Encoding 256 array def
+ 0 1 255 {Encoding exch /.notdef put} for
+ Encoding 149 /glyph0 put
+/CharProcs 2 dict def
+ CharProcs begin
+ /.notdef {} def
+ /glyph0 {
+ 356 0 36 223 297 483 setcachedevice
+ 169 223 moveto
+ 134 223 103 236 76 261 curveto
+ 50 286 36 317 36 353 curveto
+ 36 389 49 420 76 445 curveto
+ 102 470 133 483 169 483 curveto
+ 204 483 235 471 260 445 curveto
+ 285 420 297 389 297 353 curveto
+ 297 318 285 287 260 261 curveto
+ 236 236 206 223 169 223 curveto
+ closepath
+ fill
+ } bind def
+ end
+/BuildGlyph {
+ exch /CharProcs get exch
+ 2 copy known not
+ {pop /.notdef} if
+ get exec
+} bind def
+/BuildChar {
+ 1 index /Encoding get exch get
+ 1 index /BuildGlyph get exec
+} bind def
+currentdict end
+/OpenSymbolHSet1 exch definefont pop
+%%EndResource
+/Helvetica-BoldOblique-iso1252 /Helvetica-BoldOblique ISO1252Encoding psp_definefont
+/Times-Roman-iso1252 /Times-Roman ISO1252Encoding psp_definefont
+220 318 moveto
+0 0 0 setrgbcolor
+/OpenSymbolHSet1 findfont 38 -38 matrix scale makefont setfont
+<95>
+show
+279 318 moveto
+/Helvetica-BoldOblique-iso1252 findfont 50 -50 matrix scale makefont setfont
+<52E966E972656E636573>
+show
+220 475 moveto
+/Times-Roman-iso1252 findfont 42 -42 matrix scale makefont setfont
+<5B315D2053414C4F4D45204F7267616E69736174696F6E2065742072E8676C6573206465207072
+6F64756374696F6E202C20502E20476F6C6462726F6E6E2C20502E20526173636C65732C20592E20
+46726963617564206475203133206A75696E20323030312E>
+show
+1175 2982 moveto
+/Times-Roman-iso1252 findfont 50 -50 matrix scale makefont setfont
+<3135>
+show
+221 2845 1959 1 rectfill
+221 2933 1959 1 rectfill
+showpage
+grestore grestore
+%%PageTrailer
+
+%%Trailer
+%%Pages: 15
+%%EOF
--- /dev/null
+%!PS-Adobe-3.0
+%%Title: Microsoft Word - Utilitaires_SALOME.doc
+%%Creator: Windows NT 4.0
+%%CreationDate: 9:3 9/19/2001
+%%Pages: (atend)
+%%BoundingBox: 13 13 582 829
+%%LanguageLevel: 2
+%%DocumentNeededFonts: (atend)
+%%DocumentSuppliedFonts: (atend)
+%%EndComments
+%%BeginProlog
+
+%%BeginResource: procset NTPSOct95
+/NTPSOct95 100 dict dup begin/bd{bind def}bind def/ld{load def}bd/ed{exch def}
+bd/a{currentpoint}bd/c/curveto ld/d/dup ld/e/eofill ld/f/fill ld/tr/translate
+ld/gr/grestore ld/gs/gsave ld/j/setlinejoin ld/L/lineto ld/M/moveto ld/n
+/newpath ld/cp/closepath ld/rm/rmoveto ld/sl/setlinewidth ld/sd/setdash ld/g
+/setgray ld/r/setrgbcolor ld/s/stroke ld/t/show ld/aw/awidthshow ld/im
+/imagemask ld/MS{moveto show}bd/SF{findfont exch scalefont setfont}bd/SM{cmtx
+setmatrix}bd/MF{findfont exch makefont setfont}bd/CM{/cmtx matrix currentmatrix
+def}bd/B{M exch dup 0 rlt exch 0 exch rlt neg 0 rlt}bd/CB{B cp eoclip}bd/EA{1
+index 0/G0 put 4 string 1 1 4 -1 roll{3 copy neg exch cvs dup 0 71 put cvn 3 -1
+roll exch put}for pop}bd/rlt/rlineto ld/L2?/languagelevel where{pop
+languagelevel 2 ge}{false}ifelse def end def
+%%EndResource
+%%EndProlog
+%%BeginSetup
+[{0
+/languagelevel where{pop languagelevel 2 ge}{false}ifelse
+{1 dict dup/JobTimeout 4 -1 roll put setuserparams}
+{statusdict/setjobtimeout get exec}ifelse
+}stopped cleartomark
+[{120
+/languagelevel where{pop languagelevel 2 ge}{false}ifelse
+{1 dict dup/WaitTimeout 4 -1 roll put setuserparams}
+{statusdict/waittimeout 3 -1 roll put}ifelse
+}stopped cleartomark
+/#copies 1 def
+[{
+%%BeginFeature: *HPPaperPolicy PromptUser
+
+ <</DeferredMediaSelection true>> setpagedevice
+%%EndFeature
+} stopped cleartomark
+[{
+%%BeginFeature: *HPHalftone PrinterDefault
+
+%%EndFeature
+} stopped cleartomark
+[{
+%%BeginFeature: *HPCollate False
+<</Collate false>> setpagedevice
+%%EndFeature
+} stopped cleartomark
+[{
+%%BeginFeature: *Smoothing True
+
+ << /PostRenderingEnhance true /PostRenderingEnhanceDetails << /REValue 2 /Type 8 >>
+ >> setpagedevice
+%%EndFeature
+} stopped cleartomark
+[{
+%%BeginFeature: *PageSize A4
+
+ <</PageSize [595 842] /ImagingBBox null>> setpagedevice
+%%EndFeature
+} stopped cleartomark
+[{
+%%BeginFeature: *Duplex None
+
+ <</Duplex false>> setpagedevice
+%%EndFeature
+} stopped cleartomark
+[{
+%%BeginFeature: *HPwmTextAngle Deg45
+userdict /HPwmAngle 45 put
+%%EndFeature
+} stopped cleartomark
+[{
+%%BeginFeature: *HPwmText None
+
+%%EndFeature
+} stopped cleartomark
+[{
+%%BeginFeature: *HPwmFont HelveticaB
+
+ /Helvetica-Bold findfont dup length dict begin
+ {1 index /FID ne {def} {pop pop} ifelse} forall
+ /Encoding ISOLatin1Encoding def currentdict
+ end
+ /HPwmFont exch definefont pop
+%%EndFeature
+} stopped cleartomark
+[{
+%%BeginFeature: *HPwmLocation True
+userdict /HPwmLocation true put
+%%EndFeature
+} stopped cleartomark
+[{
+%%BeginFeature: *HPwmTextStyle Medium
+userdict /HPwmStyle .48 put
+%%EndFeature
+} stopped cleartomark
+[{
+%%BeginFeature: *HPwmFontSize pt48
+userdict /HPwmSize 48 put
+%%EndFeature
+} stopped cleartomark
+[{
+%%BeginFeature: *HPNup OneUp
+
+% Copyright (c) Hewlett-Packard Co 1997
+ userdict begin
+ true setglobal /HPwm 5 dict dup begin /HPwmOn true def /HPwmOdd true def end def false setglobal
+
+ userdict /HPwmAngle known not {/HPwmAngle 45 def} if
+ userdict /HPwmSize known not {/HPwmSize 48 def} if
+ userdict /HPwmLocation known not {/HPwmLocation true def} if
+ userdict /HPwmStyle known not {/HPwmStyle .48 def} if
+ userdict /HPwmDuplex known not {/HPwmDuplex 0 def} if
+
+ /HPwmEOP {HPwmDuplex 0 eq {true}{HPwmDuplex 1 eq HPwmOdd eq dup not {erasepage}if
+ true setglobal /HPwmOdd HPwmOdd not def false setglobal}ifelse} bind def
+ end
+
+ <<
+ /EndPage {userdict begin
+ userdict /HPwmText known HPwm /HPwmOn get and
+ {initmatrix
+ 0 setgray 1 setlinewidth true setstrokeadjust 0 setlinejoin 0 setlinecap [] 0 setdash
+ currentpagedevice /PageSize get aload pop 2 div exch 2 div exch translate
+ HPwmAngle rotate /HPwmFont userdict /HPppScale known {HPwmSize HPppScale mul}{HPwmSize}ifelse selectfont
+ HPwmText stringwidth 2 div neg exch 2 div neg exch
+ userdict /HPppScale known {HPwmSize HPppScale mul}{HPwmSize}ifelse .25 mul sub moveto
+ HPwmText false charpath userdict /HPwmStyle1 known
+ {gsave 1 setgray HPwmStyle1 HPwmStyle add setlinewidth stroke grestore} if
+ 0 setgray HPwmStyle setlinewidth stroke
+ HPwmLocation not {true setglobal HPwm /HPwmOn false put false setglobal} if
+ } if
+ 2 eq {pop false}{pop HPwm begin HPwmEOP end} ifelse
+ end } bind
+ >> setpagedevice
+%%EndFeature
+} stopped cleartomark
+[{
+%%BeginFeature: *HPScalePatterns Scale
+/GDIBWPatternDict 18 dict def
+/dtransform {GDIBWPatternDict /Width known {currentpagedevice /HWResolution get 0 get
+150 div mul exch currentpagedevice /HWResolution get 0 get 150 div mul exch dtransform}{dtransform}ifelse} bind def
+%%EndFeature
+} stopped cleartomark
+[{
+%%BeginFeature: *OptionTrays 3Trays
+
+%%EndFeature
+} stopped cleartomark
+[{
+%%BeginFeature: *Option3 True
+
+%%EndFeature
+} stopped cleartomark
+[{
+%%BeginFeature: *Option4 False
+
+%%EndFeature
+} stopped cleartomark
+[{
+%%BeginFeature: *Option5 False
+
+%%EndFeature
+} stopped cleartomark
+[{
+%%BeginFeature: *VMOption 36MB
+
+%%EndFeature
+} stopped cleartomark
+%%EndSetup
+NTPSOct95 begin
+%%Page: 1 1
+NTPSOct95 /PageSV save put
+13 829.441 translate 72 600 div dup neg scale
+0 0 transform .25 add round .25 sub exch .25 add round .25 sub exch itransform translate
+%%IncludeFont: Times-Roman
+[183 0 0 -183 0 0]/Times-Roman MF
+(U)1606 656 MS (t)1738 656 MS (i)1789 656 MS (l)1840 656 MS (i)1891 656 MS (t)1942 656 MS (a)1993 656 MS (i)2074 656 MS (r)2125 656 MS (e)2186 656 MS (s)2267 656 MS ( )2338 656 MS (S)2384 656 MS (A)2486 656 MS (L)2618 656 MS (O)2730 656 MS
+(M)2862 656 MS (E)3025 656 MS
+n
+1530 8 1606 676 B
+f
+( )3137 656 MS
+[100 0 0 -100 0 0]/Times-Roman MF
+( )482 788 MS
+( )482 903 MS
+NTPSOct95 /FontSV save put
+%%BeginFont: Wingdings0133113
+%!FontType1-1.0: Wingdings0133113
+% Copyright (c) 1993 Microsoft Corporation.
+11 dict begin
+/FontInfo 8 dict dup begin
+/FullName (Wingdings_Regular:_MS:_1995) def
+/FamilyName (Wingdings) def
+/Weight (Light) def
+/ItalicAngle 0 def
+/isFixedPitch false def
+/UnderlinePosition -200 def
+/UnderlineThickness 100 def
+end def
+/FontName /Wingdings0133113 def
+/PaintType 0 def
+/FontType 1 def
+/FontMatrix [1 2048 div 0 0 1 2048 div 0 0] def
+/FontBBox{0 -432 2773 1832}def
+/Encoding 256 array 254 EA
+255 1 255 {1 index exch /.notdef put} for
+def currentdict end
+currentfile eexec
+9E67EDC6F3DDB54288D663369F8878B525F6C387D4C0BF9F428EB9407E51E952128195F343ED526D7EF485FEA7E5D287ED91A53373FD7FB6F77C800240920C3915217EB1FFBBD9A01126C5DE89A01A5A5A7C3B1B8F84C73E205DDD6B095B6E885FECC5DB82DAC5C2A208C547C904809D986B5CFD61018D13F762FB208AC07A7BE8BBA5C8937B7CCEDCDDEE63FE4F0C5A38F8CE79BCFF22B0238E63ACB3E274F3440F3DB6B2A2962829B7C24596C94F8A15FCE5891A8CBFEF0193FA37E805DF15716B43A04388ABBFC43F716528867D8C479524DE1E58EC93444E1A51EA17DFD8E5A06387CA763141BB50D6291576AC5892A1EC26065096EA78EC35265C417091C3A03958937014E2051CD1392E12342DEE8D9F57999F32260CBE079B422AFCACB402AFACACD2F43E692EFF6AEC6CCE413993882EC9F1B80384B90D254B60D82AA5C539835DED9FBB13FAEE330523C298EF700AFB8C003613F685F869F6C6F78415B2B0ECAA347BB358558C811171701A64FED28456AD947D4AA1D5CCDA72
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+cleartomark
+%%EndFont
+[133 0 0 -133 0 0]/Wingdings0133113 MF
+(\275)632 1151 MS
+%%BeginFont: Wingdings0133113
+currentfile eexec
+9E67EDC6B8425AFF36BF4514D54B43BD3052C5864D8FE9488C0032ACA58315791A848ACA4E893C7524EFCAFAF1043561D52C1E47FEA5D8E71ED82F7390F4D46E5C54C6C0
+BBE982CB5E67D60CB8E221B3F095AFF56343FE0F765112B93D94BB94A994E894EB6472724960F9E0BEAB21A47E2C6BE1CFDC07749909D0795F86F6DA4D983D69B00D1D47D48DA037
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+cleartomark
+%%EndFont
+( )738 1151 MS
+%%IncludeFont: Helvetica-Bold
+[133 0 0 -133 0 0]/Helvetica-Bold MF
+(s)782 1151 MS (h)856 1151 MS (o)937 1151 MS (w)1018 1151 MS (N)1125 1151 MS (S)1221 1151 MS
+( )1310 1151 MS
+[100 0 0 -100 0 0]/Times-Roman MF
+( )482 1297 MS
+/IsChar{exch/CharStrings get exch known}bd/MapCh{3 -1 roll/Encoding get 3 1
+roll put}bd/MapDegree{dup 16#b0 exch/degree IsChar{/degree}{/ring}ifelse MapCh}
+bd/MapBB{dup 16#a6 exch/brokenbar IsChar{/brokenbar}{/bar}ifelse MapCh}bd
+/reencode{findfont begin currentdict dup length dict begin{1 index/FID ne{def}
+{pop pop}ifelse}forall/FontName exch def dup length 0 ne{/Encoding Encoding 256
+array copy def 0 exch{dup type/nametype eq{Encoding 2 index 2 index put pop 1
+add}{exch pop}ifelse}forall}if pop currentdict dup end end/FontName get exch
+definefont dup MapDegree MapBB}bd/LATENC[0/grave/acute/circumflex/tilde/macron
+/breve/dotaccent/dieresis/ring/cedilla/hungarumlaut/ogonek/caron/dotlessi/fi/fl
+/Lslash/lslash/Zcaron/zcaron/minus/.notdef/.notdef/.notdef/.notdef/.notdef
+/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/space/exclam/quotedbl
+/numbersign/dollar/percent/ampersand/quotesingle/parenleft/parenright/asterisk
+/plus/comma/hyphen/period/slash/zero/one/two/three/four/five/six/seven/eight
+/nine/colon/semicolon/less/equal/greater/question/at/A/B/C/D/E/F/G/H/I/J/K/L/M
+/N/O/P/Q/R/S/T/U/V/W/X/Y/Z/bracketleft/backslash/bracketright/asciicircum
+/underscore/grave/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o/p/q/r/s/t/u/v/w/x/y/z/braceleft
+/bar/braceright/asciitilde/.notdef/.notdef/.notdef/quotesinglbase/florin
+/quotedblbase/ellipsis/dagger/daggerdbl/circumflex/perthousand/Scaron
+/guilsinglleft/OE/.notdef/.notdef/.notdef/.notdef/quoteleft/quoteright
+/quotedblleft/quotedblright/bullet/endash/emdash/tilde/trademark/scaron
+/guilsinglright/oe/.notdef/.notdef/Ydieresis/.notdef/exclamdown/cent/sterling
+/currency/yen/brokenbar/section/dieresis/copyright/ordfeminine/guillemotleft
+/logicalnot/hyphen/registered/macron/degree/plusminus/twosuperior/threesuperior
+/acute/mu/paragraph/periodcentered/cedilla/onesuperior/ordmasculine
+/guillemotright/onequarter/onehalf/threequarters/questiondown/Agrave/Aacute
+/Acircumflex/Atilde/Adieresis/Aring/AE/Ccedilla/Egrave/Eacute/Ecircumflex
+/Edieresis/Igrave/Iacute/Icircumflex/Idieresis/Eth/Ntilde/Ograve/Oacute
+/Ocircumflex/Otilde/Odieresis/multiply/Oslash/Ugrave/Uacute/Ucircumflex
+/Udieresis/Yacute/Thorn/germandbls/agrave/aacute/acircumflex/atilde/adieresis
+/aring/ae/ccedilla/egrave/eacute/ecircumflex/edieresis/igrave/iacute
+/icircumflex/idieresis/eth/ntilde/ograve/oacute/ocircumflex/otilde/odieresis
+/divide/oslash/ugrave/uacute/ucircumflex/udieresis/yacute/thorn/ydieresis]def
+LATENC /_Times-Roman /Times-Roman reencode
+[100 0 0 -100 0 0]/_Times-Roman MF
+(C)482 1412 MS (e)549 1412 MS (t)593 1412 MS ( )621 1412 MS (u)646 1412 MS (t)696 1412 MS (i)724 1412 MS (l)752 1412 MS (i)780 1412 MS (t)808 1412 MS (a)836 1412 MS (i)880 1412 MS (r)908 1412 MS (e)941 1412 MS ( )985 1412 MS (p)1010 1412 MS
+(e)1060 1412 MS (r)1104 1412 MS (m)1137 1412 MS (e)1215 1412 MS (t)1259 1412 MS ( )1287 1412 MS (d)1312 1412 MS (\222)1362 1412 MS (e)1395 1412 MS (x)1439 1412 MS (a)1490 1412 MS (m)1534 1412 MS (i)1612 1412 MS (n)1640 1412 MS (e)1690 1412 MS (r)1734 1412 MS
+( )1767 1412 MS (l)1792 1412 MS (e)1820 1412 MS ( )1864 1412 MS (c)1889 1412 MS (o)1933 1412 MS (n)1983 1412 MS (t)2033 1412 MS (e)2061 1412 MS (n)2105 1412 MS (u)2155 1412 MS ( )2205 1412 MS (d)2230 1412 MS (u)2280 1412 MS ( )2330 1412 MS (N)2355 1412 MS
+(a)2427 1412 MS (m)2471 1412 MS (i)2549 1412 MS (n)2577 1412 MS (g)2627 1412 MS ( )2676 1412 MS (S)2701 1412 MS (e)2757 1412 MS (r)2801 1412 MS (v)2834 1412 MS (i)2884 1412 MS (c)2912 1412 MS (e)2956 1412 MS (.)3000 1412 MS
+( )3025 1412 MS
+(L)482 1527 MS (a)541 1527 MS (n)585 1527 MS (c)635 1527 MS (e)679 1527 MS (r)723 1527 MS ( )756 1527 MS (l)781 1527 MS (\222)809 1527 MS (u)842 1527 MS (t)892 1527 MS (i)920 1527 MS (l)948 1527 MS (i)976 1527 MS (t)1004 1527 MS (a)1032 1527 MS
+(i)1076 1527 MS (r)1104 1527 MS (e)1137 1527 MS
+( )1181 1527 MS
+(.)1206 1527 MS
+( )1231 1527 MS
+(L)482 1642 MS (\222)541 1642 MS (e)574 1642 MS (x)618 1642 MS (e)669 1642 MS (m)713 1642 MS (p)791 1642 MS (l)841 1642 MS (e)869 1642 MS ( )913 1642 MS (s)948 1642 MS (u)987 1642 MS (i)1037 1642 MS (v)1065 1642 MS (a)1115 1642 MS (n)1159 1642 MS
+(t)1209 1642 MS ( )1237 1642 MS (d)1271 1642 MS (o)1321 1642 MS (n)1371 1642 MS (n)1421 1642 MS (e)1471 1642 MS ( )1515 1642 MS (l)1549 1642 MS (e)1577 1642 MS ( )1621 1642 MS (r)1655 1642 MS (\351)1688 1642 MS (s)1732 1642 MS (u)1771 1642 MS (l)1821 1642 MS
+(t)1849 1642 MS (a)1877 1642 MS (t)1921 1642 MS ( )1949 1642 MS (d)1983 1642 MS (e)2033 1642 MS ( )2077 1642 MS (l)2111 1642 MS (a)2139 1642 MS ( )2183 1642 MS (c)2217 1642 MS (o)2261 1642 MS (m)2311 1642 MS (m)2389 1642 MS (a)2467 1642 MS (n)2511 1642 MS
+(d)2561 1642 MS (e)2611 1642 MS ( )2655 1642 MS (s)2689 1642 MS (h)2728 1642 MS (o)2778 1642 MS (w)2828 1642 MS (N)2900 1642 MS (S)2972 1642 MS ( )3028 1642 MS (u)3062 1642 MS (n)3112 1642 MS (e)3162 1642 MS ( )3206 1642 MS (f)3240 1642 MS (o)3273 1642 MS
+(i)3323 1642 MS (s)3351 1642 MS ( )3390 1642 MS (l)3424 1642 MS (a)3452 1642 MS ( )3496 1642 MS (s)3530 1642 MS (e)3569 1642 MS (s)3613 1642 MS (s)3652 1642 MS (i)3691 1642 MS (o)3719 1642 MS (n)3769 1642 MS ( )3819 1642 MS (S)3853 1642 MS (A)3909 1642 MS
+(L)3981 1642 MS (O)4040 1642 MS (M)4112 1642 MS (E)4201 1642 MS ( )4262 1642 MS
+(l)482 1756 MS (a)510 1756 MS (n)554 1756 MS (c)604 1756 MS (\351)648 1756 MS (e)692 1756 MS ( )736 1756 MS (\()761 1756 MS (r)794 1756 MS (u)827 1756 MS (n)877 1756 MS (S)927 1756 MS (e)983 1756 MS (s)1027 1756 MS (s)1066 1756 MS (i)1105 1756 MS
+(o)1133 1756 MS (n)1183 1756 MS (,)1233 1756 MS ( )1258 1756 MS (r)1283 1756 MS (u)1316 1756 MS (n)1366 1756 MS (L)1416 1756 MS (o)1475 1756 MS (a)1525 1756 MS (d)1569 1756 MS (e)1619 1756 MS (r)1663 1756 MS (\))1696 1756 MS ( )1729 1756 MS (e)1754 1756 MS
+(t)1798 1756 MS ( )1826 1756 MS (l)1851 1756 MS (\222)1879 1756 MS (\351)1912 1756 MS (t)1956 1756 MS (u)1984 1756 MS (d)2034 1756 MS (e)2084 1756 MS ( )2128 1756 MS (S)2153 1756 MS (t)2209 1756 MS (u)2237 1756 MS (d)2287 1756 MS (y)2337 1756 MS (1)2384 1756 MS
+( )2434 1756 MS (c)2459 1756 MS (r)2503 1756 MS (\351)2536 1756 MS (\351)2580 1756 MS (e)2624 1756 MS ( )2668 1756 MS (:)2693 1756 MS
+( )2721 1756 MS
+%%IncludeFont: Helvetica
+[83 0 0 -83 0 0]/Helvetica MF
+(s)482 1858 MS (h)524 1858 MS (>)570 1858 MS ( )618 1858 MS (c)641 1858 MS (d)683 1858 MS ( )729 1858 MS (S)752 1858 MS (A)807 1858 MS (L)862 1858 MS (O)908 1858 MS (M)973 1858 MS (E)1042 1858 MS (_)1097 1858 MS (B)1143 1858 MS (U)1198 1858 MS
+(I)1258 1858 MS (L)1281 1858 MS (D)1327 1858 MS (/)1387 1858 MS (b)1410 1858 MS (i)1456 1858 MS (n)1474 1858 MS
+( )1520 1858 MS
+( )482 1954 MS
+(s)482 2050 MS (h)524 2050 MS (>)570 2050 MS ( )618 2050 MS (s)641 2050 MS (h)683 2050 MS (o)729 2050 MS (w)775 2050 MS (N)834 2050 MS (S)894 2050 MS
+( )949 2050 MS
+(s)482 2146 MS (h)524 2146 MS (>)570 2146 MS ( )618 2146 MS
+( )641 2146 MS
+(C)777 2146 MS (o)837 2146 MS (n)883 2146 MS (t)929 2146 MS (a)952 2146 MS (i)998 2146 MS (n)1016 2146 MS (e)1062 2146 MS (r)1108 2146 MS (s)1136 2146 MS ( )1178 2146 MS (\()1201 2146 MS (d)1229 2146 MS (i)1275 2146 MS (r)1293 2146 MS (\))1321 2146 MS
+( )1349 2146 MS
+(s)482 2242 MS (h)524 2242 MS (>)570 2242 MS ( )618 2242 MS ( )641 2242 MS
+( )664 2242 MS
+( )777 2242 MS
+(F)1072 2242 MS (a)1123 2242 MS (c)1169 2242 MS (t)1211 2242 MS (o)1234 2242 MS (r)1280 2242 MS (y)1308 2242 MS (S)1347 2242 MS (e)1402 2242 MS (r)1448 2242 MS (v)1476 2242 MS (e)1517 2242 MS (r)1563 2242 MS (.)1591 2242 MS (o)1614 2242 MS (b)1660 2242 MS
+(j)1706 2242 MS (e)1725 2242 MS (c)1771 2242 MS (t)1813 2242 MS
+( )1836 2242 MS
+(s)482 2338 MS (h)524 2338 MS (>)570 2338 MS
+( )618 2338 MS
+(K)777 2338 MS (e)832 2338 MS (r)878 2338 MS (n)906 2338 MS (e)952 2338 MS (l)998 2338 MS ( )1016 2338 MS (\()1039 2338 MS (d)1067 2338 MS (i)1113 2338 MS (r)1131 2338 MS (\))1159 2338 MS
+( )1187 2338 MS
+(s)482 2433 MS (h)524 2433 MS (>)570 2433 MS
+( )618 2433 MS
+( )777 2433 MS ( )800 2433 MS ( )823 2433 MS
+( )846 2433 MS
+(M)1072 2433 MS (o)1141 2433 MS (d)1187 2433 MS (u)1233 2433 MS (l)1279 2433 MS (C)1297 2433 MS (a)1357 2433 MS (t)1403 2433 MS (a)1426 2433 MS (l)1472 2433 MS (o)1490 2433 MS (g)1536 2433 MS (.)1582 2433 MS (o)1605 2433 MS (b)1651 2433 MS (j)1697 2433 MS
+(e)1716 2433 MS (c)1762 2433 MS (t)1804 2433 MS
+( )1827 2433 MS
+(s)482 2529 MS (h)524 2529 MS (>)570 2529 MS ( )618 2529 MS ( )641 2529 MS ( )664 2529 MS
+( )687 2529 MS
+( )777 2529 MS
+(S)1072 2529 MS (e)1127 2529 MS (s)1173 2529 MS (s)1215 2529 MS (i)1257 2529 MS (o)1275 2529 MS (n)1321 2529 MS (.)1367 2529 MS (o)1390 2529 MS (b)1436 2529 MS (j)1482 2529 MS (e)1501 2529 MS (c)1547 2529 MS (t)1589 2529 MS
+( )1612 2529 MS
+(s)482 2625 MS (h)524 2625 MS (>)570 2625 MS
+( )618 2625 MS
+(S)777 2625 MS (t)832 2625 MS (u)855 2625 MS (d)901 2625 MS (y)947 2625 MS ( )986 2625 MS (\()1009 2625 MS (d)1037 2625 MS (i)1083 2625 MS (r)1101 2625 MS (\))1129 2625 MS
+( )1157 2625 MS
+(s)482 2721 MS (h)524 2721 MS (>)570 2721 MS
+( )618 2721 MS
+( )777 2721 MS ( )800 2721 MS ( )823 2721 MS
+( )846 2721 MS
+(S)1072 2721 MS (t)1127 2721 MS (u)1150 2721 MS (d)1196 2721 MS (y)1242 2721 MS (1)1281 2721 MS (.)1327 2721 MS (o)1350 2721 MS (b)1396 2721 MS (j)1442 2721 MS (e)1461 2721 MS (c)1507 2721 MS (t)1549 2721 MS
+( )1572 2721 MS
+(s)482 2817 MS (h)524 2817 MS (>)570 2817 MS ( )618 2817 MS ( )641 2817 MS ( )664 2817 MS
+( )687 2817 MS
+(m)777 2817 MS (y)848 2817 MS (S)887 2817 MS (t)942 2817 MS (u)965 2817 MS (d)1011 2817 MS (y)1057 2817 MS (M)1096 2817 MS (a)1165 2817 MS (n)1211 2817 MS (a)1257 2817 MS (g)1303 2817 MS (e)1349 2817 MS (r)1395 2817 MS (.)1423 2817 MS (o)1446 2817 MS
+(b)1492 2817 MS (j)1538 2817 MS (e)1557 2817 MS (c)1603 2817 MS (t)1645 2817 MS
+( )1668 2817 MS
+( )482 2913 MS
+( )482 3008 MS
+[100 0 0 -100 0 0]/_Times-Roman MF
+(L)482 3117 MS (\222)541 3117 MS (i)574 3117 MS (n)602 3117 MS (f)652 3117 MS (o)685 3117 MS (r)735 3117 MS (m)768 3117 MS (a)846 3117 MS (t)890 3117 MS (i)918 3117 MS (o)946 3117 MS (n)996 3117 MS ( )1046 3117 MS (\253)1071 3117 MS
+( )1117 3117 MS
+(\()1142 3117 MS (d)1175 3117 MS (i)1225 3117 MS (r)1253 3117 MS (\))1286 3117 MS
+( )1319 3117 MS
+(\273)1344 3117 MS ( )1390 3117 MS (i)1415 3117 MS (n)1443 3117 MS (d)1493 3117 MS (i)1543 3117 MS (q)1571 3117 MS (u)1621 3117 MS (e)1671 3117 MS ( )1715 3117 MS (q)1740 3117 MS
+(u)1790 3117 MS (\222)1840 3117 MS (i)1873 3117 MS (l)1901 3117 MS ( )1929 3117 MS (s)1954 3117 MS (\222)1993 3117 MS (a)2026 3117 MS (g)2070 3117 MS (i)2119 3117 MS (t)2147 3117 MS ( )2175 3117 MS (d)2200 3117 MS (\222)2250 3117 MS (u)2283 3117 MS (n)2333 3117 MS
+( )2383 3117 MS (r)2408 3117 MS (\351)2441 3117 MS (p)2485 3117 MS (e)2535 3117 MS (r)2579 3117 MS (t)2612 3117 MS (o)2640 3117 MS (i)2690 3117 MS (r)2718 3117 MS (e)2751 3117 MS ( )2795 3117 MS (d)2820 3117 MS (u)2870 3117 MS ( )2920 3117 MS (n)2945 3117 MS
+(a)2995 3117 MS (m)3039 3117 MS (i)3117 3117 MS (n)3145 3117 MS (g)3195 3117 MS ( )3244 3117 MS (s)3269 3117 MS (e)3308 3117 MS (r)3352 3117 MS (v)3385 3117 MS (i)3435 3117 MS (c)3463 3117 MS (e)3507 3117 MS (.)3551 3117 MS
+( )3576 3117 MS
+(L)482 3232 MS (\222)541 3232 MS (i)574 3232 MS (n)602 3232 MS (f)652 3232 MS (o)685 3232 MS (r)735 3232 MS (m)768 3232 MS (a)846 3232 MS (t)890 3232 MS (i)918 3232 MS (o)946 3232 MS (n)996 3232 MS ( )1046 3232 MS (\253)1071 3232 MS
+( )1117 3232 MS
+(.)1142 3232 MS (o)1167 3232 MS (b)1217 3232 MS (j)1267 3232 MS (e)1295 3232 MS (c)1339 3232 MS (t)1383 3232 MS
+( )1411 3232 MS
+(\273)1436 3232 MS ( )1482 3232 MS (i)1507 3232 MS (n)1535 3232 MS (d)1585 3232 MS (i)1635 3232 MS (q)1663 3232 MS (u)1713 3232 MS (e)1763 3232 MS ( )1807 3232 MS (q)1832 3232 MS (u)1882 3232 MS (\222)1932 3232 MS (i)1965 3232 MS (l)1993 3232 MS ( )2021 3232 MS
+(s)2046 3232 MS (\222)2085 3232 MS (a)2118 3232 MS (g)2162 3232 MS (i)2211 3232 MS (t)2239 3232 MS ( )2267 3232 MS (d)2292 3232 MS (\222)2342 3232 MS (u)2375 3232 MS (n)2425 3232 MS ( )2475 3232 MS (o)2500 3232 MS (b)2550 3232 MS (j)2600 3232 MS (e)2628 3232 MS
+(t)2672 3232 MS ( )2700 3232 MS (e)2725 3232 MS (n)2769 3232 MS (r)2819 3232 MS (e)2852 3232 MS (g)2896 3232 MS (i)2945 3232 MS (s)2973 3232 MS (t)3012 3232 MS (r)3040 3232 MS (\351)3073 3232 MS ( )3117 3232 MS (d)3142 3232 MS (a)3192 3232 MS (n)3236 3232 MS
+(s)3286 3232 MS ( )3325 3232 MS (l)3350 3232 MS (e)3378 3232 MS ( )3422 3232 MS (n)3447 3232 MS (a)3497 3232 MS (m)3541 3232 MS (i)3619 3232 MS (n)3647 3232 MS (g)3697 3232 MS ( )3746 3232 MS (s)3771 3232 MS (e)3810 3232 MS (r)3854 3232 MS (v)3887 3232 MS
+(i)3937 3232 MS (c)3965 3232 MS (e)4009 3232 MS (.)4053 3232 MS
+( )4078 3232 MS
+(L)482 3347 MS (\222)541 3347 MS (i)574 3347 MS (n)602 3347 MS (d)652 3347 MS (e)702 3347 MS (n)746 3347 MS (t)796 3347 MS (a)824 3347 MS (t)868 3347 MS (i)896 3347 MS (o)924 3347 MS (n)974 3347 MS ( )1024 3347 MS (p)1049 3347 MS (e)1099 3347 MS
+(r)1143 3347 MS (m)1176 3347 MS (e)1254 3347 MS (t)1298 3347 MS ( )1326 3347 MS (d)1351 3347 MS (e)1401 3347 MS ( )1445 3347 MS (d)1470 3347 MS (\351)1520 3347 MS (t)1564 3347 MS (e)1592 3347 MS (r)1636 3347 MS (m)1669 3347 MS (i)1747 3347 MS (n)1775 3347 MS
+(e)1825 3347 MS (r)1869 3347 MS ( )1902 3347 MS (l)1927 3347 MS (\222)1955 3347 MS (a)1988 3347 MS (p)2032 3347 MS (p)2082 3347 MS (a)2132 3347 MS (r)2176 3347 MS (t)2209 3347 MS (e)2237 3347 MS (n)2281 3347 MS (a)2331 3347 MS (n)2375 3347 MS (c)2425 3347 MS
+(e)2469 3347 MS ( )2513 3347 MS (d)2538 3347 MS (e)2588 3347 MS (s)2632 3347 MS ( )2671 3347 MS (o)2696 3347 MS (b)2746 3347 MS (j)2796 3347 MS (e)2824 3347 MS (t)2868 3347 MS (s)2896 3347 MS ( )2935 3347 MS (a)2960 3347 MS (u)3004 3347 MS (x)3054 3347 MS
+( )3105 3347 MS (r)3130 3347 MS (\351)3163 3347 MS (p)3207 3347 MS (e)3257 3347 MS (r)3301 3347 MS (t)3334 3347 MS (o)3362 3347 MS (i)3412 3347 MS (r)3440 3347 MS (e)3473 3347 MS (s)3517 3347 MS (.)3556 3347 MS
+( )3581 3347 MS
+(P)482 3462 MS (a)538 3462 MS (r)582 3462 MS ( )615 3462 MS (e)640 3462 MS (x)684 3462 MS (e)735 3462 MS (m)779 3462 MS (p)857 3462 MS (l)907 3462 MS (e)935 3462 MS (,)979 3462 MS ( )1004 3462 MS (l)1029 3462 MS (\222)1057 3462 MS (o)1090 3462 MS
+(b)1140 3462 MS (j)1190 3462 MS (e)1218 3462 MS (t)1262 3462 MS ( )1290 3462 MS (F)1315 3462 MS (a)1370 3462 MS (c)1414 3462 MS (t)1458 3462 MS (o)1486 3462 MS (r)1536 3462 MS (y)1569 3462 MS (S)1616 3462 MS (e)1672 3462 MS (r)1716 3462 MS (v)1749 3462 MS
+(e)1799 3462 MS (r)1843 3462 MS ( )1876 3462 MS (a)1901 3462 MS (p)1945 3462 MS (p)1995 3462 MS
+(a)2045 3462 MS (r)2089 3462 MS (t)2122 3462 MS (i)2150 3462 MS (e)2178 3462 MS (n)2222 3462 MS (t)2272 3462 MS ( )2300 3462 MS (a)2325 3462 MS (u)2369 3462 MS ( )2419 3462 MS (r)2444 3462 MS (\351)2477 3462 MS (p)2521 3462 MS (e)2571 3462 MS (r)2615 3462 MS
+(t)2648 3462 MS (o)2676 3462 MS (i)2726 3462 MS (r)2754 3462 MS (e)2787 3462 MS ( )2831 3462 MS (/)2856 3462 MS (C)2884 3462 MS (o)2951 3462 MS (n)3001 3462 MS (t)3051 3462 MS (a)3079 3462 MS (i)3123 3462 MS (n)3151 3462 MS (e)3201 3462 MS (r)3245 3462 MS
+(.)3278 3462 MS
+( )3303 3462 MS
+(L)482 3577 MS (\222)541 3577 MS (o)574 3577 MS (b)624 3577 MS (j)674 3577 MS (e)702 3577 MS (t)746 3577 MS ( )774 3577 MS (m)799 3577 MS (y)877 3577 MS (S)924 3577 MS (t)980 3577 MS (u)1008 3577 MS (d)1058 3577 MS (y)1108 3577 MS (M)1155 3577 MS
+(a)1244 3577 MS (n)1288 3577 MS (a)1338 3577 MS (g)1382 3577 MS (e)1431 3577 MS (r)1475 3577 MS ( )1508 3577 MS (a)1533 3577 MS (p)1577 3577 MS (p)1627 3577 MS (a)1677 3577 MS (r)1721 3577 MS (t)1754 3577 MS (i)1782 3577 MS (e)1810 3577 MS (n)1854 3577 MS
+(t)1904 3577 MS ( )1932 3577 MS (a)1957 3577 MS (u)2001 3577 MS ( )2051 3577 MS (r)2076 3577 MS (\351)2109 3577 MS (p)2153 3577 MS (e)2203 3577 MS (r)2247 3577 MS (t)2280 3577 MS (o)2308 3577 MS (i)2358 3577 MS (r)2386 3577 MS (e)2419 3577 MS ( )2463 3577 MS
+(/)2488 3577 MS (.)2516 3577 MS ( )2541 3577 MS ( )2566 3577 MS
+( )2591 3577 MS
+( )482 3692 MS
+[133 0 0 -133 0 0]/Wingdings0133113 MF
+(\275)632 3940 MS
+( )738 3940 MS
+[133 0 0 -133 0 0]/Helvetica-Bold MF
+(i)782 3940 MS (n)819 3940 MS (s)900 3940 MS (e)974 3940 MS (r)1048 3940 MS (t)1100 3940 MS (C)1144 3940 MS (o)1240 3940 MS (m)1321 3940 MS (p)1439 3940 MS (u)1520 3940 MS (t)1601 3940 MS (e)1645 3940 MS (r)1719 3940 MS (R)1771 3940 MS (e)1867 3940 MS
+(s)1941 3940 MS (s)2015 3940 MS (o)2089 3940 MS (u)2170 3940 MS (r)2251 3940 MS (c)2303 3940 MS (e)2377 3940 MS (s)2451 3940 MS (.)2525 3940 MS (s)2562 3940 MS (h)2636 3940 MS
+( )2717 3940 MS
+[100 0 0 -100 0 0]/_Times-Roman MF
+( )482 4085 MS
+(C)482 4200 MS (e)549 4200 MS (t)593 4200 MS ( )621 4200 MS (u)684 4200 MS (t)734 4200 MS (i)762 4200 MS (l)790 4200 MS (i)818 4200 MS (t)846 4200 MS (a)874 4200 MS (i)918 4200 MS (r)946 4200 MS (e)979 4200 MS ( )1023 4200 MS (p)1086 4200 MS
+(e)1136 4200 MS (r)1180 4200 MS (m)1213 4200 MS (e)1291 4200 MS (t)1335 4200 MS ( )1363 4200 MS (d)1426 4200 MS (\222)1476 4200 MS (a)1509 4200 MS (j)1553 4200 MS (o)1581 4200 MS (u)1631 4200 MS (t)1681 4200 MS (e)1709 4200 MS (r)1753 4200 MS ( )1786 4200 MS
+(u)1849 4200 MS (n)1899 4200 MS (e)1949 4200 MS ( )1993 4200 MS (r)2056 4200 MS (e)2089 4200 MS (s)2133 4200 MS (s)2172 4200 MS (o)2211 4200 MS (u)2261 4200 MS (r)2311 4200 MS (c)2344 4200 MS (e)2388 4200 MS ( )2432 4200 MS (m)2495 4200 MS (a)2573 4200 MS
+(c)2617 4200 MS (h)2661 4200 MS (i)2711 4200 MS (n)2739 4200 MS (e)2789 4200 MS ( )2833 4200 MS (a)2896 4200 MS (u)2940 4200 MS ( )2990 4200 MS (c)3053 4200 MS (a)3097 4200 MS (t)3141 4200 MS (a)3169 4200 MS (l)3213 4200 MS (o)3241 4200 MS (g)3291 4200 MS
+(u)3340 4200 MS (e)3390 4200 MS ( )3434 4200 MS (d)3496 4200 MS (e)3546 4200 MS (s)3590 4200 MS ( )3629 4200 MS (r)3691 4200 MS (e)3724 4200 MS (s)3768 4200 MS (s)3807 4200 MS (o)3846 4200 MS (u)3896 4200 MS (r)3946 4200 MS (c)3979 4200 MS (e)4023 4200 MS
+(s)4067 4200 MS ( )4106 4200 MS (d)4168 4200 MS (e)4218 4200 MS ( )4262 4200 MS
+(S)482 4315 MS (A)538 4315 MS (L)610 4315 MS (O)669 4315 MS (M)741 4315 MS (E)830 4315 MS (.)891 4315 MS
+( )916 4315 MS
+(L)482 4430 MS (e)541 4430 MS (s)585 4430 MS ( )624 4430 MS (p)649 4430 MS (r)699 4430 MS (\351)732 4430 MS (a)776 4430 MS (l)820 4430 MS (a)848 4430 MS (b)892 4430 MS (l)942 4430 MS (e)970 4430 MS (s)1014 4430 MS ( )1053 4430 MS (\340)1078 4430 MS
+( )1122 4430 MS (l)1147 4430 MS (\222)1175 4430 MS (u)1208 4430 MS (t)1258 4430 MS (i)1286 4430 MS (l)1314 4430 MS (i)1342 4430 MS (s)1370 4430 MS (a)1409 4430 MS (t)1453 4430 MS (i)1481 4430 MS (o)1509 4430 MS (n)1559 4430 MS ( )1609 4430 MS (d)1634 4430 MS
+(e)1684 4430 MS ( )1728 4430 MS (c)1753 4430 MS (e)1797 4430 MS (t)1841 4430 MS ( )1869 4430 MS (u)1894 4430 MS (t)1944 4430 MS (i)1972 4430 MS (l)2000 4430 MS (i)2028 4430 MS (t)2056 4430 MS (a)2084 4430 MS (i)2128 4430 MS
+(r)2156 4430 MS (e)2189 4430 MS ( )2233 4430 MS (s)2258 4430 MS (o)2297 4430 MS (n)2347 4430 MS (t)2397 4430 MS
+( )2425 4430 MS
+(:)2450 4430 MS
+( )2478 4430 MS
+(-)632 4545 MS
+( )665 4545 MS
+(\352)782 4545 MS (t)826 4545 MS (r)854 4545 MS (e)887 4545 MS ( )931 4545 MS (a)973 4545 MS (u)1017 4545 MS (t)1067 4545 MS (o)1095 4545 MS (r)1145 4545 MS (i)1178 4545 MS (s)1206 4545 MS (\351)1245 4545 MS ( )1289 4545 MS (\340)1331 4545 MS ( )1375 4545 MS
+(\351)1417 4545 MS (c)1461 4545 MS (r)1505 4545 MS (i)1538 4545 MS (r)1566 4545 MS (e)1599 4545 MS ( )1643 4545 MS (d)1685 4545 MS (a)1735 4545 MS (n)1779 4545 MS (s)1829 4545 MS ( )1868 4545 MS (l)1909 4545 MS (e)1937 4545 MS ( )1981 4545 MS (c)2022 4545 MS
+(a)2066 4545 MS (t)2110 4545 MS (a)2138 4545 MS (l)2182 4545 MS (o)2210 4545 MS (g)2260 4545 MS (u)2309 4545 MS (e)2359 4545 MS ( )2403 4545 MS (d)2444 4545 MS (e)2494 4545 MS (s)2538 4545 MS ( )2577 4545 MS (r)2618 4545 MS (e)2651 4545 MS (s)2695 4545 MS
+(s)2734 4545 MS (o)2773 4545 MS (u)2823 4545 MS (r)2873 4545 MS (c)2906 4545 MS (e)2950 4545 MS (s)2994 4545 MS ( )3033 4545 MS (\()3074 4545 MS (d)3107 4545 MS (r)3157 4545 MS (o)3190 4545 MS (i)3240 4545 MS (t)3268 4545 MS ( )3296 4545 MS (r)3337 4545 MS
+(\351)3370 4545 MS (s)3414 4545 MS (e)3453 4545 MS (r)3497 4545 MS (v)3530 4545 MS (\351)3580 4545 MS (,)3624 4545 MS ( )3649 4545 MS (e)3690 4545 MS (n)3734 4545 MS ( )3784 4545 MS (p)3825 4545 MS (r)3875 4545 MS (i)3908 4545 MS (n)3936 4545 MS (c)3986 4545 MS
+(i)4030 4545 MS (p)4058 4545 MS (e)4108 4545 MS (,)4152 4545 MS ( )4177 4545 MS (\340)4218 4545 MS ( )4262 4545 MS
+(l)782 4660 MS (\222)810 4660 MS (a)843 4660 MS (d)887 4660 MS (m)937 4660 MS (i)1015 4660 MS (n)1043 4660 MS (i)1093 4660 MS (s)1121 4660 MS (t)1160 4660 MS (r)1188 4660 MS (a)1221 4660 MS (t)1265 4660 MS (e)1293 4660 MS (u)1337 4660 MS (r)1387 4660 MS
+( )1420 4660 MS (S)1445 4660 MS (a)1501 4660 MS (l)1545 4660 MS (o)1573 4660 MS (m)1623 4660 MS (\351)1701 4660 MS (\))1745 4660 MS
+( )1778 4660 MS
+(-)632 4775 MS
+( )665 4775 MS
+(s)782 4775 MS (e)821 4775 MS ( )865 4775 MS (c)898 4775 MS (o)942 4775 MS (n)992 4775 MS (n)1042 4775 MS (e)1092 4775 MS (c)1136 4775 MS (t)1180 4775 MS (e)1208 4775 MS (r)1252 4775 MS ( )1285 4775 MS (s)1318 4775 MS (u)1357 4775 MS (r)1407 4775 MS
+( )1440 4775 MS (l)1473 4775 MS (a)1501 4775 MS ( )1545 4775 MS (m)1578 4775 MS (a)1656 4775 MS (c)1700 4775 MS (h)1744 4775 MS (i)1794 4775 MS (n)1822 4775 MS (e)1872 4775 MS ( )1916 4775 MS (\340)1949 4775 MS ( )1993 4775 MS (a)2025 4775 MS (j)2069 4775 MS
+(o)2097 4775 MS (u)2147 4775 MS (t)2197 4775 MS (e)2225 4775 MS (r)2269 4775 MS ( )2302 4775 MS (a)2334 4775 MS (u)2378 4775 MS ( )2428 4775 MS (c)2460 4775 MS (a)2504 4775 MS (t)2548 4775 MS (a)2576 4775 MS (l)2620 4775 MS (o)2648 4775 MS (g)2698 4775 MS
+(u)2747 4775 MS (e)2797 4775 MS ( )2841 4775 MS (\()2873 4775 MS (c)2906 4775 MS (e)2950 4775 MS (t)2994 4775 MS (t)3022 4775 MS (e)3050 4775 MS ( )3094 4775 MS (m)3126 4775 MS (a)3204 4775 MS (c)3248 4775 MS (h)3292 4775 MS (i)3342 4775 MS (n)3370 4775 MS
+(e)3420 4775 MS ( )3464 4775 MS (d)3496 4775 MS (o)3546 4775 MS (i)3596 4775 MS (t)3624 4775 MS ( )3652 4775 MS (a)3684 4775 MS (v)3728 4775 MS (o)3778 4775 MS (i)3828 4775 MS (r)3856 4775 MS ( )3889 4775 MS (a)3921 4775 MS (c)3965 4775 MS (c)4009 4775 MS
+(\350)4053 4775 MS (s)4097 4775 MS ( )4136 4775 MS (a)4168 4775 MS (u)4212 4775 MS ( )4262 4775 MS
+(r)782 4890 MS (\351)815 4890 MS (p)859 4890 MS (e)909 4890 MS (r)953 4890 MS (t)986 4890 MS (o)1014 4890 MS (i)1064 4890 MS (r)1092 4890 MS (e)1125 4890 MS ( )1169 4890 MS (S)1194 4890 MS (A)1250 4890 MS (L)1322 4890 MS (O)1381 4890 MS (M)1453 4890 MS
+(E)1542 4890 MS (_)1603 4890 MS (B)1653 4890 MS (U)1719 4890 MS (I)1791 4890 MS (L)1822 4890 MS (D)1881 4890 MS (/)1953 4890 MS (b)1981 4890 MS (i)2031 4890 MS (n)2059 4890 MS (\))2109 4890 MS (.)2142 4890 MS
+( )2167 4890 MS
+( )482 5005 MS
+(L)482 5120 MS (a)541 5120 MS (n)585 5120 MS (c)635 5120 MS (e)679 5120 MS (r)723 5120 MS ( )756 5120 MS (l)781 5120 MS (\222)809 5120 MS (u)842 5120 MS (t)892 5120 MS (i)920 5120 MS (l)948 5120 MS (i)976 5120 MS (t)1004 5120 MS (a)1032 5120 MS
+(i)1076 5120 MS
+(r)1104 5120 MS (e)1137 5120 MS
+( )1181 5120 MS
+(:)1206 5120 MS
+( )1234 5120 MS
+[83 0 0 -83 0 0]/Helvetica MF
+(s)482 5222 MS (h)524 5222 MS (>)570 5222 MS ( )618 5222 MS (c)641 5222 MS (d)683 5222 MS ( )729 5222 MS (S)752 5222 MS (A)807 5222 MS (L)862 5222 MS (O)908 5222 MS (M)973 5222 MS (E)1042 5222 MS (_)1097 5222 MS (B)1143 5222 MS (U)1198 5222 MS
+(I)1258 5222 MS (L)1281 5222 MS (D)1327 5222 MS (/)1387 5222 MS (b)1410 5222 MS (i)1456 5222 MS (n)1474 5222 MS
+( )1520 5222 MS
+(s)482 5318 MS (h)524 5318 MS (>)570 5318 MS ( )618 5318 MS (i)641 5318 MS (n)659 5318 MS (s)705 5318 MS (e)747 5318 MS (r)793 5318 MS (t)821 5318 MS (C)844 5318 MS (o)904 5318 MS (m)950 5318 MS (p)1021 5318 MS (u)1067 5318 MS (t)1113 5318 MS
+(e)1136 5318 MS (r)1182 5318 MS (R)1210 5318 MS (e)1270 5318 MS (s)1316 5318 MS (s)1358 5318 MS (o)1400 5318 MS (u)1446 5318 MS (r)1492 5318 MS (c)1520 5318 MS (e)1562 5318 MS (s)1608 5318 MS (.)1650 5318 MS (s)1673 5318 MS (h)1715 5318 MS
+( )1761 5318 MS
+[100 0 0 -100 0 0]/_Times-Roman MF
+( )482 5427 MS
+(L)482 5542 MS (e)541 5542 MS (s)585 5542 MS ( )624 5542 MS (i)649 5542 MS (n)677 5542 MS (f)727 5542 MS (o)760 5542 MS (r)810 5542 MS (m)843 5542 MS (a)921 5542 MS (t)965 5542 MS (i)993 5542 MS (o)1021 5542 MS (n)1071 5542 MS (s)1121 5542 MS
+( )1160 5542 MS (d)1185 5542 MS (e)1235 5542 MS (m)1279 5542 MS (a)1357 5542 MS (n)1401 5542 MS (d)1451 5542 MS (\351)1501 5542 MS (e)1545 5542 MS (s)1589 5542 MS ( )1628 5542 MS (s)1653 5542 MS (o)1692 5542 MS (n)1742 5542 MS (t)1792 5542 MS ( )1820 5542 MS
+(l)1845 5542 MS (e)1873 5542 MS (s)1917 5542 MS ( )1956 5542 MS (s)1981 5542 MS (u)2020 5542 MS (i)2070 5542 MS (v)2098 5542 MS (a)2148 5542 MS (n)2192 5542 MS (t)2242 5542 MS (e)2270 5542 MS (s)2314 5542 MS
+( )2353 5542 MS
+(\()2378 5542 MS (l)2411 5542 MS (e)2439 5542 MS (s)2483 5542 MS ( )2522 5542 MS (r)2547 5542 MS (\351)2580 5542 MS (p)2624 5542 MS (o)2674 5542 MS (n)2724 5542 MS (s)2774 5542 MS (e)2813 5542 MS (s)2857 5542 MS ( )2896 5542 MS (d)2921 5542 MS (o)2971 5542 MS
+(n)3021 5542 MS (n)3071 5542 MS (\351)3121 5542 MS (e)3165 5542 MS (s)3209 5542 MS ( )3248 5542 MS (s)3273 5542 MS (o)3312 5542 MS (n)3362 5542 MS (t)3412 5542 MS ( )3440 5542 MS (d)3465 5542 MS (e)3515 5542 MS (s)3559 5542 MS ( )3598 5542 MS (e)3623 5542 MS
+(x)3667 5542 MS (e)3718 5542 MS (m)3762 5542 MS (p)3840 5542 MS (l)3890 5542 MS (e)3918 5542 MS (s)3962 5542 MS (\))4001 5542 MS (:)4034 5542 MS
+( )4062 5542 MS
+[83 0 0 -83 0 0]/Helvetica MF
+(s)482 5644 MS (h)524 5644 MS (>)570 5644 MS ( )618 5644 MS (W)641 5644 MS (h)724 5644 MS (a)770 5644 MS (t)816 5644 MS ( )839 5644 MS (i)862 5644 MS (s)880 5644 MS ( )922 5644 MS (t)945 5644 MS (h)968 5644 MS (e)1014 5644 MS ( )1060 5644 MS
+(R)1083 5644 MS (e)1143 5644 MS (s)1189 5644 MS (s)1231 5644 MS (o)1273 5644 MS (u)1319 5644 MS (r)1365 5644 MS (c)1393 5644 MS (e)1435 5644 MS ( )1481 5644 MS (C)1504 5644 MS (a)1564 5644 MS (t)1610 5644 MS (a)1633 5644 MS (l)1679 5644 MS (o)1697 5644 MS
+(g)1743 5644 MS ( )1789 5644 MS (n)1812 5644 MS (a)1858 5644 MS (m)1904 5644 MS (e)1975 5644 MS ( )2021 5644 MS (\()2044 5644 MS (a)2072 5644 MS (b)2118 5644 MS (s)2164 5644 MS (o)2206 5644 MS (l)2252 5644 MS (u)2270 5644 MS (t)2316 5644 MS (e)2339 5644 MS
+( )2385 5644 MS (p)2408 5644 MS (a)2454 5644 MS (t)2500 5644 MS (h)2523 5644 MS (\))2569 5644 MS (?)2597 5644 MS ( )2643 5644 MS
+( )2666 5644 MS
+%%BeginFont: Wingdings0133113
+currentfile eexec
+9E67EDC6B8425AFF36BF4514D54B43BD3052C5864D8FE9488C0032ACA58315791A848ACA4E893C7524EFCAFAF1043561D52C1E47FEA5D8E71ED82F7390F4D46E5C54C6C0
+BBE982CB5E67D60CB8E221B11FCE2B1CD194D5E8EB462262B68241D86FEEAB8906AD997E7A21B17EC2F8DABBE47E46C41FA7AAC75441BB2486FDC0F722E25BFAF73EDF6FAD737FB5FC3697B76CEA6A193C350D5B19F9E7654EC88E8F9567BF1383D78936A0E739D02B2B24B0D4FC384839924ECAD3E853905AB6FDFC
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+cleartomark
+%%EndFont
+[83 0 0 -83 0 0]/Wingdings0133113 MF
+(\305)777 5740 MS
+[83 0 0 -83 0 0]/Helvetica MF
+( )858 5740 MS (/)881 5740 MS (e)904 5740 MS (x)950 5740 MS (p)992 5740 MS (o)1038 5740 MS (r)1084 5740 MS (t)1112 5740 MS (/)1135 5740 MS (h)1158 5740 MS (o)1204 5740 MS (m)1250 5740 MS (e)1321 5740 MS (/)1367 5740 MS (S)1390 5740 MS (A)1445 5740 MS
+(L)1500 5740 MS (O)1546 5740 MS (M)1611 5740 MS (E)1680 5740 MS (_)1735 5740 MS (R)1781 5740 MS (O)1841 5740 MS (O)1906 5740 MS (T)1971 5740 MS (/)2023 5740 MS (S)2046 5740 MS (A)2101 5740 MS (L)2156 5740 MS (O)2202 5740 MS (M)2267 5740 MS (E)2336 5740 MS
+(/)2391 5740 MS (r)2414 5740 MS (e)2442 5740 MS (s)2488 5740 MS (o)2530 5740 MS (u)2576 5740 MS (r)2622 5740 MS (c)2650 5740 MS (e)2692 5740 MS (s)2738 5740 MS (/)2780 5740 MS (C)2803 5740 MS (a)2863 5740 MS (t)2909 5740 MS (a)2932 5740 MS (l)2978 5740 MS
+(o)2996 5740 MS (g)3042 5740 MS (R)3088 5740 MS (e)3148 5740 MS (s)3194 5740 MS (s)3236 5740 MS (o)3278 5740 MS (u)3324 5740 MS (r)3370 5740 MS (c)3398 5740 MS (e)3440 5740 MS (s)3486 5740 MS (.)3528 5740 MS (x)3551 5740 MS (m)3593 5740 MS (l)3664 5740 MS
+( )3682 5740 MS
+(s)482 5836 MS (h)524 5836 MS (>)570 5836 MS ( )618 5836 MS (W)641 5836 MS (h)724 5836 MS (a)770 5836 MS (t)816 5836 MS ( )839 5836 MS (i)862 5836 MS (s)880 5836 MS ( )922 5836 MS (t)945 5836 MS (h)968 5836 MS (e)1014 5836 MS ( )1060 5836 MS
+(c)1083 5836 MS (o)1125 5836 MS (m)1171 5836 MS (p)1242 5836 MS (u)1288 5836 MS (t)1334 5836 MS (e)1357 5836 MS (r)1403 5836 MS ( )1431 5836 MS (n)1454 5836 MS (a)1500 5836 MS (m)1546 5836 MS (e)1617 5836 MS (?)1663 5836 MS
+( )1709 5836 MS
+( )482 5931 MS
+[83 0 0 -83 0 0]/Wingdings0133113 MF
+(\305)777 5931 MS
+[83 0 0 -83 0 0]/Helvetica MF
+( )858 5931 MS (e)881 5931 MS (r)927 5931 MS (i)955 5931 MS
+( )973 5931 MS
+(s)482 6027 MS (h)524 6027 MS (>)570 6027 MS ( )618 6027 MS (W)641 6027 MS (i)724 6027 MS (l)742 6027 MS (l)760 6027 MS ( )778 6027 MS (C)801 6027 MS (+)861 6027 MS (+)909 6027 MS ( )957 6027 MS (C)980 6027 MS (o)1040 6027 MS (n)1086 6027 MS
+(t)1132 6027 MS (a)1155 6027 MS (i)1201 6027 MS (n)1219 6027 MS (e)1265 6027 MS (r)1311 6027 MS ( )1339 6027 MS (T)1362 6027 MS (y)1414 6027 MS (p)1453 6027 MS (e)1499 6027 MS ( )1545 6027 MS (b)1568 6027 MS (e)1614 6027 MS ( )1660 6027 MS (a)1683 6027 MS
+(b)1729 6027 MS (l)1775 6027 MS (e)1793 6027 MS ( )1839 6027 MS (o)1862 6027 MS (n)1908 6027 MS ( )1954 6027 MS (m)1977 6027 MS (u)2048 6027 MS (n)2094 6027 MS (a)2140 6027 MS ( )2186 6027 MS ([)2209 6027 MS (y)2232 6027 MS (/)2271 6027 MS (n)2294 6027 MS
+(])2340 6027 MS (?)2363 6027 MS
+( )2409 6027 MS
+( )482 6123 MS
+[83 0 0 -83 0 0]/Wingdings0133113 MF
+(\305)777 6123 MS
+[83 0 0 -83 0 0]/Helvetica MF
+( )858 6123 MS (y)881 6123 MS
+( )920 6123 MS
+(s)482 6219 MS (h)524 6219 MS (>)570 6219 MS ( )618 6219 MS (W)641 6219 MS (i)724 6219 MS (l)742 6219 MS (l)760 6219 MS ( )778 6219 MS (p)801 6219 MS (y)847 6219 MS (t)886 6219 MS (h)909 6219 MS (o)955 6219 MS (n)1001 6219 MS ( )1047 6219 MS
+(C)1070 6219 MS (o)1130 6219 MS (n)1176 6219 MS (t)1222 6219 MS (a)1245 6219 MS (i)1291 6219 MS (n)1309 6219 MS (e)1355 6219 MS (r)1401 6219 MS ( )1429 6219 MS (T)1452 6219 MS (y)1504 6219 MS (p)1543 6219 MS (e)1589 6219 MS ( )1635 6219 MS (b)1658 6219 MS
+(e)1704 6219 MS ( )1750 6219 MS (a)1773 6219 MS (b)1819 6219 MS (l)1865 6219 MS (e)1883 6219 MS ( )1929 6219 MS (o)1952 6219 MS (n)1998 6219 MS ( )2044 6219 MS (m)2067 6219 MS (u)2138 6219 MS (n)2184 6219 MS (a)2230 6219 MS ( )2276 6219 MS ([)2299 6219 MS
+(y)2322 6219 MS (/)2361 6219 MS (n)2384 6219 MS (])2430 6219 MS (?)2453 6219 MS
+( )2499 6219 MS
+showpage
+%%Page: 2 2
+13 829.441 translate 72 600 div dup neg scale
+0 0 transform .25 add round .25 sub exch .25 add round .25 sub exch itransform translate
+[83 0 0 -83 0 0]/Helvetica MF
+( )482 564 MS
+[83 0 0 -83 0 0]/Wingdings0133113 MF
+(\305)777 564 MS
+[83 0 0 -83 0 0]/Helvetica MF
+( )858 564 MS (y)881 564 MS
+( )920 564 MS
+(s)482 660 MS (h)524 660 MS (>)570 660 MS ( )618 660 MS (W)641 660 MS (i)724 660 MS (l)742 660 MS (l)760 660 MS ( )778 660 MS (N)801 660 MS (P)861 660 MS ( )916 660 MS (C)939 660 MS (o)999 660 MS (n)1045 660 MS (t)1091 660 MS
+(a)1114 660 MS (i)1160 660 MS (n)1178 660 MS (e)1224 660 MS (r)1270 660 MS ( )1298 660 MS (T)1321 660 MS (y)1373 660 MS (p)1412 660 MS (e)1458 660 MS ( )1504 660 MS (b)1527 660 MS (e)1573 660 MS ( )1619 660 MS (a)1642 660 MS (b)1688 660 MS
+(l)1734 660 MS (e)1752 660 MS ( )1798 660 MS (o)1821 660 MS (n)1867 660 MS ( )1913 660 MS (m)1936 660 MS (u)2007 660 MS (n)2053 660 MS (a)2099 660 MS ( )2145 660 MS ([)2168 660 MS (y)2191 660 MS (/)2230 660 MS (n)2253 660 MS (])2299 660 MS
+(?)2322 660 MS
+( )2368 660 MS
+( )482 756 MS
+[83 0 0 -83 0 0]/Wingdings0133113 MF
+(\305)777 756 MS
+[83 0 0 -83 0 0]/Helvetica MF
+( )858 756 MS (n)881 756 MS
+( )927 756 MS
+(s)482 852 MS (h)524 852 MS (>)570 852 MS
+( )618 852 MS
+( )482 948 MS
+( )482 1044 MS
+[100 0 0 -100 0 0]/Times-Roman MF
+(U)482 1152 MS (n)554 1152 MS (e)604 1152 MS ( )648 1152 MS (f)704 1152 MS (o)737 1152 MS (i)787 1152 MS (s)815 1152 MS ( )854 1152 MS (l)910 1152 MS (e)938 1152 MS ( )982 1152 MS (t)1038 1152 MS (r)1066 1152 MS (a)1099 1152 MS (i)1143 1152 MS
+(t)1171 1152 MS (e)1199 1152 MS (m)1243 1152 MS (e)1321 1152 MS (n)1365 1152 MS (t)1415 1152 MS ( )1443 1152 MS (t)1499 1152 MS (e)1527 1152 MS
+/IsChar{exch/CharStrings get exch known}bd/MapCh{3 -1 roll/Encoding get 3 1
+roll put}bd/MapDegree{dup 16#b0 exch/degree IsChar{/degree}{/ring}ifelse MapCh}
+bd/MapBB{dup 16#a6 exch/brokenbar IsChar{/brokenbar}{/bar}ifelse MapCh}bd
+/reencode{findfont begin currentdict dup length dict begin{1 index/FID ne{def}
+{pop pop}ifelse}forall/FontName exch def dup length 0 ne{/Encoding Encoding 256
+array copy def 0 exch{dup type/nametype eq{Encoding 2 index 2 index put pop 1
+add}{exch pop}ifelse}forall}if pop currentdict dup end end/FontName get exch
+definefont dup MapDegree MapBB}bd/LATENC[0/grave/acute/circumflex/tilde/macron
+/breve/dotaccent/dieresis/ring/cedilla/hungarumlaut/ogonek/caron/dotlessi/fi/fl
+/Lslash/lslash/Zcaron/zcaron/minus/.notdef/.notdef/.notdef/.notdef/.notdef
+/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/space/exclam/quotedbl
+/numbersign/dollar/percent/ampersand/quotesingle/parenleft/parenright/asterisk
+/plus/comma/hyphen/period/slash/zero/one/two/three/four/five/six/seven/eight
+/nine/colon/semicolon/less/equal/greater/question/at/A/B/C/D/E/F/G/H/I/J/K/L/M
+/N/O/P/Q/R/S/T/U/V/W/X/Y/Z/bracketleft/backslash/bracketright/asciicircum
+/underscore/grave/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o/p/q/r/s/t/u/v/w/x/y/z/braceleft
+/bar/braceright/asciitilde/.notdef/.notdef/.notdef/quotesinglbase/florin
+/quotedblbase/ellipsis/dagger/daggerdbl/circumflex/perthousand/Scaron
+/guilsinglleft/OE/.notdef/.notdef/.notdef/.notdef/quoteleft/quoteright
+/quotedblleft/quotedblright/bullet/endash/emdash/tilde/trademark/scaron
+/guilsinglright/oe/.notdef/.notdef/Ydieresis/.notdef/exclamdown/cent/sterling
+/currency/yen/brokenbar/section/dieresis/copyright/ordfeminine/guillemotleft
+/logicalnot/hyphen/registered/macron/degree/plusminus/twosuperior/threesuperior
+/acute/mu/paragraph/periodcentered/cedilla/onesuperior/ordmasculine
+/guillemotright/onequarter/onehalf/threequarters/questiondown/Agrave/Aacute
+/Acircumflex/Atilde/Adieresis/Aring/AE/Ccedilla/Egrave/Eacute/Ecircumflex
+/Edieresis/Igrave/Iacute/Icircumflex/Idieresis/Eth/Ntilde/Ograve/Oacute
+/Ocircumflex/Otilde/Odieresis/multiply/Oslash/Ugrave/Uacute/Ucircumflex
+/Udieresis/Yacute/Thorn/germandbls/agrave/aacute/acircumflex/atilde/adieresis
+/aring/ae/ccedilla/egrave/eacute/ecircumflex/edieresis/igrave/iacute
+/icircumflex/idieresis/eth/ntilde/ograve/oacute/ocircumflex/otilde/odieresis
+/divide/oslash/ugrave/uacute/ucircumflex/udieresis/yacute/thorn/ydieresis]def
+LATENC /_Times-Roman /Times-Roman reencode
+[100 0 0 -100 0 0]/_Times-Roman MF
+(r)1571 1152 MS (m)1604 1152 MS (i)1682 1152 MS (n)1710 1152 MS (\351)1760 1152 MS (,)1804 1152 MS ( )1829 1152 MS (l)1885 1152 MS (e)1913 1152 MS ( )1957 1152 MS (c)2013 1152 MS (a)2057 1152 MS (t)2101 1152 MS (a)2129 1152 MS (l)2173 1152 MS (o)2201 1152 MS
+(g)2251 1152 MS (u)2300 1152 MS (e)2350 1152 MS ( )2394 1152 MS (d)2450 1152 MS (e)2500 1152 MS (s)2544 1152 MS ( )2583 1152 MS (r)2639 1152 MS (e)2672 1152 MS (s)2716 1152 MS (s)2755 1152 MS (o)2794 1152 MS (u)2844 1152 MS (r)2894 1152 MS (c)2927 1152 MS
+(e)2971 1152 MS (s)3015 1152 MS ( )3054 1152 MS (c)3109 1152 MS (o)3153 1152 MS (n)3203 1152 MS (t)3253 1152 MS (i)3281 1152 MS (e)3309 1152 MS (n)3353 1152 MS (d)3403 1152 MS (r)3453 1152 MS (a)3486 1152 MS ( )3530 1152 MS (l)3585 1152 MS (e)3613 1152 MS
+(s)3657 1152 MS ( )3696 1152 MS (i)3751 1152 MS (n)3779 1152 MS (f)3829 1152 MS (o)3862 1152 MS (r)3912 1152 MS (m)3945 1152 MS (a)4023 1152 MS (t)4067 1152 MS (i)4095 1152 MS (o)4123 1152 MS (n)4173 1152 MS (s)4223 1152 MS ( )4262 1152 MS
+(c)482 1267 MS (o)526 1267 MS (n)576 1267 MS (c)626 1267 MS (e)670 1267 MS (r)714 1267 MS (n)747 1267 MS (a)797 1267 MS (n)841 1267 MS (t)891 1267 MS ( )919 1267 MS (l)944 1267 MS (a)972 1267 MS ( )1016 1267 MS (m)1041 1267 MS (a)1119 1267 MS
+(c)1163 1267 MS (h)1207 1267 MS (i)1257 1267 MS (n)1285 1267 MS (e)1335 1267 MS ( )1379 1267 MS (e)1404 1267 MS (r)1448 1267 MS (i)1481 1267 MS (.)1509 1267 MS ( )1534 1267 MS (L)1559 1267 MS (e)1618 1267 MS (s)1662 1267 MS ( )1701 1267 MS (l)1726 1267 MS
+(i)1754 1267 MS (g)1782 1267 MS (n)1831 1267 MS (e)1881 1267 MS (s)1925 1267 MS ( )1964 1267 MS (s)1989 1267 MS (u)2028 1267 MS (i)2078 1267 MS (v)2106 1267 MS (a)2156 1267 MS (n)2200 1267 MS (t)2250 1267 MS (e)2278 1267 MS (s)2322 1267 MS ( )2361 1267 MS
+(a)2386 1267 MS (u)2430 1267 MS (r)2480 1267 MS (o)2513 1267 MS (n)2563 1267 MS (t)2613 1267 MS ( )2641 1267 MS (\351)2666 1267 MS (t)2710 1267 MS (\351)2738 1267 MS ( )2782 1267 MS (r)2807 1267 MS (a)2840 1267 MS (j)2884 1267 MS (o)2912 1267 MS (u)2962 1267 MS
+(t)3012 1267 MS (\351)3040 1267 MS (e)3084 1267 MS (s)3128 1267 MS ( )3167 1267 MS (d)3192 1267 MS (a)3242 1267 MS (n)3286 1267 MS (s)3336 1267 MS ( )3375 1267 MS (l)3400 1267 MS (e)3428 1267 MS ( )3472 1267 MS (c)3497 1267 MS (a)3541 1267 MS (t)3585 1267 MS
+(a)3613 1267 MS (l)3657 1267 MS (o)3685 1267 MS (g)3735 1267 MS (u)3784 1267 MS (e)3834 1267 MS
+( )3878 1267 MS
+(:)3903 1267 MS
+( )3931 1267 MS
+%%IncludeFont: Courier
+[83 0 0 -83 0 0]/Courier MF
+( )482 1363 MS
+(<)777 1363 MS (c)827 1363 MS (o)877 1363 MS (m)927 1363 MS (p)977 1363 MS (u)1027 1363 MS (t)1077 1363 MS (e)1127 1363 MS (r)1177 1363 MS (>)1227 1363 MS
+( )1277 1363 MS
+( )482 1458 MS
+( )777 1458 MS
+(<)1072 1458 MS (n)1122 1458 MS (a)1172 1458 MS (m)1222 1458 MS (e)1272 1458 MS (>)1322 1458 MS (e)1372 1458 MS (r)1422 1458 MS (i)1472 1458 MS (<)1522 1458 MS (/)1572 1458 MS (n)1622 1458 MS (a)1672 1458 MS (m)1722 1458 MS (e)1772 1458 MS (>)1822 1458 MS
+( )1872 1458 MS
+( )482 1552 MS
+( )777 1552 MS
+(<)1072 1552 MS (O)1122 1552 MS (S)1172 1552 MS (>)1222 1552 MS (L)1272 1552 MS (i)1322 1552 MS (n)1372 1552 MS (u)1422 1552 MS (x)1472 1552 MS (<)1522 1552 MS (/)1572 1552 MS (O)1622 1552 MS (S)1672 1552 MS (>)1722 1552 MS
+( )1772 1552 MS
+( )482 1647 MS
+( )777 1647 MS
+(<)1072 1647 MS (O)1122 1647 MS (S)1172 1647 MS
+(-)1222 1647 MS
+(v)1272 1647 MS (e)1322 1647 MS (r)1372 1647 MS (s)1422 1647 MS (i)1472 1647 MS (o)1522 1647 MS (n)1572 1647 MS (>)1622 1647 MS (2)1672 1647 MS (.)1722 1647 MS (2)1772 1647 MS (.)1822 1647 MS (1)1872 1647 MS (4)1922 1647 MS
+(-)1972 1647 MS
+(6)2022 1647 MS (.)2072 1647 MS (1)2122 1647 MS (.)2172 1647 MS (1)2222 1647 MS (s)2272 1647 MS (m)2322 1647 MS (p)2372 1647 MS (<)2422 1647 MS (/)2472 1647 MS (O)2522 1647 MS (S)2572 1647 MS
+(-)2622 1647 MS
+(v)2672 1647 MS (e)2722 1647 MS (r)2772 1647 MS (s)2822 1647 MS (i)2872 1647 MS (o)2922 1647 MS (n)2972 1647 MS (>)3022 1647 MS
+( )3072 1647 MS
+( )482 1741 MS
+( )777 1741 MS
+(<)1072 1741 MS (p)1122 1741 MS (r)1172 1741 MS (o)1222 1741 MS (c)1272 1741 MS
+(-)1322 1741 MS
+(l)1372 1741 MS (i)1422 1741 MS (s)1472 1741 MS (t)1522 1741 MS (>)1572 1741 MS
+( )1622 1741 MS
+( )482 1835 MS
+( )777 1835 MS
+( )1072 1835 MS
+(<)1367 1835 MS (p)1417 1835 MS (r)1467 1835 MS (o)1517 1835 MS (c)1567 1835 MS (>)1617 1835 MS
+( )1667 1835 MS
+( )482 1930 MS
+( )777 1930 MS
+( )1072 1930 MS
+( )1367 1930 MS
+(<)1662 1930 MS (n)1712 1930 MS (u)1762 1930 MS (m)1812 1930 MS (b)1862 1930 MS (e)1912 1930 MS (r)1962 1930 MS (>)2012 1930 MS (0)2062 1930 MS (<)2112 1930 MS (/)2162 1930 MS (n)2212 1930 MS (u)2262 1930 MS (m)2312 1930 MS (b)2362 1930 MS (e)2412 1930 MS
+(r)2462 1930 MS (>)2512 1930 MS
+( )2562 1930 MS
+( )482 2024 MS
+( )777 2024 MS
+( )1072 2024 MS
+( )1367 2024 MS
+(<)1662 2024 MS (m)1712 2024 MS (o)1762 2024 MS (d)1812 2024 MS (e)1862 2024 MS (l)1912 2024 MS (>)1962 2024 MS (P)2012 2024 MS (e)2062 2024 MS (n)2112 2024 MS (t)2162 2024 MS (i)2212 2024 MS (u)2262 2024 MS (m)2312 2024 MS ( )2362 2024 MS (I)2412 2024 MS
+(I)2462 2024 MS (I)2512 2024 MS ( )2562 2024 MS (\()2612 2024 MS (C)2662 2024 MS (o)2712 2024 MS (p)2762 2024 MS (p)2812 2024 MS (e)2862 2024 MS (r)2912 2024 MS (m)2962 2024 MS (i)3012 2024 MS (n)3062 2024 MS (e)3112 2024 MS (\))3162 2024 MS (<)3212 2024 MS
+(/)3262 2024 MS (m)3312 2024 MS (o)3362 2024 MS (d)3412 2024 MS (e)3462 2024 MS (l)3512 2024 MS (>)3562 2024 MS
+( )3612 2024 MS
+( )482 2119 MS
+( )777 2119 MS
+( )1072 2119 MS
+( )1367 2119 MS
+(<)1662 2119 MS (C)1712 2119 MS (P)1762 2119 MS (U)1812 2119 MS
+(-)1862 2119 MS
+(M)1912 2119 MS (H)1962 2119 MS (z)2012 2119 MS (>)2062 2119 MS (8)2112 2119 MS (6)2162 2119 MS (0)2212 2119 MS (.)2262 2119 MS (9)2312 2119 MS (4)2362 2119 MS (6)2412 2119 MS (7)2462 2119 MS (7)2512 2119 MS (5)2562 2119 MS (<)2612 2119 MS (/)2662 2119 MS
+(C)2712 2119 MS (P)2762 2119 MS (U)2812 2119 MS
+(-)2862 2119 MS
+(M)2912 2119 MS (H)2962 2119 MS (z)3012 2119 MS (>)3062 2119 MS
+( )3112 2119 MS
+( )482 2213 MS
+( )777 2213 MS
+( )1072 2213 MS
+( )1367 2213 MS
+(<)1662 2213 MS (c)1712 2213 MS (a)1762 2213 MS (c)1812 2213 MS (h)1862 2213 MS (e)1912 2213 MS (>)1962 2213 MS (2)2012 2213 MS (5)2062 2213 MS (6)2112 2213 MS (<)2162 2213 MS (/)2212 2213 MS (c)2262 2213 MS (a)2312 2213 MS (c)2362 2213 MS (h)2412 2213 MS
+(e)2462 2213 MS (>)2512 2213 MS
+( )2562 2213 MS
+( )482 2307 MS
+( )777 2307 MS
+( )1072 2307 MS
+(<)1367 2307 MS (/)1417 2307 MS (p)1467 2307 MS (r)1517 2307 MS (o)1567 2307 MS (c)1617 2307 MS (>)1667 2307 MS
+( )1717 2307 MS
+( )482 2402 MS
+( )777 2402 MS
+( )1072 2402 MS
+(<)1367 2402 MS (p)1417 2402 MS (r)1467 2402 MS (o)1517 2402 MS (c)1567 2402 MS (>)1617 2402 MS
+( )1667 2402 MS
+( )482 2496 MS
+( )777 2496 MS
+( )1072 2496 MS
+( )1367 2496 MS
+(<)1662 2496 MS (n)1712 2496 MS (u)1762 2496 MS (m)1812 2496 MS (b)1862 2496 MS (e)1912 2496 MS (r)1962 2496 MS (>)2012 2496 MS (1)2062 2496 MS (<)2112 2496 MS (/)2162 2496 MS (n)2212 2496 MS (u)2262 2496 MS (m)2312 2496 MS (b)2362 2496 MS (e)2412 2496 MS
+(r)2462 2496 MS (>)2512 2496 MS
+( )2562 2496 MS
+( )482 2591 MS
+( )777 2591 MS
+( )1072 2591 MS
+( )1367 2591 MS
+(<)1662 2591 MS (m)1712 2591 MS (o)1762 2591 MS (d)1812 2591 MS (e)1862 2591 MS (l)1912 2591 MS (>)1962 2591 MS (P)2012 2591 MS (e)2062 2591 MS (n)2112 2591 MS (t)2162 2591 MS (i)2212 2591 MS (u)2262 2591 MS (m)2312 2591 MS ( )2362 2591 MS (I)2412 2591 MS
+(I)2462 2591 MS (I)2512 2591 MS ( )2562 2591 MS (\()2612 2591 MS (C)2662 2591 MS (o)2712 2591 MS (p)2762 2591 MS (p)2812 2591 MS (e)2862 2591 MS (r)2912 2591 MS (m)2962 2591 MS (i)3012 2591 MS (n)3062 2591 MS (e)3112 2591 MS (\))3162 2591 MS (<)3212 2591 MS
+(/)3262 2591 MS (m)3312 2591 MS (o)3362 2591 MS (d)3412 2591 MS (e)3462 2591 MS (l)3512 2591 MS (>)3562 2591 MS
+( )3612 2591 MS
+( )482 2685 MS
+( )777 2685 MS
+( )1072 2685 MS
+( )1367 2685 MS
+(<)1662 2685 MS (C)1712 2685 MS (P)1762 2685 MS (U)1812 2685 MS
+(-)1862 2685 MS
+(M)1912 2685 MS (H)1962 2685 MS (z)2012 2685 MS (>)2062 2685 MS (8)2112 2685 MS (6)2162 2685 MS (0)2212 2685 MS (.)2262 2685 MS (9)2312 2685 MS (4)2362 2685 MS (6)2412 2685 MS (7)2462 2685 MS (7)2512 2685 MS (5)2562 2685 MS (<)2612 2685 MS (/)2662 2685 MS
+(C)2712 2685 MS (P)2762 2685 MS (U)2812 2685 MS
+(-)2862 2685 MS
+(M)2912 2685 MS (H)2962 2685 MS (z)3012 2685 MS (>)3062 2685 MS
+( )3112 2685 MS
+( )482 2779 MS
+( )777 2779 MS
+( )1072 2779 MS
+( )1367 2779 MS
+(<)1662 2779 MS (c)1712 2779 MS (a)1762 2779 MS (c)1812 2779 MS (h)1862 2779 MS (e)1912 2779 MS (>)1962 2779 MS (2)2012 2779 MS (5)2062 2779 MS (6)2112 2779 MS (<)2162 2779 MS (/)2212 2779 MS (c)2262 2779 MS (a)2312 2779 MS (c)2362 2779 MS (h)2412 2779 MS
+(e)2462 2779 MS (>)2512 2779 MS
+( )2562 2779 MS
+( )482 2874 MS
+( )777 2874 MS
+( )1072 2874 MS
+(<)1367 2874 MS (/)1417 2874 MS (p)1467 2874 MS (r)1517 2874 MS (o)1567 2874 MS (c)1617 2874 MS (>)1667 2874 MS
+( )1717 2874 MS
+( )482 2968 MS
+( )777 2968 MS
+(<)1072 2968 MS (/)1122 2968 MS (p)1172 2968 MS (r)1222 2968 MS (o)1272 2968 MS (c)1322 2968 MS
+(-)1372 2968 MS
+(l)1422 2968 MS (i)1472 2968 MS (s)1522 2968 MS (t)1572 2968 MS (>)1622 2968 MS
+( )1672 2968 MS
+( )482 3063 MS
+( )777 3063 MS
+(<)1072 3063 MS (c)1122 3063 MS (o)1172 3063 MS (n)1222 3063 MS (t)1272 3063 MS (a)1322 3063 MS (i)1372 3063 MS (n)1422 3063 MS (e)1472 3063 MS (r)1522 3063 MS (t)1572 3063 MS (y)1622 3063 MS (p)1672 3063 MS (e)1722 3063 MS
+(-)1772 3063 MS
+(l)1822 3063 MS (i)1872 3063 MS (s)1922 3063 MS (t)1972 3063 MS (>)2022 3063 MS
+( )2072 3063 MS
+( )482 3157 MS
+( )777 3157 MS
+( )1072 3157 MS
+( )1367 3157 MS
+(<)1662 3157 MS (c)1712 3157 MS (o)1762 3157 MS (n)1812 3157 MS (t)1862 3157 MS (a)1912 3157 MS (i)1962 3157 MS (n)2012 3157 MS (e)2062 3157 MS (r)2112 3157 MS (t)2162 3157 MS (y)2212 3157 MS (p)2262 3157 MS (e)2312 3157 MS (>)2362 3157 MS (C)2412 3157 MS
+(+)2462 3157 MS (+)2512 3157 MS (<)2562 3157 MS (/)2612 3157 MS (c)2662 3157 MS (o)2712 3157 MS (n)2762 3157 MS (t)2812 3157 MS (a)2862 3157 MS (i)2912 3157 MS (n)2962 3157 MS (e)3012 3157 MS (r)3062 3157 MS (t)3112 3157 MS (y)3162 3157 MS (p)3212 3157 MS
+(e)3262 3157 MS (>)3312 3157 MS
+( )3362 3157 MS
+( )482 3251 MS
+( )777 3251 MS
+( )1072 3251 MS
+( )1367 3251 MS
+(<)1662 3251 MS (c)1712 3251 MS (o)1762 3251 MS (n)1812 3251 MS (t)1862 3251 MS (a)1912 3251 MS (i)1962 3251 MS (n)2012 3251 MS (e)2062 3251 MS (r)2112 3251 MS (t)2162 3251 MS (y)2212 3251 MS (p)2262 3251 MS (e)2312 3251 MS (>)2362 3251 MS (p)2412 3251 MS
+(y)2462 3251 MS (t)2512 3251 MS (h)2562 3251 MS (o)2612 3251 MS (n)2662 3251 MS (<)2712 3251 MS (/)2762 3251 MS (c)2812 3251 MS (o)2862 3251 MS (n)2912 3251 MS (t)2962 3251 MS (a)3012 3251 MS (i)3062 3251 MS (n)3112 3251 MS (e)3162 3251 MS (r)3212 3251 MS
+(t)3262 3251 MS (y)3312 3251 MS (p)3362 3251 MS (e)3412 3251 MS (>)3462 3251 MS
+( )3512 3251 MS
+( )482 3346 MS
+( )777 3346 MS
+(<)1072 3346 MS (/)1122 3346 MS (c)1172 3346 MS (o)1222 3346 MS (n)1272 3346 MS (t)1322 3346 MS (a)1372 3346 MS (i)1422 3346 MS (n)1472 3346 MS (e)1522 3346 MS (r)1572 3346 MS (t)1622 3346 MS (y)1672 3346 MS (p)1722 3346 MS (e)1772 3346 MS
+(-)1822 3346 MS
+(l)1872 3346 MS (i)1922 3346 MS (s)1972 3346 MS (t)2022 3346 MS (>)2072 3346 MS
+( )2122 3346 MS
+( )482 3440 MS
+(<)777 3440 MS (/)827 3440 MS (c)877 3440 MS (o)927 3440 MS (m)977 3440 MS (p)1027 3440 MS (u)1077 3440 MS (t)1127 3440 MS (e)1177 3440 MS (r)1227 3440 MS (>)1277 3440 MS
+( )1327 3440 MS
+[100 0 0 -100 0 0]/_Times-Roman MF
+( )482 3554 MS
+( )482 3669 MS
+( )482 3784 MS
+( )482 3899 MS
+showpage
+FontSV restore
+PageSV restore
+%%Trailer
+%%DocumentNeededFonts:
+%%+ Courier
+%%+ Helvetica
+%%+ Helvetica-Bold
+%%+ Times-Roman
+%%DocumentSuppliedFonts:
+%%+ Wingdings0133113
+end
+%%Pages: 2
+%%EOF
--- /dev/null
+|SourceProjectName:KERNEL.hpr\r
+|DestinationProjectName:kernel.html\r
+whhost.js\r
+whmsg.js\r
+whmozemu.js\r
+whproxy.js\r
+whstub.js\r
+whutils.js\r
+whver.js\r
+whform.js\r
+whphost.js\r
+whstart.js\r
+whtopic.js\r
+whframes.js\r
+whlang.js\r
+whskin_info.htm\r
+whskin_blank.htm\r
+whnjs.htm\r
+whthost.js\r
+whtdhtml.htm\r
+whihost.js\r
+whibody.htm\r
+whiform.htm\r
+whfhost.js\r
+whfbody.htm\r
+whfform.htm\r
+whghost.js\r
+whgbody.htm\r
+whgdhtml.htm\r
+whgdef.htm\r
+whproj.js\r
+whproj.xml\r
+whproj.htm\r
+whdata\whtoc.js\r
+whdata\whtoc.xml\r
+whdata\whtoc.htm\r
+whdata\whtdata.js\r
+whdata\whidx.js\r
+whdata\whidx.xml\r
+whdata\whidx.htm\r
+whdata\whidata.js\r
+whdata\whfts.js\r
+whdata\whfts.xml\r
+whdata\whfts.htm\r
+whdata\whglo.js\r
+whdata\whglo.xml\r
+whdata\whglo.htm\r
+whdata\whgdata.js\r
+whdata\whftdata.js\r
+whdata\whfwdata.js\r
+whres.xml\r
+webhelp.jar\r
+webhelp.cab\r
+whgdata\whnvp30.htm\r
+whgdata\whnvp31.htm\r
+whgdata\whnvp32.htm\r
+whgdata\whnvp33.htm\r
+whgdata\whnvt30.htm\r
+whgdata\whnvt31.htm\r
+whgdata\whnvt32.htm\r
+whgdata\whnvt33.htm\r
+whgdata\whnvf30.htm\r
+whgdata\whnvf31.htm\r
+whgdata\whnvf32.htm\r
+whgdata\whnvf33.htm\r
+whgdata\whnvl31.htm\r
+whgdata\whnvl32.htm\r
+whgdata\whnvl33.htm\r
+whgdata\whexpbar.gif\r
+cshdat_webhelp.htm\r
+cshdat_robohelp.htm\r
+wht_tab0.gif\r
+wht_tab1.gif\r
+wht_tab2.gif\r
+wht_tab3.gif\r
+wht_tab4.gif\r
+wht_tab5.gif\r
+wht_tab6.gif\r
+wht_tab7.gif\r
+wht_tab8.gif\r
+wht_glo_h.gif\r
+wht_glo_n.gif\r
+wht_fts_h.gif\r
+wht_fts_n.gif\r
+wht_idx_h.gif\r
+wht_idx_n.gif\r
+wht_toc_h.gif\r
+wht_toc_n.gif\r
+wht_ws.gif\r
+wht_ws_g.gif\r
+wht_logo1.gif\r
+wht_logo2.gif\r
+wht_abgw.jpg\r
+wht_abgi.jpg\r
+wht_abge.jpg\r
+wht_abtw.jpg\r
+wht_abte.jpg\r
+wht_abti.jpg\r
+wht_spac.gif\r
+wht_next.gif\r
+wht_next_g.gif\r
+wht_prev.gif\r
+wht_prev_g.gif\r
+wht_sync.gif\r
+wht_hide.gif\r
+wht_go.gif\r
+whstart.ico\r
+whestart.ico\r
+whrstart.ico\r
+whidhtml.htm\r
+whfdhtml.htm\r
+whskin_banner.htm\r
+whtbar.js\r
+default.skn\r
+whskin_pdhtml.htm\r
+whskin_papplet.htm\r
+whskin_plist.htm\r
+whskin_tbars.htm\r
+whskin_mbars.htm\r
+wht_toc4.gif\r
+wht_toc1.gif\r
+wht_toc2.gif\r
+wht_toc3.gif\r
+whskin_frmset010.htm\r
+whst_topics.xml\r
+whskin_frmset01.htm\r
+kernel_hha.hhk\r
+kernel.hhc\r
+kernel.hhk\r
+files\about_salome_pro_architecture.htm\r
+files\about_salome_pro_help_system.htm\r
+files\copyright_notice.htm\r
+files\creating_a_new_study.htm\r
+files\displaying_hiding_toolbars.htm\r
+files\displaying_studies.htm\r
+files\editing_studies.htm\r
+files\getting_properties_of_the_study.htm\r
+files\getting_started2.htm\r
+files\installing_salome_pro.htm\r
+files\introduction.htm\r
+files\introduction_to_iapp.htm\r
+files\introduction_to_salome_pro.htm\r
+files\navigating_topics.htm\r
+files\opening_studies.htm\r
+files\readme.html\r
+files\running_salome_pro.htm\r
+files\salome_pro_desktop.htm\r
+files\saving_a_study.htm\r
+files\setting_preferences.htm\r
+files\using_catalog_generator.htm\r
+files\using_left-hand_tabs.htm\r
+files\using_object_browser.htm\r
+files\using_registry.htm\r
+files\using_usecase_browser.htm\r
+texture_horiz_ltbluebubbles.jpg\r
+kernel.glo\r
+default.css\r
+pics\warninglocked.jpg\r
+pics\load.jpg\r
+image4.gif\r
+readmepage.png\r
+pics\removeobj.jpg\r
+pics\tile.jpg\r
+pics\topv.jpg\r
+pics\globalpanning.jpg\r
+pics\fitall.jpg\r
+pics\cascade.jpg\r
+pics\frontv.jpg\r
+pics\sheme1.jpg\r
+pics\copy-paste.jpg\r
+image7.gif\r
+pics\sheme2.jpg\r
+i_blue.jpg\r
+pics\registy1.jpg\r
+pics\setcurrent.jpg\r
+pics\desktop3.jpg\r
+pics\usecasebrsr.jpg\r
+pics\newobj.jpg\r
+pics\close.jpg\r
+pics\rightv.jpg\r
+pics\trihedron.jpg\r
+pics\dump.jpg\r
+pics\cataloggenerator.jpg\r
+pics\usecasebr.jpg\r
+pics\objbrowser2.jpg\r
+pics\open.jpg\r
+pics\bottomv.jpg\r
+pics\rotate.jpg\r
+pics\application-splash.jpg\r
+dirpage.png\r
+pics\properties.jpg\r
+pics\newsticn.jpg\r
+pics\leftv.jpg\r
+pics\backv.jpg\r
+note1.gif\r
+pics\reset.jpg\r
+pics\panning.jpg\r
+pics\zoom.jpg\r
+pics\fitrect.jpg\r
+image2.jpg\r
+choicepage.png\r
+pics\save.jpg\r
+progresspage.png\r
+cantinstall.png\r
+pics\clear.jpg\r
+pics\undo-redo.jpg\r
+occ.jpg\r
+productpage.png\r
+tip1.gif\r
+pics\registry.jpg\r
+pics\addobj.jpg\r
+kernel.ppf\r
+ehlpdhtm.js\r
+ss_btn_related_topics.gif\r
+default_ns.css\r
+whdata\whtdata0.xml\r
+whdata\whtdata0.htm\r
+whdata\whftdata0.xml\r
+whdata\whftdata0.htm\r
+whdata\whfwdata0.xml\r
+whdata\whfwdata0.htm\r
+whdata\whgdata0.xml\r
+whdata\whgdata0.htm\r
+whgdata\whlstt0.htm\r
+whgdata\whlstt1.htm\r
+whgdata\whlstt2.htm\r
+whgdata\whlstt3.htm\r
+whgdata\whlstt4.htm\r
+whgdata\whlsti0.htm\r
+whgdata\whlstfl0.htm\r
+whgdata\whlstfl1.htm\r
+whgdata\whlstfl2.htm\r
+whgdata\whlstfl3.htm\r
+whgdata\whlstfl4.htm\r
+whgdata\whlstfl5.htm\r
+whgdata\whlstfl6.htm\r
+whgdata\whlstfl7.htm\r
+whgdata\whlstfl8.htm\r
+whgdata\whlstfl9.htm\r
+whgdata\whlstfl10.htm\r
+whgdata\whlstfl11.htm\r
+whgdata\whlstfl12.htm\r
+whgdata\whlstfl13.htm\r
+whgdata\whlstfl14.htm\r
+whgdata\whlstfl15.htm\r
+whgdata\whlstfl16.htm\r
+whgdata\whlstfl17.htm\r
+whgdata\whlstfl18.htm\r
+whgdata\whlstfl19.htm\r
+whgdata\whlstfl20.htm\r
+whgdata\whlstfl21.htm\r
+whgdata\whlstfl22.htm\r
+whgdata\whlstfl23.htm\r
+whgdata\whlstfl24.htm\r
+whgdata\whlstf0.htm\r
+whgdata\whlstf1.htm\r
+whgdata\whlstf2.htm\r
+whgdata\whlstf3.htm\r
+whgdata\whlstf4.htm\r
+whgdata\whlstf5.htm\r
+whgdata\whlstf6.htm\r
+whgdata\whlstf7.htm\r
+whgdata\whlstf8.htm\r
+whgdata\whlstf9.htm\r
+whgdata\whlstg0.htm\r
+kernel.html\r
+kernel_csh.html\r
+kernel_rhc.html\r
--- /dev/null
+<html>\r
+<head>\r
+<title>SALOME reference manual</title>\r
+<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
+<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">\r
+<meta name "description" content="WebHelp 2002">\r
+</head>\r
+<body>\r
+<script language="JavaScript">\r
+<!--\r
+\r
+var gArrayCsh = new Array();\r
+\r
+var gstrWindowOption = "";\r
+var gstrURL = "";\r
+var gbWithNavPane = false;\r
+\r
+function CshEntityItem(strAliasId, nTopicNum, strUrl) \r
+{\r
+ this.strAliasId = strAliasId;\r
+ this.nTopicNum = nTopicNum;\r
+ this.strUrl = strUrl;\r
+}\r
+\r
+\r
+//Try to get to topic number from hash string\r
+function GetTopicNumberAuto(strMayBeNumber)\r
+{\r
+ var nNum = -1;\r
+ if (strMayBeNumber.length >= 1)\r
+ {\r
+ var strTmp = strMayBeNumber;\r
+ var iEnd = strTmp.length;\r
+ for (var i=0; i<iEnd; i++)\r
+ {\r
+ var ch = strTmp.charAt(i);\r
+ if (!((ch == "0") || (ch == "1") ||\r
+ (ch == "2") || (ch == "3") ||\r
+ (ch == "4") || (ch == "5") ||\r
+ (ch == "6") || (ch == "7") ||\r
+ (ch == "8") || (ch == "9")))\r
+ return GetTopicNumberById(strTmp);\r
+ }\r
+ nNum = parseInt(strTmp);\r
+ }\r
+ return nNum;\r
+}\r
+\r
+function GetTopicNumber(strHashString)\r
+{\r
+ var nTopicEndPos = strHashString.indexOf(',')\r
+ if (nTopicEndPos == -1) { // no window option.\r
+ return GetTopicNumberOnly(strHashString);\r
+ }\r
+ else {\r
+ var strWindowOption = strHashString.substring(nTopicEndPos + 1, strHashString.length);\r
+ var strWithNavPane = 'withnavpane=true';\r
+ if (strWindowOption.toLowerCase().indexOf(strWithNavPane) == 0)\r
+ {\r
+ if (strWindowOption.length > strWithNavPane.length)\r
+ gstrWindowOption = strWindowOption.substring(strWithNavPane.length + 1);\r
+ else\r
+ gstrWindowOption = "";\r
+ gbWithNavPane = true;\r
+ }\r
+ else\r
+ gstrWindowOption = strWindowOption;\r
+ return GetTopicNumberOnly(strHashString.substring(0, nTopicEndPos)); \r
+ }\r
+}\r
+\r
+function GetTopicNumberOnly(strTopicString)\r
+{\r
+ var nEqualPos = strTopicString.indexOf('=');\r
+ if (nEqualPos == -1) {\r
+ return GetTopicNumberAuto(strTopicString);\r
+ }\r
+ else {\r
+ var strValue=strTopicString.substring(nEqualPos + 1, strTopicString.length);\r
+ if (strTopicString.toLowerCase().indexOf("topicnumber") == 0) {\r
+ return parseInt(strValue);\r
+ } else if (strTopicString.toLowerCase().indexOf("context") == 0) {\r
+ return GetTopicNumberById(strValue);\r
+ } else if (strTopicString.toLowerCase().indexOf("remoteurl") == 0) {\r
+ gstrURL = strValue;\r
+ return -1;\r
+ }\r
+\r
+ }\r
+}\r
+\r
+//Find HomePage of the WebHelp system\r
+// we try to get the topic from remote project if it exists.\r
+function RedirectToHomePage()\r
+{\r
+ if (parent && parent != this && parent.goNext)\r
+ {\r
+ var sHome = parent.goNext();\r
+ if (sHome != "")\r
+ RedirectTo(sHome);\r
+ }\r
+}\r
+\r
+function getHomePage()\r
+{\r
+ if (parent && parent != this && parent.getRelHomePage)\r
+ {\r
+ return parent.getRelHomePage(document.location.href);\r
+ }\r
+ return "";\r
+}\r
+\r
+function addRemoteProject(strPath)\r
+{\r
+ if (parent && parent != this && parent.addProject)\r
+ {\r
+ parent.addProject(strPath);\r
+ }\r
+}\r
+\r
+//Redirect page to...\r
+function RedirectTo(strUrl)\r
+{\r
+ if (gstrWindowOption.length != 0) {\r
+ var wnd = window.open(strUrl, "HelpStub", gstrWindowOption);\r
+ // close current window and rename the stub window to current window.\r
+ if (wnd)\r
+ wnd.focus();\r
+ if (parent)\r
+ parent.close();\r
+ }\r
+ else {\r
+ parent.document.location.href = strUrl;\r
+ window.focus();\r
+ }\r
+}\r
+\r
+//Prompt the user that we can not find...\r
+function FailToFind(strMsg)\r
+{\r
+ RedirectToHomePage();\r
+}\r
+\r
+//Find topic by topic number (defined in h file)\r
+function FindTopicByTopicNum(nTopicNum)\r
+{\r
+ var i = 0;\r
+ var iEnd = gArrayCsh.length;\r
+ for (i=0; i<iEnd; i++)\r
+ {\r
+ if (gArrayCsh[i].nTopicNum == nTopicNum)\r
+ {\r
+ var strURL = gArrayCsh[i].strUrl;\r
+ if (gbWithNavPane)\r
+ {\r
+ var strHomePage = getHomePage();\r
+ if (strHomePage.length != 0)\r
+ strURL = strHomePage + strURL;\r
+ } \r
+ RedirectTo(strURL);\r
+ return true;\r
+ }\r
+ }\r
+ FailToFind("Fail to find topic assocaite with topic number: " + nTopicNum);\r
+ return false;\r
+}\r
+\r
+//Find topic by topic id (alias id defined in ali file)\r
+function GetTopicNumberById(strTopicId)\r
+{\r
+ var i = 0;\r
+ var iEnd = gArrayCsh.length;\r
+ for (i=0; i<iEnd; i++)\r
+ {\r
+ if (gArrayCsh[i].strAliasId.toLowerCase() == strTopicId.toLowerCase())\r
+ {\r
+ return gArrayCsh[i].nTopicNum;\r
+ }\r
+ }\r
+ gstrURL = "";\r
+ return -1;\r
+}\r
+\r
+//Set Context-sensitive help entity...\r
+function SetCsh(n, strAliasId, nTopicNum, strUrl)\r
+{\r
+ gArrayCsh[n] = new CshEntityItem(strAliasId,nTopicNum,strUrl);\r
+}\r
+\r
+\r
+function getHash()\r
+{\r
+ if (parent && parent != this)\r
+ return parent.location.hash;\r
+ else\r
+ return "";\r
+}\r
+//-->\r
+</script>\r
+<script language="javascript">\r
+<!--\r
+\r
+\r
+//-->\r
+</script>\r
+<script language="javascript">\r
+<!--\r
+//Find CSH according to hash string after this page\r
+if (getHash().length > 0)\r
+{\r
+ // VH 05/16/00 now support \r
+ // TopicID=\r
+ // TopicNumber=\r
+ // RemoteURL= \r
+ // and WindowsOptions\r
+ // with the format #a=xxx,b=xxx,c=xxx...\r
+ var strHashString = getHash().toString();\r
+ // change ? to : for remote URL. because java applet have some problem to pass a URL with two : inside the URL so we changed it. \r
+ // so here need to change it back.\r
+ strHashString = strHashString.substring(1,strHashString.length);\r
+ strHashString = strHashString.replace("%072%057%057", "://");\r
+ var nTopicNum = GetTopicNumber(strHashString);\r
+\r
+ if (nTopicNum != -1)\r
+ {\r
+ FindTopicByTopicNum(nTopicNum);\r
+ }\r
+ else\r
+ {\r
+ if (gstrURL.length > 0) \r
+ RedirectTo(gstrURL);\r
+ else\r
+ RedirectToHomePage();\r
+ }\r
+}\r
+else\r
+{\r
+ RedirectToHomePage();\r
+}\r
+//-->\r
+</script>\r
+<noscript>\r
+ <p> Your browser does not support JavaScript. WebHelp Context-Sensitive Help requires JavaScript support to run.</p>\r
+</noscript>\r
+</body>\r
+</html>\r
+\r
+\r
+\r
+\r
+\r
+\r
--- /dev/null
+<html>\r
+<head>\r
+<title>SALOME reference manual</title>\r
+<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
+<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">\r
+<meta name "description" content="WebHelp 2002">\r
+</head>\r
+<body>\r
+<script language="JavaScript">\r
+<!--\r
+\r
+var gArrayCsh = new Array();\r
+\r
+var gstrWindowOption = "";\r
+var gstrURL = "";\r
+var gbWithNavPane = false;\r
+\r
+function CshEntityItem(strAliasId, nTopicNum, strUrl) \r
+{\r
+ this.strAliasId = strAliasId;\r
+ this.nTopicNum = nTopicNum;\r
+ this.strUrl = strUrl;\r
+}\r
+\r
+\r
+//Try to get to topic number from hash string\r
+function GetTopicNumberAuto(strMayBeNumber)\r
+{\r
+ var nNum = -1;\r
+ if (strMayBeNumber.length >= 1)\r
+ {\r
+ var strTmp = strMayBeNumber;\r
+ var iEnd = strTmp.length;\r
+ for (var i=0; i<iEnd; i++)\r
+ {\r
+ var ch = strTmp.charAt(i);\r
+ if (!((ch == "0") || (ch == "1") ||\r
+ (ch == "2") || (ch == "3") ||\r
+ (ch == "4") || (ch == "5") ||\r
+ (ch == "6") || (ch == "7") ||\r
+ (ch == "8") || (ch == "9")))\r
+ return GetTopicNumberById(strTmp);\r
+ }\r
+ nNum = parseInt(strTmp);\r
+ }\r
+ return nNum;\r
+}\r
+\r
+function GetTopicNumber(strHashString)\r
+{\r
+ var nTopicEndPos = strHashString.indexOf(',')\r
+ if (nTopicEndPos == -1) { // no window option.\r
+ return GetTopicNumberOnly(strHashString);\r
+ }\r
+ else {\r
+ var strWindowOption = strHashString.substring(nTopicEndPos + 1, strHashString.length);\r
+ var strWithNavPane = 'withnavpane=true';\r
+ if (strWindowOption.toLowerCase().indexOf(strWithNavPane) == 0)\r
+ {\r
+ if (strWindowOption.length > strWithNavPane.length)\r
+ gstrWindowOption = strWindowOption.substring(strWithNavPane.length + 1);\r
+ else\r
+ gstrWindowOption = "";\r
+ gbWithNavPane = true;\r
+ }\r
+ else\r
+ gstrWindowOption = strWindowOption;\r
+ return GetTopicNumberOnly(strHashString.substring(0, nTopicEndPos)); \r
+ }\r
+}\r
+\r
+function GetTopicNumberOnly(strTopicString)\r
+{\r
+ var nEqualPos = strTopicString.indexOf('=');\r
+ if (nEqualPos == -1) {\r
+ return GetTopicNumberAuto(strTopicString);\r
+ }\r
+ else {\r
+ var strValue=strTopicString.substring(nEqualPos + 1, strTopicString.length);\r
+ if (strTopicString.toLowerCase().indexOf("topicnumber") == 0) {\r
+ return parseInt(strValue);\r
+ } else if (strTopicString.toLowerCase().indexOf("topicid") == 0) {\r
+ return GetTopicNumberById(strValue);\r
+ } else if (strTopicString.toLowerCase().indexOf("remoteurl") == 0) {\r
+ gstrURL = strValue;\r
+ return -1;\r
+ }\r
+\r
+ }\r
+}\r
+\r
+//Find HomePage of the WebHelp system\r
+// we try to get the topic from remote project if it exists.\r
+function RedirectToHomePage()\r
+{\r
+ if (parent && parent != this && parent.goNext)\r
+ {\r
+ var sHome = parent.goNext();\r
+ if (sHome != "")\r
+ RedirectTo(sHome);\r
+ }\r
+}\r
+\r
+function getHomePage()\r
+{\r
+ if (parent && parent != this && parent.getRelHomePage)\r
+ {\r
+ return parent.getRelHomePage(document.location.href);\r
+ }\r
+ return "";\r
+}\r
+\r
+function addRemoteProject(strPath)\r
+{\r
+ if (parent && parent != this && parent.addProject)\r
+ {\r
+ parent.addProject(strPath);\r
+ }\r
+}\r
+\r
+//Redirect page to...\r
+function RedirectTo(strUrl)\r
+{\r
+ if (gstrWindowOption.length != 0) {\r
+ var wnd = window.open(strUrl, "HelpStub", gstrWindowOption);\r
+ // close current window and rename the stub window to current window.\r
+ wnd.focus();\r
+ if (parent)\r
+ parent.close();\r
+ }\r
+ else {\r
+ parent.document.location.href = strUrl;\r
+ window.focus();\r
+ }\r
+}\r
+\r
+//Prompt the user that we can not find...\r
+function FailToFind(strMsg)\r
+{\r
+ RedirectToHomePage();\r
+}\r
+\r
+//Find topic by topic number (defined in h file)\r
+function FindTopicByTopicNum(nTopicNum)\r
+{\r
+ var i = 0;\r
+ var iEnd = gArrayCsh.length;\r
+ for (i=0; i<iEnd; i++)\r
+ {\r
+ if (gArrayCsh[i].nTopicNum == nTopicNum)\r
+ {\r
+ var strURL = gArrayCsh[i].strUrl;\r
+ if (gbWithNavPane)\r
+ {\r
+ var strHomePage = getHomePage();\r
+ if (strHomePage.length != 0)\r
+ strURL = strHomePage + strURL;\r
+ } \r
+ RedirectTo(strURL);\r
+ return true;\r
+ }\r
+ }\r
+ FailToFind("Fail to find topic assocaite with topic number: " + nTopicNum);\r
+ return false;\r
+}\r
+\r
+//Find topic by topic id (alias id defined in ali file)\r
+function GetTopicNumberById(strTopicId)\r
+{\r
+ var i = 0;\r
+ var iEnd = gArrayCsh.length;\r
+ for (i=0; i<iEnd; i++)\r
+ {\r
+ if (gArrayCsh[i].strAliasId == strTopicId)\r
+ {\r
+ return gArrayCsh[i].nTopicNum;\r
+ }\r
+ }\r
+ gstrURL = "";\r
+ return -1;\r
+}\r
+\r
+//Set Context-sensitive help entity...\r
+function SetCsh(n, strAliasId, nTopicNum, strUrl)\r
+{\r
+ gArrayCsh[n] = new CshEntityItem(strAliasId,nTopicNum,strUrl);\r
+}\r
+\r
+\r
+function getHash()\r
+{\r
+ if (parent && parent != this)\r
+ return parent.location.hash;\r
+ else\r
+ return "";\r
+}\r
+//-->\r
+</script>\r
+<script language="javascript">\r
+<!--\r
+\r
+\r
+//-->\r
+</script>\r
+<script language="javascript">\r
+<!--\r
+//Find CSH according to hash string after this page\r
+if (getHash().length > 0)\r
+{\r
+ // VH 05/16/00 now support \r
+ // TopicID=\r
+ // TopicNumber=\r
+ // RemoteURL= \r
+ // and WindowsOptions\r
+ // with the format #a=xxx,b=xxx,c=xxx...\r
+ var strHashString = getHash().toString();\r
+ // change ? to : for remote URL. because java applet have some problem to pass a URL with two : inside the URL so we changed it. \r
+ // so here need to change it back.\r
+ strHashString = strHashString.substring(1,strHashString.length);\r
+ strHashString = strHashString.replace("%072%057%057", "://");\r
+ var nTopicNum = GetTopicNumber(strHashString);\r
+\r
+ if (nTopicNum != -1)\r
+ {\r
+ FindTopicByTopicNum(nTopicNum);\r
+ }\r
+ else\r
+ {\r
+ if (gstrURL.length > 0) \r
+ RedirectTo(gstrURL);\r
+ else\r
+ RedirectToHomePage();\r
+ }\r
+}\r
+else\r
+{\r
+ RedirectToHomePage();\r
+}\r
+//-->\r
+</script>\r
+<noscript>\r
+ <p> Your browser does not support JavaScript. WebHelp Context-Sensitive Help requires JavaScript support to run.</p>\r
+</noscript>\r
+</body>\r
+</html>\r
+\r
+\r
+\r
+\r
+\r
+\r
--- /dev/null
+/*=(===============================================================)*/\r
+\r
+/*=(===============================================================)*/\r
+/*=(Created with RoboEditor.)=======================================*/\r
+/*=(===============================================================)*/\r
+\r
+BODY {\r
+ background-color: #ffffff;\r
+ font-family: "Times New Roman", serif;\r
+}\r
+\r
+H1 {\r
+ font-weight: bold;\r
+ font-size: 24.0pt;\r
+}\r
+\r
+/*=(Generated Code)=================================================*/\r
+/*=(WARNING: DO NOT EDIT OR DELETE THIS SECTION!)===================*/\r
+/*begin!kadov{{=====================================================*/ \r
+LI.kadov-H1 {\r
+ font-weight: bold;\r
+ font-size: 24.0pt;\r
+}\r
+/*}}end!kadov=======================================================*/ \r
+\r
+\r
+\r
+H2 {\r
+ font-weight: bold;\r
+ font-size: 18.0pt;\r
+}\r
+\r
+/*=(Generated Code)=================================================*/\r
+/*=(WARNING: DO NOT EDIT OR DELETE THIS SECTION!)===================*/\r
+/*begin!kadov{{=====================================================*/ \r
+LI.kadov-H2 {\r
+ font-weight: bold;\r
+ font-size: 18.0pt;\r
+}\r
+/*}}end!kadov=======================================================*/ \r
+\r
+\r
+\r
+H3 {\r
+ font-weight: bold;\r
+ font-size: 14.0pt;\r
+}\r
+\r
+/*=(Generated Code)=================================================*/\r
+/*=(WARNING: DO NOT EDIT OR DELETE THIS SECTION!)===================*/\r
+/*begin!kadov{{=====================================================*/ \r
+LI.kadov-H3 {\r
+ font-weight: bold;\r
+ font-size: 14.0pt;\r
+}\r
+/*}}end!kadov=======================================================*/ \r
+\r
+\r
+\r
+H4 {\r
+ font-weight: bold;\r
+ font-size: 12.0pt;\r
+}\r
+\r
+/*=(Generated Code)=================================================*/\r
+/*=(WARNING: DO NOT EDIT OR DELETE THIS SECTION!)===================*/\r
+/*begin!kadov{{=====================================================*/ \r
+LI.kadov-H4 {\r
+ font-weight: bold;\r
+ font-size: 12.0pt;\r
+}\r
+/*}}end!kadov=======================================================*/ \r
+\r
+\r
+\r
+H5 {\r
+ font-weight: bold;\r
+ font-size: 10.0pt;\r
+}\r
+\r
+/*=(Generated Code)=================================================*/\r
+/*=(WARNING: DO NOT EDIT OR DELETE THIS SECTION!)===================*/\r
+/*begin!kadov{{=====================================================*/ \r
+LI.kadov-H5 {\r
+ font-weight: bold;\r
+ font-size: 10.0pt;\r
+}\r
+/*}}end!kadov=======================================================*/ \r
+\r
+\r
+\r
+H6 {\r
+ font-weight: bold;\r
+ font-size: 8.0pt;\r
+}\r
+\r
+/*=(Generated Code)=================================================*/\r
+/*=(WARNING: DO NOT EDIT OR DELETE THIS SECTION!)===================*/\r
+/*begin!kadov{{=====================================================*/ \r
+LI.kadov-H6 {\r
+ font-weight: bold;\r
+ font-size: 8.0pt;\r
+}\r
+/*}}end!kadov=======================================================*/ \r
+\r
+\r
+\r
+P {\r
+ font-size: 12.0pt;\r
+ margin-top: 0pt;\r
+ margin-bottom: 0pt;\r
+}\r
+\r
+/*=(Generated Code)=================================================*/\r
+/*=(WARNING: DO NOT EDIT OR DELETE THIS SECTION!)===================*/\r
+/*begin!kadov{{=====================================================*/ \r
+LI.kadov-P {\r
+ font-size: 12.0pt;\r
+}\r
+/*}}end!kadov=======================================================*/ \r
+\r
+\r
+\r
+A.expandspot {\r
+ color: #008000;\r
+ cursor: hand;\r
+ font-style: italic;\r
+ x-text-underline: off;\r
+ x-text-overline: off;\r
+ x-text-line-through: off;\r
+ /*begin!kadov{{*/ text-decoration: none none none; /*}}end!kadov*/ \r
+}\r
+\r
+SPAN.expandtext {\r
+ font-style: italic;\r
+ font-weight: normal;\r
+ color: #ff0000;\r
+}\r
+\r
+A.dropspot {\r
+ cursor: hand;\r
+ color: #008000;\r
+ font-style: italic;\r
+ x-text-underline: off;\r
+ x-text-overline: off;\r
+ x-text-line-through: off;\r
+ /*begin!kadov{{*/ text-decoration: none none none; /*}}end!kadov*/ \r
+}\r
+\r
+A.glossterm {\r
+ color: #800000;\r
+ cursor: hand;\r
+ font-style: italic;\r
+ x-text-underline: off;\r
+ x-text-overline: off;\r
+ x-text-line-through: off;\r
+ /*begin!kadov{{*/ text-decoration: none none none; /*}}end!kadov*/ \r
+}\r
+\r
+SPAN.glosstext {\r
+ font-style: italic;\r
+ font-weight: normal;\r
+ color: #0000ff;\r
+}\r
+\r
+OL,\r
+UL {\r
+ margin-top: 0px;\r
+ margin-bottom: 0px;\r
+}\r
+\r
+A:active {\r
+}\r
+\r
+A:hover {\r
+ x-text-underline: Off;\r
+ /*begin!kadov{{*/ text-decoration: none; /*}}end!kadov*/ \r
+}\r
+\r
+A:link {\r
+ x-text-underline: Off;\r
+ /*begin!kadov{{*/ text-decoration: none; /*}}end!kadov*/ \r
+}\r
+\r
+A:visited {\r
+ x-text-underline: Off;\r
+ /*begin!kadov{{*/ text-decoration: none; /*}}end!kadov*/ \r
+}\r
+\r
+P.TODO {\r
+ font-weight: normal;\r
+ font-style: italic;\r
+ font-family: "Arial Black", sans-serif;\r
+}\r
+\r
+/*=(Generated Code)=================================================*/\r
+/*=(WARNING: DO NOT EDIT OR DELETE THIS SECTION!)===================*/\r
+/*begin!kadov{{=====================================================*/ \r
+LI.kadov-P-CTODO {\r
+ font-weight: normal;\r
+ font-style: italic;\r
+ font-family: "Arial Black", sans-serif;\r
+}\r
+/*}}end!kadov=======================================================*/ \r
+\r
+\r
+\r
+\r
+/*=(===============================================================)*/\r
--- /dev/null
+<?xml version="1.0"?>\r
+<sqwebskin version="1.0">\r
+ <summary>\r
+ <skinname>Default</skinname>\r
+ <defaulttab>Contents</defaulttab>\r
+ <font>font-family:Arial font-size:8pt font-weight:normal font-style:normal text-decoration:none font-sizeadjust:none font-stretch:normal font-variant:normal</font>\r
+ <color></color>\r
+ </summary>\r
+ <panesummary>\r
+ <![CDATA[\r
+<frameset rows="32,*" >\r
+<frame name="Custom Toolbar Pane" noresize="yes" scrolling="no" id="3" />\r
+<frameset cols="220,*" frameborder="1" borderspace="0" >\r
+<frameset rows="24,*" >\r
+<frame name="MiniBar Pane" marginwidth="-1" scrolling="no" id="6" />\r
+<frame name="Navigation Pane" id="2" />\r
+</frameset>\r
+<frame name="Topic Pane" frameborder="1" borderspace="1" bordercolor="Gray" marginwidth="-1" marginheight="-1" id="4" />\r
+</frameset>\r
+</frameset>\r
+]]>\r
+ </panesummary>\r
+ <frameset rows="32,*">\r
+ <frame name="Custom Toolbar Pane" noresize="yes" scrolling="no" id="3"/>\r
+ <frameset cols="220,*" frameborder="1" borderspace="0">\r
+ <frameset rows="24,*">\r
+ <frame name="MiniBar Pane" marginwidth="-1" scrolling="no" id="6"/>\r
+ <frame name="Navigation Pane" id="2"/>\r
+ </frameset>\r
+ <frame name="Topic Pane" frameborder="1" borderspace="1" bordercolor="Gray" marginwidth="-1" marginheight="-1" id="4"/>\r
+ </frameset>\r
+ </frameset>\r
+ <pane name="Custom Toolbar Pane">\r
+ <image></image>\r
+ <color>background:#99ccff</color>\r
+ <font>font-family:Tahoma font-size:8pt font-weight:Normal font-style:Normal text-decoration:none font-sizeadjust:none font-stretch:normal font-variant:normal font-color:Black</font>\r
+ <btnselected>\r
+ <color>background:#639ace</color>\r
+ <font>font-family:Tahoma font-size:8pt font-weight:Normal font-style:Normal text-decoration:none font-sizeadjust:none font-stretch:normal font-variant:normal font-color:White</font>\r
+ </btnselected>\r
+ <alignment>left</alignment>\r
+ <toolbaritem mode="BtnWithIcon Mode" type="built-in-content" id="1">\r
+ <name>Contents</name>\r
+ <text>::??DefaultWebSkinText??::</text>\r
+ <color></color>\r
+ <image></image>\r
+ <icontype>default</icontype>\r
+ <selected>\r
+ <color></color>\r
+ <image></image>\r
+ <icontype>default</icontype>\r
+ </selected>\r
+ <style>100</style>\r
+ </toolbaritem>\r
+ <toolbaritem mode="BtnWithIcon Mode" type="built-in-index" id="2">\r
+ <name>Index</name>\r
+ <text>::??DefaultWebSkinText??::</text>\r
+ <color></color>\r
+ <image></image>\r
+ <icontype>default</icontype>\r
+ <selected>\r
+ <color></color>\r
+ <image></image>\r
+ <icontype>default</icontype>\r
+ </selected>\r
+ <style>100</style>\r
+ </toolbaritem>\r
+ <toolbaritem mode="BtnWithIcon Mode" type="built-in-search" id="3">\r
+ <name>Search</name>\r
+ <text>::??DefaultWebSkinText??::</text>\r
+ <color></color>\r
+ <image></image>\r
+ <icontype>default</icontype>\r
+ <selected>\r
+ <color></color>\r
+ <image></image>\r
+ <icontype>default</icontype>\r
+ </selected>\r
+ <style>100</style>\r
+ </toolbaritem>\r
+ <toolbaritem mode="BtnWithIcon Mode" type="built-in-glossary" id="4">\r
+ <name>Glossary</name>\r
+ <text>::??DefaultWebSkinText??::</text>\r
+ <color></color>\r
+ <image></image>\r
+ <icontype>default</icontype>\r
+ <selected>\r
+ <color></color>\r
+ <image></image>\r
+ <icontype>default</icontype>\r
+ </selected>\r
+ <style>100</style>\r
+ </toolbaritem>\r
+ <toolbaritem mode="BtnWithIcon Mode" type="built-in-websearch" id="5">\r
+ <name>WebSearch</name>\r
+ <text>::??DefaultWebSkinText??::</text>\r
+ <color></color>\r
+ <image></image>\r
+ <icontype>default</icontype>\r
+ <selected>\r
+ <color></color>\r
+ <image></image>\r
+ <icontype>default</icontype>\r
+ </selected>\r
+ <style>100</style>\r
+ </toolbaritem>\r
+ <toolbaritem mode="Form Mode" type="built-in-form" id="6">\r
+ <name>Search Input</name>\r
+ <image></image>\r
+ <color></color>\r
+ <textbox width="20"/>\r
+ <title>\r
+ <text></text>\r
+ </title>\r
+ <button mode="default graphic mode">\r
+ </button>\r
+ </toolbaritem>\r
+ <toolbaritem mode="Logo Mode" type="built-in-logo" id="7">\r
+ <name>Logo</name>\r
+ <image></image>\r
+ <author>eHelp Corporation</author>\r
+ </toolbaritem>\r
+ </pane>\r
+ <pane name="MiniBar Pane">\r
+ <image></image>\r
+ <color>background:#99ccff</color>\r
+ <font>font-family:Tahoma font-size:8pt font-weight:Normal font-style:Normal text-decoration:none font-sizeadjust:none font-stretch:normal font-variant:normal font-color:Black</font>\r
+ <btnselected>\r
+ <color>background:#639ace</color>\r
+ <font>font-family:Tahoma font-size:8pt font-weight:Normal font-style:Normal text-decoration:none font-sizeadjust:none font-stretch:normal font-variant:normal font-color:White</font>\r
+ </btnselected>\r
+ <toolbaritem mode="BtnWithIcon Mode" type="built-in-previous" id="8">\r
+ <name>Previous</name>\r
+ <text>::??DefaultWebSkinText??::</text>\r
+ <color></color>\r
+ <image></image>\r
+ <icontype>default</icontype>\r
+ <selected>\r
+ <color></color>\r
+ <image></image>\r
+ <icontype>default</icontype>\r
+ </selected>\r
+ <style>100</style>\r
+ </toolbaritem>\r
+ <toolbaritem mode="BtnWithIcon Mode" type="built-in-next" id="9">\r
+ <name>Next</name>\r
+ <text>::??DefaultWebSkinText??::</text>\r
+ <color></color>\r
+ <image></image>\r
+ <icontype>default</icontype>\r
+ <selected>\r
+ <color></color>\r
+ <image></image>\r
+ <icontype>default</icontype>\r
+ </selected>\r
+ <style>100</style>\r
+ </toolbaritem>\r
+ <toolbaritem mode="BtnWithIcon Mode" type="built-in-synctoc" id="10">\r
+ <name>Sync TOC</name>\r
+ <text>::??DefaultWebSkinText??::</text>\r
+ <color></color>\r
+ <image></image>\r
+ <icontype>default</icontype>\r
+ <selected>\r
+ <color></color>\r
+ <image></image>\r
+ <icontype>default</icontype>\r
+ </selected>\r
+ <style>100</style>\r
+ </toolbaritem>\r
+ <toolbaritem mode="BtnWithIcon Mode" type="built-in-hide" id="11">\r
+ <name>Hide</name>\r
+ <text>::??DefaultWebSkinText??::</text>\r
+ <color></color>\r
+ <image></image>\r
+ <icontype>default</icontype>\r
+ <selected>\r
+ <color></color>\r
+ <image></image>\r
+ <icontype>default</icontype>\r
+ </selected>\r
+ <style>100</style>\r
+ </toolbaritem>\r
+ </pane>\r
+ <pane name="Navigation Pane">\r
+ <image></image>\r
+ <color></color>\r
+ <label>\r
+ <image></image>\r
+ <color></color>\r
+ </label>\r
+ <subpane name="Contents">\r
+ <image></image>\r
+ <color>background:White alink:Silver hover-color:Navy</color>\r
+ <font>font-family:Tahoma font-size:8pt font-weight:Normal font-style:Normal text-decoration:none font-sizeadjust:none font-stretch:normal font-variant:normal font-color:Black</font>\r
+ </subpane>\r
+ <subpane name="Index">\r
+ <image></image>\r
+ <color>background:White alink:Silver hover-color:Navy</color>\r
+ <font>font-family:Tahoma font-size:8pt font-weight:Normal font-style:Normal text-decoration:none font-sizeadjust:none font-stretch:normal font-variant:normal font-color:Black</font>\r
+ <inputbox>\r
+ <image></image>\r
+ <color>background:White</color>\r
+ <textbox width="0"/>\r
+ <title>\r
+ <text>::??DefaultWebSkinText??::</text>\r
+ <font>font-family:Tahoma font-size:8pt font-weight:Normal font-style:Normal text-decoration:none font-sizeadjust:none font-stretch:normal font-variant:normal font-color:Navy</font>\r
+ </title>\r
+ <button mode="none">\r
+ </button>\r
+ </inputbox>\r
+ </subpane>\r
+ <subpane name="Search">\r
+ <image></image>\r
+ <color>background:White alink:Silver hover-color:Navy</color>\r
+ <font>font-family:Tahoma font-size:8pt font-weight:Normal font-style:Normal text-decoration:none font-sizeadjust:none font-stretch:normal font-variant:normal font-color:Black</font>\r
+ <inputbox>\r
+ <image></image>\r
+ <color>background:White</color>\r
+ <textbox width="0"/>\r
+ <title>\r
+ <text>::??DefaultWebSkinText??::</text>\r
+ <font>font-family:Tahoma font-size:8pt font-weight:Normal font-style:Normal text-decoration:none font-sizeadjust:none font-stretch:normal font-variant:normal font-color:Navy</font>\r
+ </title>\r
+ <button mode="default graphic mode">\r
+ </button>\r
+ </inputbox>\r
+ </subpane>\r
+ <subpane name="Glossary">\r
+ <image></image>\r
+ <color>background:White alink:Silver hover-color:Navy</color>\r
+ <font>font-family:Tahoma font-size:8pt font-weight:Normal font-style:Normal text-decoration:none font-sizeadjust:none font-stretch:normal font-variant:normal font-color:Black</font>\r
+ <definitiontext>\r
+ <text>::??DefaultWebSkinText??::</text>\r
+ <font>font-family:Tahoma font-size:8pt font-weight:Normal font-style:Normal text-decoration:none font-sizeadjust:none font-stretch:normal font-variant:normal font-color:Navy</font>\r
+ <color>background:White</color>\r
+ <image></image>\r
+ </definitiontext>\r
+ <definition>\r
+ <text>::??DefaultWebSkinText??::</text>\r
+ <color></color>\r
+ <image></image>\r
+ </definition>\r
+ <termtext>\r
+ <text>::??DefaultWebSkinText??::</text>\r
+ <font>font-family:Tahoma font-size:8pt font-weight:Normal font-style:Normal text-decoration:none font-sizeadjust:none font-stretch:normal font-variant:normal font-color:Navy</font>\r
+ <color>background:White</color>\r
+ <image></image>\r
+ </termtext>\r
+ <term>\r
+ <text>::??DefaultWebSkinText??::</text>\r
+ <color></color>\r
+ <image></image>\r
+ </term>\r
+ </subpane>\r
+ </pane>\r
+ <pane name="Topic Pane">\r
+ <in-topic-navbar>\r
+ <alignment>none</alignment>\r
+ </in-topic-navbar>\r
+ </pane>\r
+</sqwebskin>\r
--- /dev/null
+BODY { \r
+ background-color:#ffffff; \r
+ font-family:"Times New Roman" , serif; }\r
+H1 { \r
+ font-weight:bold; \r
+ font-size:24.0pt; \r
+ font-family:"Times New Roman" , serif; }\r
+LI.kadov-H1 { \r
+ font-weight:bold; \r
+ font-size:24.0pt; }\r
+H2 { \r
+ font-weight:bold; \r
+ font-size:18.0pt; \r
+ font-family:"Times New Roman" , serif; }\r
+LI.kadov-H2 { \r
+ font-weight:bold; \r
+ font-size:18.0pt; }\r
+H3 { \r
+ font-weight:bold; \r
+ font-size:14.0pt; \r
+ font-family:"Times New Roman" , serif; }\r
+LI.kadov-H3 { \r
+ font-weight:bold; \r
+ font-size:14.0pt; }\r
+H4 { \r
+ font-weight:bold; \r
+ font-size:12.0pt; \r
+ font-family:"Times New Roman" , serif; }\r
+LI.kadov-H4 { \r
+ font-weight:bold; \r
+ font-size:12.0pt; }\r
+H5 { \r
+ font-weight:bold; \r
+ font-size:10.0pt; \r
+ font-family:"Times New Roman" , serif; }\r
+LI.kadov-H5 { \r
+ font-weight:bold; \r
+ font-size:10.0pt; }\r
+H6 { \r
+ font-weight:bold; \r
+ font-size:8.0pt; \r
+ font-family:"Times New Roman" , serif; }\r
+LI.kadov-H6 { \r
+ font-weight:bold; \r
+ font-size:8.0pt; }\r
+P { \r
+ font-size:12.0pt; \r
+ margin-top:1; \r
+ margin-bottom:1; \r
+ font-family:"Times New Roman" , serif; }\r
+LI.kadov-P { \r
+ font-size:12.0pt; }\r
+A.expandspot { \r
+ color:#008000; \r
+ cursor:hand; \r
+ font-style:italic; \r
+ x-text-underline:off; \r
+ x-text-overline:off; \r
+ x-text-line-through:off; \r
+ text-decoration:none none none; }\r
+SPAN.expandtext { \r
+ font-style:italic; \r
+ font-weight:normal; \r
+ color:#ff0000; }\r
+A.dropspot { \r
+ cursor:hand; \r
+ color:#008000; \r
+ font-style:italic; \r
+ x-text-underline:off; \r
+ x-text-overline:off; \r
+ x-text-line-through:off; \r
+ text-decoration:none none none; }\r
+A.glossterm { \r
+ color:#800000; \r
+ cursor:hand; \r
+ font-style:italic; \r
+ x-text-underline:off; \r
+ x-text-overline:off; \r
+ x-text-line-through:off; \r
+ text-decoration:none none none; }\r
+SPAN.glosstext { \r
+ font-style:italic; \r
+ font-weight:normal; \r
+ color:#0000ff; }\r
+OL { \r
+ margin-top:0px; \r
+ margin-bottom:0px; \r
+ font-family:"Times New Roman" , serif; }\r
+UL { \r
+ margin-top:0px; \r
+ margin-bottom:0px; \r
+ font-family:"Times New Roman" , serif; }\r
+A:active { }\r
+A:hover { \r
+ x-text-underline:Off; \r
+ text-decoration:none; }\r
+A:link { \r
+ x-text-underline:Off; \r
+ text-decoration:none; }\r
+A:visited { \r
+ x-text-underline:Off; \r
+ text-decoration:none; }\r
+P.TODO { \r
+ font-weight:normal; \r
+ font-style:italic; \r
+ font-family:"Arial Black" , sans-serif; }\r
+LI.kadov-P-CTODO { \r
+ font-weight:normal; \r
+ font-style:italic; \r
+ font-family:"Arial Black" , sans-serif; }\r
+ol ol { \r
+ margin-top:1; \r
+ margin-bottom:1; }\r
+ol ul { \r
+ margin-top:1; \r
+ margin-bottom:1; }\r
+ul ul { \r
+ margin-top:1; \r
+ margin-bottom:1; }\r
+ul ol { \r
+ margin-top:1; \r
+ margin-bottom:1; }\r
--- /dev/null
+// eHelp® Corporation Dynamic HTML JavaScript \r
+// Copyright© 1998-2001 eHelp® Corporation.All rights reserved.\r
+// Version=4.57\r
+\r
+// Warning:Do not modify this file.It is generated by RoboHELP® and changes will be overwritten.\r
+\r
+//// Segment Begin -- (JavaScript 1.0)\r
+\r
+/// Section Begin - General and relative topics(JavaScript 1.0)\r
+\r
+//{{HH_SYMBOL_SECTION\r
+var HH_ChmFilename = "";\r
+var HH_WindowName = "";\r
+var HH_GlossaryFont = "";\r
+var HH_Glossary = "";\r
+var HH_Avenue = "";\r
+var HH_ActiveX = false;\r
+//}}HH_SYMBOL_SECTION\r
+\r
+//Begin to support previous generic parameters\r
+//Get the information about the browser.\r
+var gstrBsAgent = navigator.userAgent.toLowerCase();\r
+var gnBsVer = parseInt(navigator.appVersion);\r
+\r
+var gbBsIE = (gstrBsAgent.indexOf('msie') != -1);\r
+var gbBsNS = (gstrBsAgent.indexOf('mozilla') != -1) && ((gstrBsAgent.indexOf('spoofer') == -1) && (gstrBsAgent.indexOf('compatible') == -1));\r
+var gbBsOpera = (gstrBsAgent.indexOf('opera') != -1);\r
+\r
+var gbBsIE3Before = ((gbBsIE) && (gnBsVer <= 2));\r
+var gbBsNS3Before = ((gbBsNS) && (gnBsVer <= 3));\r
+\r
+var gbBsNS2 = ((gbBsNS) && (gnBsVer <= 2));\r
+var gbBsNS3 = ((gbBsNS) && (gnBsVer == 3));\r
+var gbBsIE300301 = ((gbBsIE) && (gnBsVer == 2) && ((gstrBsAgent.indexOf("3.00") != -1)||(gstrBsAgent.indexOf("3.0a") != -1)||(gstrBsAgent.indexOf("3.0b")!=-1)||(gstrBsAgent.indexOf("3.01")!=-1)));\r
+var gbBsIE302 = ((gbBsIE) && (gnBsVer == 2) && (gstrBsAgent.indexOf("3.02") != -1));\r
+\r
+var gbBsNS4 = ((gbBsNS) && (gnBsVer >= 4));\r
+var gbBsNS6 = ((gbBsNS) && (gnBsVer >= 5));\r
+\r
+var gbBsIE4 = ((gbBsIE) && (gnBsVer >= 4));\r
+var gbBsIE5 = false;\r
+var gbBsIE55 = false;\r
+\r
+gbBsIE = (navigator.appName.indexOf("Microsoft") != -1);\r
+\r
+if (parseInt(navigator.appVersion) >= 4) {\r
+ gbBsIE4 = (navigator.appName.indexOf("Microsoft") != -1);\r
+\r
+ if (gbBsIE4) {\r
+ var nPos = gstrBsAgent.indexOf("msie");\r
+ var strIEversion = gstrBsAgent.substring(nPos + 5);\r
+ var nVersion = parseFloat(strIEversion);\r
+ if (nVersion >= 5)\r
+ gbBsIE5 = true;\r
+ if (nVersion >= 5.5)\r
+ gbBsIE55 = true;\r
+ }\r
+}\r
+\r
+var gbBsMac = (gstrBsAgent.indexOf('mac') != -1);\r
+var gbBsWindows = ((gstrBsAgent.indexOf('win') != -1) || (gstrBsAgent.indexOf('16bit') != -1));\r
+var gbBsOp3 = (gstrBsAgent.indexOf('opera') != -1);\r
+\r
+// Utilities functions.\r
+function BsscHasExtJs()\r
+{\r
+ if( gbBsIE3Before || gbBsNS3Before)\r
+ return false;\r
+ return true;\r
+}\r
+\r
+// Register event handler\r
+var gBsOnLoads = new Array(); // An array holds all the onload event handler.\r
+var gBsOnClicks = new Array(); // An array holds all the onClick event handler.\r
+var gBsOnUnLoads = new Array(); // An array holds all the OnUnLoad event handler.\r
+var gBsOnMouseOvers = new Array(); // An array holds all the OnMouseOver event handler.\r
+var gBsOnMouseOuts = new Array(); // An array holds all the OnMouseOut event handler.\r
+\r
+var gbOrignalOnMouseDown = null;\r
+\r
+function BsscRegisterOnLoad(funcHandler)\r
+{\r
+ var nLength = gBsOnLoads.length;\r
+ gBsOnLoads[nLength] = funcHandler;\r
+}\r
+\r
+function BsscRegisterOnClick(funcHandler)\r
+{\r
+ var nLength = gBsOnClicks.length;\r
+ gBsOnClicks[nLength] = funcHandler;\r
+}\r
+\r
+function BsscRegisterOnUnLoad(funcHandler)\r
+{\r
+ var nLength = gBsOnUnLoads.length;\r
+ gBsOnUnLoads[nLength] = funcHandler;\r
+}\r
+\r
+function BsscRegisterOnMouseOver(funcHandler)\r
+{\r
+ var nLength = gBsOnMouseOvers.length;\r
+ gBsOnMouseOvers[nLength] = funcHandler;\r
+}\r
+\r
+function BsscRegisterOnMouseOut(funcHandler)\r
+{\r
+ var nLength = gBsOnMouseOuts.length;\r
+ gBsOnMouseOuts[nLength] = funcHandler;\r
+}\r
+\r
+\r
+function BsGeneralOnLoad()\r
+{\r
+ if (!gbBsIE4 && !gbBsNS4)\r
+ return;\r
+\r
+ // Make everything visible in navigator\r
+ if (gbBsNS4 && !gbBsNS6) {\r
+ // Make some special effects items visible\r
+ for (var iLayer = 0; iLayer < document.layers.length; iLayer++) {\r
+ document.layers[iLayer].visibility = "show";\r
+ document.layers[iLayer].left = 0;\r
+ }\r
+ }\r
+}\r
+\r
+// If resize the netscape browser, need to reload it.\r
+function BsReDo()\r
+{\r
+ if (innerWidth != origWidth || innerHeight != origHeight)\r
+ location.reload();\r
+}\r
+// End of the local functions.\r
+\r
+// The following functions are used by the html files.\r
+function BSSCOnLoad()\r
+{\r
+ if( !BsscHasExtJs() )\r
+ return;\r
+ for (var nElement = gBsOnLoads.length - 1; nElement >= 0; nElement--)\r
+ gBsOnLoads[nElement]();\r
+}\r
+\r
+function BSSCOnClick()\r
+{\r
+ if (!BsscHasExtJs()) return;\r
+ \r
+ for (var nElement = gBsOnClicks.length - 1; nElement >= 0; nElement--)\r
+ gBsOnClicks[nElement]();\r
+}\r
+\r
+function BSSCOnUnload()\r
+{\r
+ if (!BsscHasExtJs()) return;\r
+ for (var nElement = gBsOnUnLoads.length - 1; nElement >= 0; nElement--)\r
+ {\r
+ gBsOnUnLoads[nElement]();\r
+ }\r
+}\r
+\r
+function BSSCOnMouseOver()\r
+{\r
+ if (!BsscHasExtJs()) return;\r
+ for (var nElement = gBsOnMouseOvers.length - 1; nElement >= 0; nElement--)\r
+ {\r
+ gBsOnMouseOvers[nElement]();\r
+ }\r
+}\r
+\r
+function BSSCOnMouseOut()\r
+{\r
+ if (!BsscHasExtJs()) return;\r
+ for (var nElement = gBsOnMouseOuts.length - 1; nElement >= 0; nElement--)\r
+ {\r
+ gBsOnMouseOuts[nElement]();\r
+ }\r
+}\r
+// End of invocation of the event handle functions.\r
+\r
+\r
+// Add the GereralOnLoad to the onload array.\r
+if (typeof(BsscRegisterOnLoad) != "undefined")\r
+{\r
+ BsscRegisterOnLoad(BsGeneralOnLoad);\r
+}\r
+if (gbBsNS4&&!gbBsNS6) {\r
+ origWidth = innerWidth;\r
+ origHeight = innerHeight;\r
+ onresize = BsReDo;\r
+}\r
+//End to support previous generic parameters\r
+\r
+//Begin to support previous HHActiveX invoking\r
+function BsHHActivateComponents()\r
+{\r
+ if( HH_ActiveX && (HH_ChmFilename != "") && ((self == top) || (self == top.frames[0])))\r
+ {\r
+ var objBody = document.all.tags("BODY")[0];\r
+ if( typeof(objBody) == "object" )\r
+ {\r
+ objBody.insertAdjacentHTML("beforeEnd", '<OBJECT ID="HHComponentActivator" CLASSID="CLSID:399CB6C4-7312-11D2-B4D9-00105A0422DF" width=0 height=0></OBJECT>');\r
+ if (HHComponentActivator.object)\r
+ HHComponentActivator.Activate(HH_ChmFilename, HH_WindowName, HH_GlossaryFont, HH_Glossary, HH_Avenue);\r
+ }\r
+ }\r
+}\r
+\r
+function BsHHActivXOnLoad()\r
+{ \r
+ if( gbBsIE4 )\r
+ BsHHActivateComponents(); \r
+}\r
+\r
+if( typeof(BsscRegisterOnLoad) != "undefined" )\r
+{\r
+ BsscRegisterOnLoad(BsHHActivXOnLoad);\r
+}\r
+//End to support previous HHActiveX invoking\r
+\r
+//Begin to support previous relative topics\r
+//If webHelp needs Related Topics DHTMLcode, it's supposed to add it here\r
+var gbPopupMenuTimeoutExpired = false;\r
+var gbInPopupMenu = false;\r
+var gbPopupMenuTopicList = null;\r
+var gOlddocumentClick = null;\r
+\r
+//////////////////////////////////////////////////////////////////////////////////////////\r
+//\r
+// Popup Menu code\r
+//\r
+//////////////////////////////////////////////////////////////////////////////////////////\r
+\r
+var g_bIsPopupMenuInit = false;\r
+function _WritePopupMenuLayer()\r
+{\r
+ if (!g_bIsPopupMenuInit)\r
+ {\r
+ if (gbBsNS4) {\r
+//Do not try to write ininle styles for NS! NS can not handle it and will not stop downloading the html page...\r
+ if (gbBsNS6)\r
+ document.write("<DIV ID='PopupMenu' STYLE='position:absolute; left:0px; top:0px; z-index:4; visibility:hidden;'></DIV>");\r
+ else\r
+ document.write("<DIV CLASS='WebHelpPopupMenu' ID='PopupMenu'></DIV>");\r
+ } else{\r
+ document.write("<DIV ID='PopupMenu' STYLE='position:absolute; left:0px; top:0px; z-index:4; visibility:hidden;'></DIV>");\r
+ if (gbBsIE4) {\r
+ document.write("<STYLE TYPE='text/css'>");\r
+ if (gbBsMac) {\r
+ document.write(".PopupOver {font-family:'Arial'; color:white; background:navy; font-size:10pt; font-style:normal;font-weight:normal;text-decoration:none;}");\r
+ document.write(".PopupNotOver {font-family:'Arial'; color:black; background:#c0c0c0; font-size:10pt; font-style:normal;font-weight:normal;text-decoration:none;}");\r
+ } else {\r
+ document.write(".PopupOver {font-family:'Arial'; color:white; background:navy; font-size:8pt; font-style:normal;font-weight:normal;text-decoration:none;}");\r
+ document.write(".PopupNotOver {font-family:'Arial'; color:black; background:#c0c0c0; font-size:8pt; font-style:normal;font-weight:normal;text-decoration:none;}");\r
+ }\r
+ document.write("</STYLE>");\r
+ }\r
+ }\r
+ g_bIsPopupMenuInit = true;\r
+ }\r
+}\r
+\r
+//Define variable arguments as: strTitle, strUrl\r
+function MTE() \r
+{\r
+ this.strTitle = MTE.arguments[0];\r
+ if (MTE.arguments.length > 1)\r
+ this.strURL = MTE.arguments[1];\r
+ else\r
+ this.strURL = this.strTitle;\r
+}\r
+\r
+// If the topic list is set, it is an array of TopicEntry objects (defined in WebHelp3.js)\r
+function PopupMenu_SetTopicList(aPopupTopicArray)\r
+{\r
+ gbPopupMenuTopicList = aPopupTopicArray;\r
+}\r
+\r
+\r
+//Seek for the bsscright frame \r
+function _SeekFrameByName( cRoot, strName )\r
+{\r
+ if( cRoot == null ) return null;\r
+ if( cRoot.frames == null ) return null;\r
+ if( cRoot.frames[strName] != null ) return cRoot.frames[strName];\r
+ for (var i=0; i<cRoot.frames.length; i++)\r
+ {\r
+ var cObj = null;\r
+ if (!gbBsNS6) \r
+ cObj = _SeekFrameByName( cRoot.frames(i).document, strName );\r
+ else\r
+ cObj = _SeekFrameByName( cRoot.frames[i], strName );\r
+ if( cObj != null ) return cObj;\r
+ };\r
+ return null;\r
+}\r
+function _GetFrameByName( cRoot, strName )\r
+{\r
+ if( cRoot == null ) return null;\r
+ var cRet = _SeekFrameByName(cRoot, strName);\r
+ if( cRet != null ) return cRet;\r
+ if (cRoot.parent != cRoot)\r
+ return _GetFrameByName( cRoot.parent, strName );\r
+ else\r
+ return null;\r
+}\r
+\r
+function _PopupMenu_Invoke(fn_arguments)\r
+{\r
+ // Make sure we have reasonable arguments\r
+ var argLen = fn_arguments.length;\r
+ if (argLen < 3) {\r
+ return false;\r
+ }\r
+\r
+ // Check to see if we only have one target\r
+ var strTarget = "";\r
+ var targetDoc = null;\r
+ if (fn_arguments[1] == '') {\r
+ if (BSSCPopup_IsPopup()) {\r
+ targetDoc = parent;\r
+ strTarget = "TARGET= _parent";\r
+ }\r
+ else\r
+ targetDoc = window.document;\r
+ } else {\r
+ targetDoc = _GetFrameByName( parent, fn_arguments[1] );\r
+\r
+ strTarget = "TARGET='" + fn_arguments[1] + "'";\r
+ }\r
+\r
+ if ((!gbBsIE4 && !gbBsNS4) || ((gbBsMac) && (gbBsIE4) && (window.event.srcElement.tagName == "AREA"))) {\r
+ \r
+ var argLen = fn_arguments.length;\r
+\r
+ // Create the window that the hyperlinks will go into\r
+ var nHeight = argLen * 15;\r
+ var nWidth = 400;\r
+ var strParam = "titlebar=no,toolbar=no,status=no,location=no,menubar=no,resizable=yes,scrollbars=auto";\r
+ strParam += ",height=" + nHeight + ",width=200";\r
+ strParam += ",resizable";\r
+\r
+ // Create a temporary window first to ensure the real popup comes up on top\r
+ var wndTemp = window.open("", "temp", strParam);\r
+\r
+ // Create the real popup window\r
+ var wndPopupLinks = window.open("", "popuplinks", strParam);\r
+\r
+ // Close the temporary\r
+ wndTemp.close();\r
+\r
+ wndPopupLinks.document.open("text/html");\r
+ wndPopupLinks.document.write("<html><head></head>");\r
+ wndPopupLinks.document.write("<body onBlur=\'self.focus();\'>");\r
+ var strParaLine = "";\r
+ for (var i = 0; i < (argLen - 2) / 2; i++) {\r
+ strParaLine = "";\r
+ strParaLine += "<a href=\"javascript:";\r
+ if (gbBsIE) {\r
+ strParaLine += "onBlur=null; ";\r
+ }\r
+ strParaLine += "opener.location=\'";\r
+ strParaLine += fn_arguments[2 * i + 3];\r
+ strParaLine += "\';close();\"";\r
+ strParaLine += strTarget;\r
+\r
+ strParaLine += ">";\r
+ strParaLine += fn_arguments[2 * i + 2];\r
+ strParaLine += "</a>";\r
+ strParaLine += "<br>";\r
+ wndPopupLinks.document.write(strParaLine);\r
+ }\r
+ wndPopupLinks.document.write("</body></html>");\r
+ wndPopupLinks.document.close();\r
+ window.gbInPopupMenu = true;\r
+ if (!gbBsIE) {\r
+ wndPopupLinks.focus();\r
+ }\r
+\r
+ return false;\r
+ }\r
+\r
+\r
+ if (((argLen < 5) && ((isNaN(fn_arguments[2])) || (gbPopupMenuTopicList == null))) ||\r
+ ((argLen < 4) && ((!isNaN(fn_arguments[2])) && (gbPopupMenuTopicList != null)))) {\r
+ // Get the place that we will be putting the topic into\r
+ var strURL = "";\r
+ if (isNaN(fn_arguments[2]) || (gbPopupMenuTopicList == null)) {\r
+ strURL = fn_arguments[3];\r
+ }\r
+ else {\r
+ strURL = gbPopupMenuTopicList[fn_arguments[2]].strURL;\r
+ }\r
+\r
+ if (targetDoc != null) {\r
+ targetDoc.location.href = strURL;\r
+ }\r
+ else {\r
+ if (fn_arguments[1] != null && typeof(fn_arguments[1]) != "undefined")\r
+ window.open(strURL, fn_arguments[1]);\r
+ else\r
+ window.open(strURL);\r
+ } \r
+ window.gbInPopupMenu = true;\r
+ return false;\r
+ }\r
+ \r
+ var strMenu = "";\r
+ if (gbBsNS4) {\r
+ strMenu = '<TABLE BORDER="1" CELLSPACING=0 CELLPADDING=3 BGCOLOR="#c0c0c0">';\r
+ } else {\r
+ strMenu = '<TABLE STYLE="border:2px outset white;" CELLSPACING=0';\r
+ if (gbBsMac) {\r
+ strMenu += ' CELLPADDING=4';\r
+ } else {\r
+ strMenu += ' CELLPADDING=2';\r
+ } \r
+ strMenu += ' BGCOLOR=#c0c0c0>';\r
+ }\r
+ // Add each of the items\r
+ var i = 2;\r
+ while (i <= argLen - 1) {\r
+ strMenu += '<TR><TD><NOBR>'\r
+ // If the destination is a number then look it up in the topic list\r
+ if (isNaN(fn_arguments[i]) || (gbPopupMenuTopicList == null)) {\r
+ strMenu += '<DIV STYLE="padding-left:3pt; padding-right:3pt;"><A HREF="' + fn_arguments[i + 1] + '"' + strTarget;\r
+ } else {\r
+ strMenu += '<DIV STYLE="padding-left:3pt; padding-right:3pt;"><A HREF="' + gbPopupMenuTopicList[fn_arguments[i]].strURL + '"' + strTarget;\r
+ }\r
+ strMenu += ' onclick="PopupMenu_HandleClick(event);"';\r
+ strMenu += ' onmouseover="PopupMenu_Over(event);"';\r
+ strMenu += ' onmouseout="PopupMenu_Out(event);"';\r
+ strMenu += '>';\r
+ if (isNaN(fn_arguments[i]) || (gbPopupMenuTopicList == null)) {\r
+ strMenu += '<SPAN CLASS="PopupNotOver">' + fn_arguments[i] + '</SPAN>';\r
+ } else {\r
+ strMenu += '<SPAN CLASS="PopupNotOver">' + gbPopupMenuTopicList[fn_arguments[i]].strTitle + '</SPAN>';\r
+ }\r
+ strMenu += '</A></DIV></NOBR></TD></TR>';\r
+\r
+ if (isNaN(fn_arguments[i]) || (gbPopupMenuTopicList == null)) {\r
+ i += 2;\r
+ } else {\r
+ i += 1;\r
+ }\r
+ }\r
+ strMenu += "</TABLE>";\r
+\r
+ if (gbBsMac) {\r
+ // totally hack. because ie5 in mac need something. </TABLE> is one of them. mac is mad.\r
+ strMenu +="<TABLE></TABLE>";\r
+ }\r
+\r
+ var layerPopup = null;\r
+ var stylePopup = null;\r
+ var nEventX = 0;\r
+ var nEventY = 0;\r
+ var nWindowWidth = 0;\r
+ if (gbBsIE4) {\r
+\r
+ layerPopup = document.all["PopupMenu"];\r
+ layerPopup.innerHTML = strMenu;\r
+ stylePopup = layerPopup.style;\r
+\r
+ _BSPSGetClientSize();\r
+\r
+ // Get the position of the item causing the event (relative to its parent)\r
+ nEventX = window.event.clientX;\r
+ nEventY = window.event.clientY;\r
+\r
+ if (nEventY + layerPopup.scrollHeight + 10 < gBsClientHeight) {\r
+ nEventY += document.body.scrollTop + 10;\r
+ } else {\r
+ nEventY = (document.body.scrollTop + gBsClientHeight) - layerPopup.scrollHeight - 20;\r
+ }\r
+ stylePopup.top = nEventY;\r
+ \r
+ var nPopupWidth = layerPopup.scrollWidth;\r
+ if (gbBsMac) {\r
+ nPopupWidth = 80; // we have no idea how to get the dynamic width of the popup.\r
+ }\r
+ if (nEventX + nPopupWidth + 20 > gBsClientWidth) {\r
+ if (gBsClientWidth - nPopupWidth < 5) {\r
+ stylePopup.left = 5;\r
+ } else {\r
+ stylePopup.left = gBsClientWidth - nPopupWidth - 5;\r
+ }\r
+ } else {\r
+ stylePopup.left = nEventX + document.body.scrollLeft + 20;\r
+ }\r
+\r
+ stylePopup.visibility = "visible";\r
+ if (!gOlddocumentClick && document.onclick)\r
+ gOlddocumentClick = document.onclick;\r
+ document.onclick = PopupMenu_HandleClick;\r
+\r
+ } else if (gbBsNS6) {\r
+ layerPopup = document.getElementById("PopupMenu");\r
+ layerPopup.style.visibility = "hidden";\r
+ \r
+ var e = fn_arguments[0];\r
+ nEventX = e.pageX;\r
+ nEventY = e.pageY;\r
+ _BSPSGetClientSize();\r
+ layerPopup.innerHTML = strMenu;\r
+\r
+ if (nEventY + layerPopup.offsetHeight + 20 < window.pageYOffset + gBsClientHeight) {\r
+ nEventY += 20;\r
+ } else {\r
+ nEventY = gBsClientHeight + window.pageYOffset - layerPopup.offsetHeight - 20;\r
+ }\r
+\r
+ if (nEventX + layerPopup.offsetWidth + 20 > gBsClientWidth + window.pageXOffset) {\r
+ if (gBsClientWidth + window.pageXOffset - layerPopup.offsetWidth < 20) {\r
+ nEventX = 5;\r
+ } else {\r
+ nEventX = gBsClientWidth + window.pageXOffset - layerPopup.offsetWidth - 20;\r
+ }\r
+ } else {\r
+ nEventX += 20;\r
+ }\r
+ layerPopup.style.top = nEventY;\r
+ layerPopup.style.left = nEventX;\r
+ // set again to avoid the stupid frash in netscape 6.\r
+ layerPopup.innerHTML = strMenu;\r
+ layerPopup.style.visibility = "visible";\r
+ //window.captureEvents(Event.MOUSEDOWN);\r
+ if (!gOlddocumentClick && document.onclick)\r
+ gOlddocumentClick = document.onclick;\r
+ window.onclick = PopupMenu_HandleClick;\r
+ }\r
+ else if (gbBsNS4) {\r
+ layerPopup = document.layers.PopupMenu;\r
+ layerPopup.visibility = "hide";\r
+ stylePopup = layerPopup.document;\r
+ stylePopup.write(strMenu);\r
+ stylePopup.close();\r
+ var e = fn_arguments[0];\r
+ nEventX = e.pageX;\r
+ nEventY = e.pageY;\r
+ _BSPSGetClientSize();\r
+ if (nEventY + layerPopup.clip.height + 20 < window.pageYOffset + gBsClientHeight) {\r
+ nEventY += 20;\r
+ } else {\r
+ nEventY = gBsClientHeight + window.pageYOffset- layerPopup.clip.height - 20;\r
+ }\r
+ layerPopup.top = nEventY;\r
+\r
+ if (nEventX + layerPopup.clip.width + 20 > gBsClientWidth + window.pageXOffset) {\r
+ if (gBsClientWidth + window.pageXOffset - layerPopup.clip.width < 20) {\r
+ nEventX = 5;\r
+ } else {\r
+ nEventX = gBsClientWidth + window.pageXOffset - layerPopup.clip.width - 20;\r
+ }\r
+ } else {\r
+ nEventX += 20;\r
+ }\r
+\r
+ layerPopup.left = nEventX;\r
+\r
+ layerPopup.visibility = "show";\r
+\r
+ window.captureEvents(Event.MOUSEDOWN);\r
+ if (!gOlddocumentClick && document.onmousedown)\r
+ gOlddocumentClick = document.onmousedown;\r
+ window.onmousedown = PopupMenu_HandleClick;\r
+ }\r
+\r
+ window.gbInPopupMenu = true;\r
+ window.gbPopupMenuTimeoutExpired = false;\r
+ setTimeout("PopupMenu_Timeout();", 100);\r
+ return false;\r
+}\r
+\r
+\r
+function PopupMenu_Timeout()\r
+{\r
+ window.gbPopupMenuTimeoutExpired = true;\r
+}\r
+\r
+function PopupMenu_Over(e)\r
+{\r
+ if (gbBsIE4) {\r
+ e.srcElement.className = "PopupOver";\r
+ } else if (gbBsNS4) {\r
+// this.bgColor = "red";\r
+// e.target.document.className = "PopupOver";\r
+ }\r
+ return;\r
+}\r
+\r
+function PopupMenu_Out(e)\r
+{\r
+ if (gbBsIE4) {\r
+ e.srcElement.className = "PopupNotOver";\r
+ } else if (gbBsNS4) {\r
+ this.bgColor = "#f0f0f0";\r
+ }\r
+ return;\r
+}\r
+\r
+\r
+function PopupMenu_HandleClick(e)\r
+{\r
+ if (window.gbPopupMenuTimeoutExpired) {\r
+\r
+ window.gbInPopupMenu = false;\r
+\r
+ if (gbBsNS4 && !gbBsNS6) {\r
+ window.releaseEvents(Event.MOUSEDOWN);\r
+ }\r
+\r
+ var layerPopup = null;\r
+ var stylePopup = null;\r
+ if (gbBsIE4) {\r
+ layerPopup = document.all["PopupMenu"];\r
+ stylePopup = layerPopup.style;\r
+ stylePopup.visibility = "hidden";\r
+ } else if (gbBsNS6) {\r
+ layerPopup = document.getElementById("PopupMenu");\r
+ layerPopup.style.visibility = "hidden";\r
+ } else if (gbBsNS4) {\r
+ layerPopup = document.layers.PopupMenu;\r
+ layerPopup.visibility = "hide";\r
+ }\r
+ \r
+ if (gOlddocumentClick)\r
+ {\r
+ if (gbBsNS4 && !gbBsNS6)\r
+ document.onmousedown = gOlddocumentClick;\r
+ else\r
+ document.onclick = gOlddocumentClick;\r
+ }\r
+ }\r
+ return;\r
+}\r
+\r
+// This function should be deleted when all old projects are cleaned up\r
+function BSPSWritePopupFrameForIE4()\r
+{\r
+ return false;\r
+}\r
+\r
+/////////////////////////////////////////////////////////////////////\r
+function BSSCPopup_ClickMac()\r
+{\r
+ if ((!DHTMLPopupSupport()) && (gbBsIE4))\r
+ { \r
+ var bClickOnAnchor = false;\r
+ var el;\r
+ if ((window.event != null) &&\r
+ (window.event.srcElement != null))\r
+ {\r
+ el = window.event.srcElement;\r
+ while (el != null)\r
+ {\r
+ if ((el.tagName == "A") || (el.tagName == "AREA")) {\r
+ bClickOnAnchor = true;\r
+ break;\r
+ }\r
+ if (el.tagName == "BODY") {\r
+ break;\r
+ }\r
+ el = el.parentElement;\r
+ }\r
+ }\r
+ if (BSSCPopup_IsPopup())\r
+ {\r
+ if (!bClickOnAnchor) {\r
+ parent.window.gPopupWindow = null;\r
+ self.close();\r
+ }\r
+ }\r
+ else\r
+ {\r
+ bClosePopupWindow = true;\r
+ if ((bClickOnAnchor) &&\r
+ (el.href) &&\r
+ ((el.href.indexOf("javascript:BSSCPopup") != -1) || (el.href.indexOf("javascript:null") != -1) || (el.href.indexOf("javascript:void(0)") != -1)))\r
+ {\r
+ bClosePopupWindow = false;\r
+ }\r
+ if (bClosePopupWindow)\r
+ {\r
+ if (window.gPopupWindow != null && !window.gPopupWindow.closed )\r
+ {\r
+ window.gPopupWindow.close();\r
+ }\r
+ }\r
+ }\r
+ }\r
+ }\r
+\r
+//////////////////////////////////////////////////////////////////////\r
+\r
+function BsPopupOnClick()\r
+{\r
+ if (!gbBsIE4)\r
+ return;\r
+\r
+ BSSCPopup_ClickMac();\r
+}\r
+\r
+function _BSSCOnError(message)\r
+{\r
+ if(-1 != message.indexOf("denied") \r
+ || -1 != message.indexOf("Object required"))\r
+ return true;\r
+}\r
+\r
+//End to support previous relative topics\r
+\r
+\r
+/// Section End - General and relative topics (JavaScript 1.0)\r
+\r
+/// Section Begin - Popup (JavaScript 1.0)\r
+\r
+//Begin to support previous popup functions\r
+//////////////////////////////////////////////////////////////////////////////////////////////\r
+//\r
+// Begin DHTML Popup Functions\r
+//\r
+//////////////////////////////////////////////////////////////////////////////////////////////\r
+//variables used to isolate the browser type\r
+var gBsDoc = null; \r
+var gBsSty = null;\r
+var gBsHtm = null;\r
+var gBsStyVisShow = null;\r
+var gBsStyVisHide = null;\r
+var gBsClientWidth = 640;\r
+var gBsClientHeight = 480;\r
+var gBsBrowser = null;\r
+\r
+// here is the varible for judge popup windows size. these parameter is for IE5.0, it may need adjust for others.\r
+var gBRateH_W = 0.618; // 1.618 Golden cut.\r
+var gBMaxXOfParent = 0.8; \r
+var gBMaxYOfParent = 0.8;\r
+var gBscrollHeight = 16;\r
+var gBscrollWidth = 16;\r
+var gBpermitXDelta = 3;\r
+var gBpermitYDelta = 3;\r
+\r
+\r
+var arrayPopupURL = new Array();\r
+var arrayAbsPopupURL = new Array();\r
+\r
+var arrayDirty = new Array();\r
+\r
+function setAbsPopupURL(nIndex, strURL)\r
+{\r
+ arrayAbsPopupURL[nIndex] = strURL;\r
+}\r
+\r
+function getAbsPopupURL(nIndex)\r
+{\r
+ if (nIndex == -1 || arrayAbsPopupURL.length <= nIndex) return null;\r
+ else \r
+ return arrayAbsPopupURL[nIndex];\r
+}\r
+\r
+function getPopupURL(nIndex)\r
+{\r
+ if (nIndex == -1 || arrayPopupURL.length <= nIndex) return null;\r
+ else \r
+ return arrayPopupURL[nIndex];\r
+}\r
+\r
+function getPopupID(nIndex)\r
+{\r
+ return gstrPopupID + nIndex;\r
+}\r
+\r
+function getPopupShadowID(nIndex)\r
+{\r
+ return gstrPopupShadowID + nIndex;\r
+}\r
+\r
+function getPopupTopicID(nIndex)\r
+{\r
+ return gstrPopupTopicID + nIndex;\r
+}\r
+\r
+function getPopupIFrameID(nIndex)\r
+{\r
+ return gstrPopupIFrameID + nIndex;\r
+}\r
+\r
+function getPopupIFrameName(nIndex)\r
+{\r
+ return gstrPopupIFrameName + nIndex;\r
+}\r
+\r
+\r
+function getPopupTopicStyle(nIndex)\r
+{\r
+ return eval("document.all['" + getPopupTopicID(nIndex) + "']").style;\r
+}\r
+\r
+function getPopupShadowStyle(nIndex)\r
+{\r
+ return eval("document.all['" + getPopupShadowID(nIndex) + "']").style;\r
+}\r
+\r
+function getPopupIFrame(nIndex)\r
+{\r
+\r
+ return eval("document.frames['" + getPopupIFrameName(nIndex) + "']");\r
+}\r
+\r
+function getPopupDivStyle(nIndex)\r
+{\r
+ return eval("document.all['" + getPopupID(nIndex) + "']").style;\r
+}\r
+\r
+function getPopupIFrameStyle(nIndex)\r
+{\r
+ return eval("document.all['" + getPopupIFrameName(nIndex) + "'].style");\r
+}\r
+\r
+\r
+function findDiv(strURL)\r
+{\r
+ var i = 0;\r
+ for (i = 0; i < arrayPopupURL.length; i ++ ) {\r
+ if (arrayPopupURL[i] == strURL) {\r
+ return i;\r
+ }\r
+ }\r
+ return -1;\r
+}\r
+\r
+var gnToken = -1;\r
+function takeToken()\r
+{\r
+ gnToken ++;\r
+ if (gnToken > 10000) gnToken = 0;\r
+ return gnToken;\r
+}\r
+\r
+function IsValidToken(nToken)\r
+{\r
+ return (gnToken == nToken);\r
+}\r
+\r
+function addDiv(strURL)\r
+{\r
+ var i = 0; \r
+ for (i = 0; i < arrayPopupURL.length; i ++) {\r
+ if (arrayPopupURL[i] == null) {\r
+ arrayPopupURL[i] = strURL;\r
+ return i;\r
+ }\r
+ } \r
+ arrayPopupURL[i] = strURL;\r
+ arrayDirty[i] = true;\r
+ return i;\r
+}\r
+\r
+function setDirty()\r
+{\r
+ var i = 0;\r
+ for (i = 0; i < arrayPopupURL.length; i ++ )\r
+ arrayDirty[i] = true;\r
+}\r
+\r
+function IsDirty(nIndex)\r
+{\r
+ if (nIndex == -1)\r
+ return true;\r
+ else \r
+ if (arrayDirty.length > nIndex) \r
+ return arrayDirty[nIndex];\r
+ else\r
+ return true;\r
+}\r
+\r
+function hideAll()\r
+{\r
+ var i = 0; \r
+ for (i = 0; i < arrayPopupURL.length; i ++ )\r
+ getPopupDivStyle(i).visibility = gBsStyVisHide;\r
+}\r
+\r
+function getCurrentPopupIFrame()\r
+{\r
+ var i = 0;\r
+ for (i = 0; i < arrayPopupURL.length; i ++)\r
+ if (getPopupDivStyle(i).visibility == gBsStyVisShow)\r
+ return getPopupIFrame(i);\r
+ return null;\r
+}\r
+\r
+function setClear(nIndex)\r
+{\r
+ if (nIndex != -1)\r
+ arrayDirty[nIndex] = false;\r
+}\r
+\r
+function _BSSCCreatePopupDiv(strURL)\r
+{\r
+ var nIndex = findDiv(strURL);\r
+ if (nIndex == -1 ) {\r
+ nIndex = addDiv(strURL);\r
+ BsPopup_CreateDiv(nIndex);\r
+ }\r
+ else {\r
+ if (IsDirty(nIndex)) {\r
+ if("object" == typeof(getPopupIFrame(nIndex).document))\r
+ getPopupIFrame(nIndex).document.location.href = strURL;\r
+ }\r
+ }\r
+ return nIndex;\r
+\r
+}\r
+\r
+//the browser information itself\r
+function _BSPSBrowserItself()\r
+{\r
+ var agent = navigator.userAgent.toLowerCase();\r
+ this.major = parseInt(navigator.appVersion);\r
+ this.minor = parseFloat(navigator.appVersion);\r
+ this.ns = ((agent.indexOf('mozilla') != -1) && ((agent.indexOf('spoofer') == -1) && (agent.indexOf('compatible') == -1)));\r
+ this.ns2 = ((this.ns) && (this.major == 2));\r
+ this.ns3 = ((this.ns) && (this.major == 3));\r
+ this.ns4 = ((this.ns) && (this.major >= 4));\r
+ this.ns6 = ((this.ns) && (this.major >= 5));\r
+ this.ie = (agent.indexOf("msie") != -1);\r
+ this.ie3 = ((this.ie) && (this.major == 2));\r
+ this.ie4 = ((this.ie) && (this.major >= 4));\r
+ this.op3 = (agent.indexOf("opera") != -1);\r
+\r
+ if (this.ns4)\r
+ {\r
+ gBsDoc = "document";\r
+ gBsSty = "";\r
+ gBsHtm = ".document";\r
+ gBsStyVisShow = "show";\r
+ gBsStyVisHide = "hide";\r
+\r
+ }\r
+ else if (this.ie4)\r
+ {\r
+ gBsDoc = "document.all";\r
+ gBsSty = ".style";\r
+ gBsHtm = "";\r
+ gBsStyVisShow = "visible";\r
+ gBsStyVisHide = "hidden";\r
+ }\r
+}\r
+\r
+//Here is the browser type \r
+function _BSPSGetBrowserInfo()\r
+{\r
+ gBsBrowser = new _BSPSBrowserItself();\r
+}\r
+\r
+_BSPSGetBrowserInfo();\r
+\r
+//Get client size info\r
+function _BSPSGetClientSize()\r
+{\r
+ if (gBsBrowser.ns4)\r
+ {\r
+ gBsClientWidth = innerWidth;\r
+ gBsClientHeight = innerHeight;\r
+\r
+ }\r
+ else if (gBsBrowser.ie4)\r
+ {\r
+ gBsClientWidth = document.body.clientWidth;\r
+ gBsClientHeight = document.body.clientHeight;\r
+ }\r
+}\r
+\r
+\r
+var gstrPopupID = 'BSSCPopup';\r
+var gstrPopupShadowID = 'BSSCPopupShadow';\r
+var gstrPopupTopicID = 'BSSCPopupTopic';\r
+var gstrPopupIFrameID = 'BSSCPopupIFrame';\r
+var gstrPopupIFrameName = 'BSSCPopupIFrameName';\r
+\r
+var gstrPopupSecondWindowName = 'BSSCPopup';\r
+\r
+var gPopupWindow = null;\r
+var gnPopupClickX = 0;\r
+var gnPopupClickY = 0;\r
+\r
+var gnPopupScreenClickX = 0;\r
+var gnPopupScreenClickY = 0;\r
+\r
+var gbPopupTimeoutExpired = false;\r
+\r
+\r
+function DHTMLPopupSupport()\r
+{\r
+ if ((gbBsIE4) && (!gbBsMac)) {\r
+ return true;\r
+ }\r
+ return false;\r
+}\r
+\r
+\r
+\r
+function BSSCPopup_IsPopup()\r
+{\r
+ if (DHTMLPopupSupport() && (this.name.indexOf(gstrPopupIFrameName) != -1)) {\r
+ return true;\r
+ } else if ((gbBsNS4 || gbBsIE4) && (this.name.indexOf(gstrPopupID) != -1)) {\r
+ return true;\r
+ } else {\r
+ return false;\r
+ }\r
+}\r
+\r
+\r
+// If there is a hyperlink in a popup window, display the hyperlink in\r
+// the original window.\r
+if (BSSCPopup_IsPopup() && !gbBsIE4) {\r
+ document.write("<base target=\"_parent\">");\r
+}\r
+\r
+// Local functions.\r
+function BsPopup_CreateDiv(nIndex)\r
+{\r
+ if(!DHTMLPopupSupport())\r
+ return;\r
+ // DO NOT SET Width and height for the div, otherwize it will make IE4 popup do not work when view the topic alone.\r
+ var strPopupDiv = "<DIV ID='" + getPopupID(nIndex) + "' STYLE='position:absolute; top:-100; left:0; z-index:600; visibility:hidden;'>";\r
+ strPopupDiv += "<DIV ID='" + getPopupShadowID(nIndex) + "' STYLE=\"position:absolute;top:0; left:0; background-color:#C0C0C0;\"></DIV>";\r
+ strPopupDiv += "<DIV ID='" + getPopupTopicID(nIndex) + "' STYLE=\"position:absolute;top:0; left:0; background-color:#FFFFFF;border:1px #000000 outset;\">";\r
+ strPopupDiv += "<IFRAME title=\"Popup Window\" ID='" + getPopupIFrameID(nIndex) + "' name='" + getPopupIFrameName(nIndex) + "' src = '" + getPopupURL(nIndex) + "' frameborder=0 scrolling=auto></IFRAME>";\r
+ strPopupDiv += "</DIV></DIV>";\r
+\r
+ var objBody = document.all.tags("BODY")[0];\r
+ if( typeof(objBody) != "object" )\r
+ return;\r
+\r
+ objBody.insertAdjacentHTML("beforeEnd", strPopupDiv);\r
+}\r
+\r
+function BSSCPopup_Timeout(nIndex, nToken)\r
+{\r
+ if (!IsValidToken(nToken)) return;\r
+\r
+ if ((getPopupIFrame(nIndex).document.readyState == "complete") &&\r
+ (getPopupIFrame(nIndex).document.body != null)) {\r
+ window.getPopupDivStyle(nIndex).visibility = gBsStyVisShow;\r
+ setClear(nIndex);\r
+ window.gbPopupTimeoutExpired = true;\r
+\r
+ BSSCPopup_ChangeTargettoParent(getPopupIFrame(nIndex).document);\r
+ getPopupIFrame(nIndex).document.body.onclick = BSSCPopupClicked;\r
+\r
+ if (!gbOrignalOnMouseDown && document.onmousedown)\r
+ gbOrignalOnMouseDown = document.onmousedown;\r
+\r
+ document.onmousedown = BSSCPopupParentClicked;\r
+\r
+ } else {\r
+ setTimeout("BSSCPopup_Timeout(" + nIndex + "," + nToken + ")", 100);\r
+ }\r
+}\r
+\r
+\r
+// VH 08/10/00 \r
+// do not change target to parent if the href is using javascript\r
+function BSSCPopup_ChangeTargettoParent(tagsObject)\r
+{\r
+ var collA = tagsObject.all.tags("A");\r
+ BSSCPopup_ChangeTargettoParent2(collA);\r
+\r
+ var collIMG = tagsObject.all.tags("IMG");\r
+ BSSCPopup_ChangeTargettoParent2(collIMG);\r
+}\r
+\r
+function BSSCPopup_ChangeTargettoParent2(colls)\r
+{\r
+ var j = 0;\r
+ if (colls != null) {\r
+ for (j = 0; j < colls.length; j ++ )\r
+ {\r
+ var strtemp = colls[j].href;\r
+ strtemp = strtemp.toLowerCase();\r
+ if (strtemp.indexOf("javascript:") == -1)\r
+ if (colls[j].target == "")\r
+ colls[j].target = "_parent";\r
+ }\r
+\r
+ }\r
+}\r
+\r
+function BSPSPopupTopicWinHelp(strURL)\r
+{\r
+ _BSSCPopup(strURL);\r
+ return;\r
+}\r
+\r
+function _BSSCPopup(strURL, width, height)\r
+{\r
+ var cuswidth = 0;\r
+ var cusheight = 0;\r
+ if ("undefined" != typeof(width) && "undefined" != typeof(height)) {\r
+ cuswidth = width;\r
+ cusheight= height;\r
+ }\r
+ \r
+ if (DHTMLPopupSupport()) {\r
+ // If we are already in a popup, replace the contents\r
+ // if (BSSCPopup_IsPopup()) {\r
+ // parent._BSSCPopup(strURL, cuswidth, cusheight);\r
+ // } else {\r
+ var nToken = takeToken(); // take token first.\r
+ var nIndex = _BSSCCreatePopupDiv(strURL);\r
+ window.gbPopupTimeoutExpired = false;\r
+ var ntWidth = gBsClientWidth;\r
+ var ntHeight = gBsClientHeight;\r
+ _BSPSGetClientSize();\r
+ if (ntWidth != gBsClientWidth || ntHeight != gBsClientHeight) {\r
+ setDirty();\r
+ }\r
+\r
+\r
+ if (IsDirty(nIndex)) {\r
+ if (gbBsMac) {\r
+ setTimeout("BSSCPopup_AfterLoad(" + nIndex + "," + nToken + "," + cuswidth + "," + cusheight +")", 400);\r
+ } else {\r
+ setTimeout("BSSCPopup_AfterLoad(" + nIndex + "," + nToken + "," + cuswidth + "," + cusheight + ")", 100);\r
+ }\r
+ }\r
+ else {\r
+ MoveDivAndShow(nIndex ,nToken, cuswidth, cusheight);\r
+ }\r
+ // }\r
+\r
+ } else {\r
+ _BSSCPopup2(strURL, cuswidth, cusheight);\r
+ }\r
+ return;\r
+}\r
+\r
+if (gbBsIE55)\r
+{\r
+ var ehlpdhtm_fOldBefureUnload = window.onbeforeunload;\r
+ window.onbeforeunload = window_BUnload;\r
+}\r
+ \r
+function window_BUnload()\r
+{\r
+ for (var i = 0; i < arrayPopupURL.length; i ++)\r
+ document.all(getPopupID(i)).outerHTML = "";\r
+ arrayPopupURL.length = 0; \r
+ if (ehlpdhtm_fOldBefureUnload)\r
+ ehlpdhtm_fOldBefureUnload();\r
+}\r
+\r
+function _BSSCPopup2(strURL, width, height)\r
+{\r
+ if (window.name == gstrPopupSecondWindowName) {\r
+ window.location = strURL;\r
+ } else {\r
+ if (!gbBsMac || !gBsBrowser.ns4) {\r
+ BSSCHidePopupWindow();\r
+ }\r
+ var nX = 0;\r
+ var nY = 0;\r
+ var nHeight = 300;\r
+ var nWidth = 400;\r
+ if (width > 0 && height > 0) {\r
+ nHeight = height;\r
+ nWidth = width;\r
+ }\r
+ _BSPSGetClientSize();\r
+\r
+ nX = window.gnPopupScreenClickX;\r
+ nY = window.gnPopupScreenClickY;\r
+\r
+ if (nY + nHeight + 40 > screen.availHeight) {\r
+ nY = screen.availHeight - nHeight - 40;\r
+ }\r
+ if (nX + nWidth + 40 > screen.availWidth) {\r
+ nX = screen.availWidth - nWidth - 40;\r
+ }\r
+ // Launch a separate window\r
+ var strParam = "titlebar=no,toolbar=no,status=no,location=no,menubar=no,resizable=yes,scrollbars=yes";\r
+ if (gBsBrowser.ns) {\r
+ if (gBsBrowser.ns6) {\r
+ strParam += ",Height=" + nHeight + ",Width=" + nWidth;\r
+ strParam += ",screenX=" + nX + ",screenY=" + nY;\r
+ }\r
+ else {\r
+ strParam += ",OuterHeight=" + nHeight + ",OuterWidth=" + nWidth;\r
+ strParam += ",screenX=" + nX + ",screenY=" + nY;\r
+ strParam += ",dependent=yes";\r
+ }\r
+ }\r
+ else {\r
+ strParam += ",height=" + nHeight + ",width=" + nWidth;\r
+ strParam += ",left=" + nX + ",top=" + nY;\r
+ }\r
+ window.gPopupWindow = window.open(strURL, gstrPopupSecondWindowName, strParam);\r
+\r
+ if (gBsBrowser.ns4) {\r
+ window.gPopupWindow.captureEvents(Event.CLICK | Event.BLUE);\r
+ window.gPopupWindow.onclick = NonIEPopup_HandleClick;\r
+ window.gPopupWindow.onblur = NonIEPopup_HandleBlur;\r
+ }\r
+ else if (gBsBrowser.ie4)\r
+ {\r
+ setTimeout("setPopupFocus();", 100);\r
+ }\r
+ }\r
+ return;\r
+}\r
+\r
+function setPopupFocus()\r
+{\r
+ window.gPopupWindow.focus();\r
+}\r
+\r
+function NonIEPopup_HandleBlur(e)\r
+{\r
+ window.gPopupWindow.focus();\r
+}\r
+\r
+function NonIEPopup_HandleClick(e)\r
+{\r
+ // Because navigator will give the event to the handler before the hyperlink, let's\r
+ // first route the event to see if we are clicking on a Popup menu in a popup.\r
+ document.routeEvent(e);\r
+\r
+ // If a popup menu is active then don't do anything with the click\r
+ if (window.gPopupWindow.gbInPopupMenu) {\r
+ window.gPopupWindow.captureEvents(Event.CLICK);\r
+ window.gPopupWindow.onclick = NonIEPopup_HandleClick;\r
+ return false;\r
+ }\r
+\r
+ // Close the popup window\r
+ if (e.target.href) {\r
+ if (e.target.target == "")\r
+ window.location.href = e.target.href;\r
+ else\r
+ window.open(e.target.href, e.target.target);\r
+ \r
+ if (e.target.href.indexOf("javascript:void(0)") == -1 && e.target.href.indexOf("javascript:null") == -1 && e.target.href.indexOf("BsscPopup") == -1) {\r
+ this.close();\r
+ }\r
+ } else {\r
+ this.close();\r
+ }\r
+ return false;\r
+\r
+}\r
+\r
+function BSSCPopup_AfterLoad(nIndex, nToken, cuswidth, cusheight)\r
+{ \r
+ if (typeof(window.getPopupIFrame(nIndex).document) == "unknown") {\r
+ _BSSCPopup2(getPopupURL(nIndex), cuswidth, cusheight);\r
+ return;\r
+ }\r
+ if (!IsValidToken(nToken)) return;\r
+\r
+ if ((window.getPopupIFrame(nIndex).document.readyState == "complete") &&\r
+ (window.getPopupIFrame(nIndex).document.body != null)) {\r
+ if (window.getPopupIFrame(nIndex).document.location.href.indexOf("about:blank") != -1) { // add this check. IE will use about:blank" as the default vaule for Iframe.\r
+ window.getPopupIFrame(nIndex).document.location = getPopupURL(nIndex);\r
+ setTimeout("BSSCPopup_AfterLoad(" + nIndex + "," + nToken + "," + cuswidth + "," + cusheight + ")", 200);\r
+ }\r
+ else\r
+ {\r
+ setAbsPopupURL(nIndex, window.getPopupIFrame(nIndex).document.location.href); // change URL to abs url.\r
+ BSSCPopup_ResizeAfterLoad(nIndex, nToken, cuswidth, cusheight);\r
+ }\r
+ } else {\r
+ setTimeout("BSSCPopup_AfterLoad(" + nIndex + "," + nToken + "," + cuswidth + "," + cusheight + ")", 200);\r
+ }\r
+}\r
+\r
+\r
+function BSSCPopup_ResizeAfterLoad(nIndex, nToken, cuswidth, cusheight)\r
+{\r
+ if (window.gbPopupTimeoutExpired) return;\r
+\r
+ if (!IsValidToken(nToken)) return;\r
+\r
+ getPopupDivStyle(nIndex).visibility = gBsStyVisHide;\r
+\r
+ // Determine the width and height for the window\r
+ //var size = new BSSCSize(0, 0);\r
+ //BSSCGetContentSize(window.getPopupIFrame(nIndex), size);\r
+ //var nWidth = size.x;\r
+ //var nHeight = size.y;\r
+\r
+ _BSPSGetClientSize();\r
+ \r
+ var size = new BSSCSize(0, 0);\r
+\r
+ if (cuswidth <= 0 || cusheight <= 0)\r
+ BSSCGetContentSize(window.getPopupIFrame(nIndex), size);\r
+ else {\r
+ size.x = cuswidth;\r
+ size.y = cusheight;\r
+ }\r
+\r
+ // Determine the width and height for the window\r
+ var nWidth = size.x;\r
+ var nHeight = size.y;\r
+\r
+ // for small popup size, we should allow any size.\r
+ // The popup size should be ok if bigger than 0\r
+ if (nWidth < 0 || nHeight < 0) return; // there must be something terribly wrong. \r
+ // if (nWidth < 40 || nHeight < 40) return; // there must be something terribly wrong.\r
+\r
+ window.getPopupDivStyle(nIndex).pixelWidth = nWidth;\r
+ window.getPopupDivStyle(nIndex).pixelHeight = nHeight;\r
+\r
+ window.getPopupShadowStyle(nIndex).pixelWidth = nWidth;\r
+ window.getPopupShadowStyle(nIndex).pixelHeight = nHeight;\r
+ window.getPopupTopicStyle(nIndex).pixelWidth = nWidth;\r
+ window.getPopupTopicStyle(nIndex).pixelHeight = nHeight;\r
+ if (gbBsIE55)\r
+ {\r
+ window.getPopupShadowStyle(nIndex).pixelWidth = nWidth + 2;\r
+ window.getPopupShadowStyle(nIndex).pixelHeight = nHeight + 2;\r
+ window.getPopupTopicStyle(nIndex).pixelWidth = nWidth + 2;\r
+ window.getPopupTopicStyle(nIndex).pixelHeight = nHeight + 2;\r
+ }\r
+\r
+ window.getPopupIFrameStyle(nIndex).pixelWidth = nWidth;\r
+ window.getPopupIFrameStyle(nIndex).pixelHeight = nHeight;\r
+ if (gbBsIE55)\r
+ {\r
+ window.getPopupIFrameStyle(nIndex).top = 0;\r
+ window.getPopupIFrameStyle(nIndex).left = 0;\r
+ }\r
+ \r
+ var strURL = getPopupURL(nIndex);\r
+ if (strURL.indexOf("#") != -1)\r
+ getPopupIFrame(nIndex).location.href = strURL; // reload again, this will fix the bookmark misunderstand in IE5.\r
+ \r
+ MoveDivAndShow(nIndex, nToken, cuswidth, cusheight);\r
+}\r
+\r
+function MoveDivAndShow(nIndex, nToken, cuswidth, cusheight)\r
+{\r
+ if (window.getPopupIFrame(nIndex).document.location.href != getAbsPopupURL(nIndex)) { // if redirect, reload again.\r
+ window.getPopupIFrame(nIndex).document.location = getPopupURL(nIndex);\r
+ setTimeout("BSSCPopup_AfterLoad(" + nIndex + "," + nToken + "," + cuswidth + "," + cusheight + ")", 200);\r
+ return;\r
+ }\r
+\r
+ // Determine the position of the window\r
+ var nClickX = window.gnPopupClickX;\r
+ var nClickY = window.gnPopupClickY;\r
+ var nTop = 0;\r
+ var nLeft = 0;\r
+\r
+ var nWidth = window.getPopupDivStyle(nIndex).pixelWidth;\r
+ var nHeight = window.getPopupDivStyle(nIndex).pixelHeight;\r
+\r
+ if (nClickY + nHeight + 20 < gBsClientHeight + document.body.scrollTop) {\r
+ nTop = nClickY + 10;\r
+ } else {\r
+ nTop = (document.body.scrollTop + gBsClientHeight) - nHeight - 20;\r
+ }\r
+ if (nClickX + nWidth < gBsClientWidth + document.body.scrollLeft) {\r
+ nLeft = nClickX;\r
+ } else {\r
+ nLeft = (document.body.scrollLeft + gBsClientWidth) - nWidth - 8;\r
+ }\r
+ \r
+ if (nTop < document.body.scrollTop ) nTop = document.body.scrollTop + 1;\r
+ if (nLeft< document.body.scrollLeft) nLeft = document.body.scrollLeft + 1;\r
+\r
+\r
+ window.getPopupDivStyle(nIndex).left = nLeft;\r
+ window.getPopupDivStyle(nIndex).top = nTop;\r
+\r
+ // Set the location of the background blocks\r
+ window.getPopupShadowStyle(nIndex).left = 6;\r
+ window.getPopupShadowStyle(nIndex).top = 6;\r
+ if (gbBsIE55)\r
+ {\r
+ window.getPopupShadowStyle(nIndex).left = 4;\r
+ window.getPopupShadowStyle(nIndex).top = 4;\r
+ }\r
+\r
+ if (gbBsMac) {\r
+ // Total hack on the iMac to get the IFrame to position properly\r
+ window.getPopupIFrameStyle(nIndex).pixelLeft = 100;\r
+ window.getPopupIFrameStyle(nIndex).pixelLeft = 0;\r
+ // Explicitly call BSSCOnLoad because the Mac doesn't seem to do it\r
+ window.getPopupIFrame(nIndex).window.BSSCOnLoad();\r
+ }\r
+\r
+ BSSCPopup_Timeout(nIndex , nToken );\r
+ \r
+ return;\r
+}\r
+\r
+function BSSCSize(x, y)\r
+{\r
+ this.x = x;\r
+ this.y = y;\r
+}\r
+\r
+function BSSCGetContentSize(thisWindow, size)\r
+{\r
+ if (!((gBsBrowser.ie4) || (gBsBrowser.ns4)))\r
+ return;\r
+\r
+ if (gbBsMac) {\r
+ size.x = 300;\r
+ size.y = 300;\r
+ return;\r
+ }\r
+\r
+ // Resize the width until it is wide enough to handle the content\r
+ // The trick is to start wide and determine when the scrollHeight changes\r
+ // because then we know a scrollbar is necessary. We can then go back\r
+ // to the next widest size (for no scrollbar)\r
+\r
+ var ClientRate = gBsClientHeight / gBsClientWidth;\r
+\r
+ var GoldenSize = new BSSCSize(0,0);\r
+ GoldenSize.x = gBsClientWidth * gBMaxXOfParent;\r
+ GoldenSize.y = gBsClientHeight *gBMaxYOfParent ;\r
+\r
+ if (ClientRate > gBRateH_W) {\r
+ GoldenSize.y = GoldenSize.x * gBRateH_W;\r
+ }\r
+ else {\r
+ GoldenSize.x = GoldenSize.y / gBRateH_W;\r
+ }\r
+\r
+ // Try to using parent specified max x.\r
+ var x = 0;\r
+ var maxgoldx = GoldenSize.x;\r
+ var maxx = gBsClientWidth * gBMaxXOfParent;\r
+ \r
+ // This double resize causes the document to re-render (and we need it to)\r
+ if (!gbBsIE5)\r
+ thisWindow.moveTo(10000,10000); // this is used to fix the flash on IE4.\r
+ thisWindow.resizeTo(1, 1);\r
+ thisWindow.resizeTo(1, 1);\r
+ thisWindow.resizeTo(maxgoldx, thisWindow.document.body.scrollHeight + gBscrollHeight);\r
+ thisWindow.resizeTo(maxgoldx, thisWindow.document.body.scrollHeight + gBscrollHeight);\r
+ \r
+ var miny = thisWindow.document.body.scrollHeight + gBscrollHeight;\r
+ \r
+ if (miny > GoldenSize.y) // the popup does not fix in the parent wanted golden area. so try to expand itself as large as it can\r
+ {\r
+ thisWindow.resizeTo(maxx , thisWindow.document.body.scrollHeight + gBscrollHeight);\r
+ thisWindow.resizeTo(maxx , thisWindow.document.body.scrollHeight + gBscrollHeight);\r
+ \r
+ miny = thisWindow.document.body.scrollHeight + gBscrollHeight;\r
+ maxy = gBsClientHeight * gBMaxYOfParent;\r
+ \r
+ if (miny > maxy) { // the popup must have a scroll, OK let it be.\r
+ miny = maxy;\r
+ size.x = maxx;\r
+ size.y = maxy;\r
+ thisWindow.document.body.scroll = 'yes'; // At this time we do want to show scroll any more. so it will looks better a little.\r
+ }\r
+ else { // popup still can fit in the parent area by someway. now we choose the same h/w rate as parent.\r
+ size.y = miny;\r
+ \r
+ // downsize from maxx , now I try to using binary divide.\r
+ x = maxx;\r
+ deltax = -maxx/2;\r
+ //j = 0;\r
+ while (true) {\r
+ x = x + deltax;\r
+ thisWindow.resizeTo(x, miny);\r
+ thisWindow.resizeTo(x, miny);\r
+ diffy = thisWindow.document.body.scrollHeight + gBscrollHeight - x * ClientRate;\r
+ if (diffy > gBpermitYDelta ) // it is higher than wanted, so x need to be wide a little bitter\r
+ deltax = Math.abs(deltax) /2;\r
+ else if (diffy < -gBpermitYDelta) // it is shorter than wanted, so x need to be narrow a little bitter\r
+ deltax = -Math.abs(deltax) /2;\r
+ else \r
+ // the y is close enough to wanted.\r
+ break;\r
+ if (Math.abs(deltax) < gBpermitXDelta) // the next change is too slight and it can be ignore.\r
+ break;\r
+ }\r
+ size.x = thisWindow.document.body.scrollWidth; //+ gBscrollWidth;\r
+ size.y = thisWindow.document.body.scrollHeight;// + gBscrollHeight; \r
+ thisWindow.document.body.scroll = 'no';\r
+ \r
+ // Handle absurd cases just in case IE flakes\r
+ // if (size.y < 100) {\r
+ // size.y = 100;\r
+ // }\r
+ }\r
+ }\r
+ else {\r
+ if (thisWindow.document.body.scrollWidth > maxgoldx) {\r
+ size.x = maxx; \r
+ size.y = miny; \r
+ thisWindow.document.body.scroll = 'yes';\r
+ }\r
+ else {\r
+ // downsize from maxgoldx , now I try to using binary divide.\r
+ x = maxgoldx;\r
+ deltax = -maxgoldx/2;\r
+ //i = 0;\r
+ while (true) {\r
+ x = x + deltax;\r
+ thisWindow.resizeTo(x, miny);\r
+ thisWindow.resizeTo(x, miny);\r
+ diffy = thisWindow.document.body.scrollHeight + gBscrollHeight - x * gBRateH_W;\r
+ if (diffy > gBpermitYDelta ) // it is higher than wanted, so x need to be wide a little bitter\r
+ deltax = Math.abs(deltax) /2;\r
+ else if (diffy < -gBpermitYDelta) // it is shorter than wanted, so x need to be narrow a little bitter\r
+ deltax = -Math.abs(deltax) /2;\r
+ else \r
+ // the y is close enough to wanted.\r
+ break;\r
+ if (Math.abs(deltax) < gBpermitXDelta) // the next change is too slight and it can be ignore.\r
+ break;\r
+ //i ++;\r
+ \r
+ }\r
+ //size.x = x - gBscrollWidth;\r
+ size.x = thisWindow.document.body.scrollWidth; //+ gBscrollWidth;\r
+ size.y = thisWindow.document.body.scrollHeight ;\r
+ thisWindow.document.body.scroll = 'no'; // At this time we do not want to show scroll any more. so it will looks better a little.\r
+ thisWindow.resizeTo(size.x, size.y);\r
+ if (thisWindow.document.body.scrollWidth > size.x)\r
+ {\r
+ size.x = thisWindow.document.body.scrollWidth;\r
+ }\r
+ if (thisWindow.document.body.scrollHeight > size.y)\r
+ {\r
+ size.y = thisWindow.document.body.scrollHeight;\r
+ }\r
+ }\r
+ }\r
+ \r
+ // no reload no scrollbar.\r
+ //size.x = size.x + 16; //reserve a width for scrollbar (IE 4.0 only)\r
+\r
+ thisWindow.resizeTo(size.x, size.y);\r
+ thisWindow.resizeTo(size.x, size.y);\r
+ return;\r
+}\r
+\r
+\r
+\r
+function BSSCPopupParentClicked()\r
+{\r
+ if (!window.gbPopupTimeoutExpired) {\r
+ return false;\r
+ }\r
+ \r
+ document.onmousedown = gbOrignalOnMouseDown;\r
+\r
+ // Simply hide the popup\r
+ hideAll();\r
+\r
+ window.gbPopupTimeoutExpired = false;\r
+\r
+ return true;\r
+}\r
+\r
+\r
+function BSSCPopupClicked()\r
+{\r
+ if (!window.gbPopupTimeoutExpired) {\r
+ return false;\r
+ }\r
+\r
+\r
+ var popupIFrame = getCurrentPopupIFrame();\r
+ if (popupIFrame == null) {\r
+ return true;\r
+ }\r
+\r
+/*\r
+ if ("undefined" != typeof(popupIFrame.gbInPopupMenu) &&\r
+ popupIFrame.gbInPopupMenu) {\r
+ return true;\r
+ }*/\r
+\r
+ if (!((popupIFrame.window.event != null) &&\r
+ (popupIFrame.window.event.srcElement != null) &&\r
+ ((popupIFrame.window.event.srcElement.tagName == "A") ||\r
+ (popupIFrame.window.event.srcElement.tagName == "IMG")))) {\r
+ document.onmousedown = gbOrignalOnMouseDown;\r
+\r
+ // Simply hide the popup\r
+ hideAll();\r
+\r
+ window.gbPopupTimeoutExpired = false;\r
+\r
+ return true;\r
+ }\r
+}\r
+\r
+\r
+//trace the mouse over's position for hotspot\r
+function BSPSPopupOnMouseOver(event)\r
+{\r
+ if (gBsBrowser.ie4) {\r
+ window.gnPopupClickX = event.clientX + document.body.scrollLeft;\r
+ window.gnPopupClickY = event.clientY + document.body.scrollTop;\r
+ window.gnPopupScreenClickX = event.screenX;\r
+ window.gnPopupScreenClickY = event.screenY;\r
+ } else if (gBsBrowser.ns4) {\r
+ window.gnPopupClickX = event.pageX - window.pageXOffset;\r
+ window.gnPopupClickY = event.pageY - window.pageYOffset;\r
+ window.gnPopupScreenClickX = event.screenX - window.pageXOffset;\r
+ window.gnPopupScreenClickY = event.screenY - window.pageYOffset;\r
+ }\r
+}\r
+\r
+\r
+function BSSCHidePopupWindow()\r
+{\r
+ if (window.gPopupWindow != null) {\r
+ if (gBsBrowser.ns4) {\r
+ if ((typeof window.gPopupWindow != "undefined") && (!window.gPopupWindow.closed)) {\r
+ window.gPopupWindow.close();\r
+ window.gPopupWindow = null;\r
+ }\r
+ }\r
+ }\r
+\r
+ return;\r
+}\r
+\r
+// Add the PopupOnClick to the onclick array.\r
+if (typeof(BsscRegisterOnClick) != "undefined")\r
+{\r
+ BsscRegisterOnClick(BsPopupOnClick);\r
+}\r
+//End to support previous popup functions\r
+\r
+/// Section End - Popup (JavaScript 1.0)\r
+\r
+/// Section Begin - Embedded Stub (JavaScript 1.0)\r
+\r
+var s_strAgent = navigator.userAgent.toLowerCase();\r
+var s_nVer = parseInt(navigator.appVersion);\r
+\r
+var s_bIE = (s_strAgent.indexOf('msie') != -1);\r
+var s_bNS = (s_strAgent.indexOf('mozilla') != -1) && ((s_strAgent.indexOf('spoofer') == -1) && (s_strAgent.indexOf('compatible') == -1));\r
+var s_bOpera = (s_strAgent.indexOf('opera') != -1);\r
+\r
+var s_bIE3Before = ((s_bIE) && (s_nVer <= 2));\r
+var s_bNS3Before = ((s_bNS) && (s_nVer <= 3));\r
+\r
+var s_bNS2 = ((s_bNS) && (s_nVer <= 2));\r
+var s_bNS3 = ((s_bNS) && (s_nVer == 3));\r
+var s_bIE300301 = ((s_bIE) && (s_nVer == 2) && ((s_strAgent.indexOf("3.00") != -1)||(s_strAgent.indexOf("3.0a") != -1)||(s_strAgent.indexOf("3.0b")!=-1)||(s_strAgent.indexOf("3.01")!=-1)));\r
+var s_bIE302 = ((s_bIE) && (s_nVer == 2) && (s_strAgent.indexOf("3.02") != -1));\r
+\r
+\r
+function HasExtJs()\r
+{\r
+ if (s_bIE3Before) { return false;}\r
+ if (s_bNS3Before) { return false;}\r
+ if (typeof (BsGeneralOnLoad) == "undefined"){ return false; }\r
+ return true;\r
+}\r
+\r
+\r
+function BSSCCreatePopupDiv()\r
+{\r
+ return;\r
+}\r
+\r
+\r
+function WritePopupMenuLayer()\r
+{\r
+ if (HasExtJs()) {_WritePopupMenuLayer();}\r
+}\r
+\r
+function BSSCPopup(strURL, width, height)\r
+{\r
+ if (HasExtJs()) { \r
+ _BSSCPopup(strURL, width, height);\r
+ }else{\r
+ //Create a temporary window first to ensure the real popup comes up on top\r
+ var wndTemp = null;\r
+ if (!s_bNS3) {\r
+ wndTemp = window.open("", "temp", "titlebar=no,toolbar=no,status=no,location=no,menubar=no,resizable=yes,scrollbars=yes,height=3,width=4");\r
+ }\r
+ // Create the real popup window\r
+ var wndPopup = window.open(strURL, "BSSCPopup", "titlebar=no,toolbar=no,status=no,location=no,menubar=no,resizable=yes,scrollbars=yes,height=300,width=400");\r
+ // Close the temporary\r
+ if (!s_bNS3) {\r
+ wndTemp.close();\r
+ } else {\r
+ wndPopup.focus();\r
+ }\r
+ }\r
+}\r
+\r
+var gbWndTemp = null, gbWndPopupLinks = null;\r
+var gbstrParaTotal = "";\r
+\r
+function PopupMenu_Invoke()\r
+{\r
+ if (HasExtJs()) {\r
+ return _PopupMenu_Invoke(PopupMenu_Invoke.arguments);\r
+ }\r
+ if (s_bNS3Before || s_bIE3Before ) {\r
+ var argLen = PopupMenu_Invoke.arguments.length;\r
+ if (argLen < 5) {\r
+ window.document.location.href = PopupMenu_Invoke.arguments[3];\r
+ return false;\r
+ }\r
+ gbWndTemp = null;\r
+ gbWndPopupLinks = null;\r
+ gbstrParaTotal = "";\r
+ for (var i = 0; i < (argLen - 2) / 2; i++) {\r
+ var strParaLine = "";\r
+ if (s_bNS2 || s_bOpera){\r
+ strParaLine += "<a href=\"";\r
+ strParaLine += PopupMenu_Invoke.arguments[2 * i + 3];\r
+ strParaLine += "\">"\r
+ strParaLine += PopupMenu_Invoke.arguments[2 * i + 2];\r
+ strParaLine += "</a>";\r
+ } else {\r
+ strParaLine += "<a href=\"javascript:";\r
+ strParaLine += "gotoUrl(\'";\r
+ strParaLine += PopupMenu_Invoke.arguments[2 * i + 3];\r
+ strParaLine += "\');\"";\r
+ if (PopupMenu_Invoke.arguments[1] != '') {\r
+ strParaLine += " TARGET='" + PopupMenu_Invoke.arguments[1] + "'";\r
+ }\r
+ strParaLine += ">";\r
+ strParaLine += PopupMenu_Invoke.arguments[2 * i + 2];\r
+ strParaLine += "</a>";\r
+ }\r
+ strParaLine += "<br>";\r
+ gbstrParaTotal += strParaLine;\r
+ }\r
+ var nHeight = argLen * 15;\r
+ var nWidth = 400;\r
+ var strParam = "titlebar=no,toolbar=no,status=no,location=no,menubar=no,resizable=yes,scrollbars=auto";\r
+ strParam += ",height=" + nHeight + ",width=200,resizable";\r
+ \r
+ //Create a temporary window first to ensure the real popup comes up on top\r
+ //var wndTemp = null;\r
+ if (!s_bNS3) {\r
+ gbWndTemp = window.open("", "temp", "titlebar=no,toolbar=no,status=no,location=no,menubar=no,resizable=yes,scrollbars=yes,height=3,width=4");\r
+ } \r
+ gbWndPopupLinks = window.open("", "popuplinks", strParam);\r
+\r
+ setTimeout("Wait_PopupMenuReady()", 100);\r
+ }\r
+ return true;\r
+}\r
+\r
+function Wait_PopupMenuReady() \r
+{\r
+ if (gbWndPopupLinks != null && "object" == typeof(gbWndPopupLinks.document)) {\r
+ PopupMenu_InvokeReady();\r
+ }\r
+ else \r
+ setTimeout("Wait_PopupMenuReady()", 100);\r
+}\r
+\r
+\r
+function PopupMenu_InvokeReady()\r
+{\r
+ if (gbWndPopupLinks != null) {\r
+ gbWndPopupLinks.document.open("text/html");\r
+ gbWndPopupLinks.document.write("<html><head>");\r
+ if (s_bNS2 || s_bOpera) {\r
+ gbWndPopupLinks.document.write("<base href=\"" + location +"\">");\r
+ } else {\r
+ //YJ: IE301,302 and NS3.x works fine\r
+ gbWndPopupLinks.document.write("<");\r
+ gbWndPopupLinks.document.write("script>");\r
+ gbWndPopupLinks.document.write("function gotoUrl(aUrl) {opener.window.location=aUrl; close();}");\r
+ gbWndPopupLinks.document.write("<");\r
+ gbWndPopupLinks.document.write("/script>");\r
+ }\r
+ gbWndPopupLinks.document.write("</head><body onBlur=\'self.focus();\'>");\r
+ gbWndPopupLinks.document.write(gbstrParaTotal);\r
+ gbWndPopupLinks.document.write("</body></html>");\r
+ gbWndPopupLinks.document.close();\r
+\r
+ // Close the temporary\r
+ if (!s_bNS3 && gbWndTemp != null) {\r
+ gbWndTemp.close();\r
+ }else {\r
+ gbWndPopupLinks.focus();\r
+ }\r
+\r
+ return true;\r
+ }\r
+ return false;\r
+}\r
+\r
+/// Section End - Embedded Stub (JavaScript 1.0)\r
+\r
+//// Segment End -- (JavaScript 1.0)\r
+\r
+//// Segment Begin -- (JavaScript 1.2)\r
+/// Section Begin - kadov DHTM (JavaScript 1.2)\r
+\r
+//Begin to support extended and dropdown text effects.\r
+function kadovIsParagraph(el)\r
+{\r
+ return( el.tagName == "P" || el.tagName.indexOf("H") == 0 ) ? true : false;\r
+}\r
+\r
+function kadovInitEachChild(el)\r
+{ \r
+ for(var i=0; i<el.children.length; i++)\r
+ {\r
+ var child = el.children[i];\r
+ if( child.tagName == "SCRIPT" || child.tagName == "!" )\r
+ continue;\r
+\r
+ if( child.id != "" )\r
+ {\r
+ // to wipe out the onload effects\r
+ var onLoadEffect = child.style.getAttribute( "x-on-pageload" );\r
+ if( (onLoadEffect != null) && (onLoadEffect > "") )\r
+ child.style.setAttribute( "x-on-pageload", "" );\r
+ \r
+ var href = child.getAttribute("href")\r
+ if( href != null && href > "" && href.indexOf( "BSSCPopup" ) >= 0 )\r
+ kadovFilePopupInit(child.id); // Init for Popup\r
+ else if( child.className == "dropspot" || child.className == "expandspot" || \r
+ child.className == "glossterm" )\r
+ kadovTextPopupInit(child.id);// Init for Expanding/Glossary or DropDown text\r
+ else if( child.className == "trigger")\r
+ kadovInitTrigger(child.id);// Init for Trigger\r
+ else\r
+ {\r
+ kadovInitEffects(child.id);// Init for DHTML effects\r
+ CEngine.SetOneTargetInitialState( child.id );\r
+ }\r
+ }\r
+ \r
+ if( (child.tagName == "IMG") && (child.getAttribute("dynsrc") > "") )\r
+ child.start = "mouseover";// to start a AVI file. fileopen doesn't work\r
+\r
+ kadovInitEachChild(child);\r
+ }\r
+}\r
+\r
+function kadovRetrieveTextInner(el)\r
+{ \r
+ var x = "";\r
+ if( (!el) || (el.tagName == "!") || (el.tagName == "SCRIPT" ))\r
+ return x;\r
+\r
+ if( kadovIsParagraph(el) )\r
+ {\r
+ var strNewID = " ";\r
+ if( el.id != "" )\r
+ strNewID += "id=" + el.id + "_NewSpan ";\r
+ x = "<span" + strNewID + "style='" + el.style.cssText + "'>" + el.innerHTML + "</span>";\r
+ }\r
+ else\r
+ {\r
+ for(var i=0; i<el.children.length; i++)\r
+ x += kadovRetrieveTextInner( el.children[i] );\r
+ }\r
+ return x;\r
+}\r
+\r
+function kadovRetrieveCleanHTML( strRawHTML, strTagOpen, strTagClose, nDistance )\r
+{ \r
+ var nTagOpen = strRawHTML.indexOf( strTagOpen, 0 );\r
+ if( nTagOpen < 0 )\r
+ return strRawHTML;\r
+\r
+ var nTagClose = strRawHTML.indexOf( strTagClose, nTagOpen);\r
+ if( nTagClose < nTagOpen )\r
+ return strRawHTML;\r
+ \r
+ if( typeof(nDistance) == "number" && nDistance > 0 )\r
+ if( (nTagClose - nTagOpen) != nDistance )\r
+ return strRawHTML;\r
+ \r
+ var strCleanOnce = strRawHTML.substring(0, nTagOpen) + strRawHTML.substr(nTagClose + strTagClose.length) ;\r
+ return kadovRetrieveCleanHTML( strCleanOnce, strTagOpen, strTagClose );\r
+}\r
+\r
+function kadovAdjustObjectTag(strRawHTML, nStartPos)\r
+{// adjust object tag for related topics HTML control, because innerHTML misses out the item settings\r
+ \r
+ //Is there any DTC?\r
+ var strDTCTagOpen = '<!--Metadata type="DesignerControl" startspan';\r
+ var strDTCTagClose = '<!--Metadata type="DesignerControl" endspan-->';\r
+ var nDTCTagOpen = strRawHTML.indexOf( strDTCTagOpen, nStartPos );\r
+ if( nDTCTagOpen < 0 )\r
+ return strRawHTML;\r
+ var nDTCTagClose = strRawHTML.indexOf( strDTCTagClose, nDTCTagOpen );\r
+ if( nDTCTagClose < nDTCTagOpen)\r
+ return strRawHTML; // no Design Time Controls;\r
+ \r
+ //Is the DTC HTML Help Control?\r
+ var strRTObjTagOpen = 'classid=clsid:ADB880A6-D8FF-11CF-9377-00AA003B7A11';\r
+ var strRTObjTagClose = '</OBJECT>';\r
+ var nRTObjTagOpen = strRawHTML.indexOf( strRTObjTagOpen, nDTCTagOpen );\r
+ if( nRTObjTagOpen < nDTCTagOpen )\r
+ return strRawHTML;\r
+ var nRTObjTagClose = strRawHTML.indexOf( strRTObjTagClose, nRTObjTagOpen );\r
+ if( nRTObjTagClose < nRTObjTagOpen )\r
+ return strRawHTML; // is not a HTML help control\r
+ \r
+ // Is it a related Topics html help control?\r
+ var strRTObjLabel = '<PARAM NAME=\"Command\" VALUE=\"Related Topics';\r
+ if( strRawHTML.indexOf(strRTObjLabel, nRTObjTagOpen) < 0 )\r
+ return strRawHTML;\r
+ \r
+ // does the commented object tag contain a items parameters \r
+ var strRTItemsOpen = '<param name=Items value="';\r
+ var strRTItemsClose = '$$**$$" >';\r
+ var nRTItemsOpen = strRawHTML.indexOf(strRTItemsOpen, nDTCTagOpen);\r
+ if( nRTItemsOpen < nDTCTagOpen )\r
+ return strRawHTML;\r
+ var nRTItemsClose = strRawHTML.indexOf(strRTItemsClose, nRTItemsOpen);\r
+ if( nRTItemsClose < nRTItemsOpen )\r
+ return strRawHTML;\r
+ \r
+ // found a items string\r
+ var strItems = strRawHTML.substring( nRTItemsOpen + strRTItemsOpen.length, nRTItemsClose);\r
+ if( strItems.length < 1 )\r
+ return strRawHTML;\r
+ \r
+ // to reconstruct the item(s) param tag(s)\r
+ var strItemsArray = strItems.split('$$**$$');\r
+ if( strItemsArray.length < 1 )\r
+ return strRawHTML;\r
+ var strRunTimeItemParam = "";\r
+ for( var i = 0; i < strItemsArray.length; i++ )\r
+ {\r
+ strRunTimeItemParam += '<PARAM NAME="Item' + (i+1);\r
+ strRunTimeItemParam += '"' + ' VALUE="';\r
+ strRunTimeItemParam += strItemsArray[i];\r
+ strRunTimeItemParam += '">';\r
+ }\r
+ \r
+ // to insert the reconstructed item params into runtime object tag\r
+ var strAdjustedHTML = strRawHTML.substring(0,nRTObjTagClose) + strRunTimeItemParam + strRawHTML.substring(nRTObjTagClose, strRawHTML.length);\r
+ return kadovAdjustObjectTag(strAdjustedHTML, nDTCTagClose + strDTCTagClose.length);\r
+}\r
+\r
+function kadovTextPopupOnLoad( el )\r
+{\r
+ if( !CCSSP.bIsWinOS && !CCSSP.bIsSunOS)\r
+ return 0;\r
+\r
+ if( typeof(el) == "string" )\r
+ el = document.all.item(el);\r
+\r
+ var src = el.getAttribute( "x-use-popup" );\r
+ if(!src)\r
+ return 0;\r
+\r
+ var name = src;\r
+ if( src.substr(0,1) == "#" ) \r
+ name = src.substr(1, src.length-1);\r
+ var srcDiv = document.all.item(name);\r
+ if( !srcDiv )\r
+ return 1;\r
+\r
+ var type = el.getAttribute( "x-popup-type" );\r
+ var setup = el.getAttribute( "x-tmp-setup" );\r
+ var newId = name;\r
+ if( newId.indexOf( "_tmp") <= 0 )\r
+ newId += "_tmp";\r
+\r
+ if( !setup )\r
+ {\r
+ el.setAttribute( "x-tmp-setup", 1 );\r
+ \r
+ if( type == "pulldown" )\r
+ {\r
+ var strAdjust = kadovAdjustObjectTag(srcDiv.innerHTML,0);\r
+ var strCleanHTML = kadovRetrieveCleanHTML(strAdjust, "<!--", "-->");\r
+ strCleanHTML = kadovRetrieveCleanHTML(strCleanHTML, "<SCRIPT", "/SCRIPT>");\r
+\r
+ //work around the bug in HH.exe that highlight the phrases when use Search tab\r
+ //this approach is just removing the <FONT...> tag inserted by Microsoft in the runtime\r
+ strCleanHTML = kadovRetrieveCleanHTML(strCleanHTML, "<FONT color=#", "\">", 52);\r
+ \r
+ var strStyle = " style='display:none; position:relative;";\r
+ var newDiv = "<div class=droptext id=" + newId + strStyle + "'>" + strCleanHTML + "</div>";\r
+\r
+ srcDiv.outerHTML = ""; // empty the original DIV tag\r
+ var elParentPra = kadovFindParentParagraph(el);\r
+ if( elParentPra )\r
+ elParentPra.insertAdjacentHTML( "AfterEnd", newDiv );\r
+ }\r
+ else if( type == "expanding" )\r
+ {\r
+ var inner = kadovRetrieveTextInner(srcDiv);\r
+ if( inner == "" )\r
+ inner = srcDiv.innerHTML;\r
+ var strAdjust = kadovAdjustObjectTag(inner,0);\r
+ var strCleanHTML = kadovRetrieveCleanHTML(strAdjust, "<!--", "-->");\r
+ strCleanHTML = kadovRetrieveCleanHTML(strCleanHTML, "<SCRIPT", "/SCRIPT>");\r
+ var strClassName = (el.className == "glossterm") ? "glosstext" : "expandtext";\r
+ var newSpan = "<span class=" + strClassName + " style='display: none;' id=" + newId + "> " + strCleanHTML + "</span>";\r
+ srcDiv.outerHTML = ""; // empty the original DIV tag\r
+ el.insertAdjacentHTML( "AfterEnd", newSpan );\r
+ }\r
+ }\r
+ return 0;\r
+}\r
+\r
+function kadovTextPopup( el )\r
+{\r
+ if( (!CCSSP.bIsWinOS && !CCSSP.bIsSunOS) || (window.event == null) )\r
+ return;\r
+ window.event.cancelBubble = true;\r
+\r
+ if( typeof(el) == "string" )\r
+ el = document.all.item(el);\r
+\r
+ var src = el.getAttribute( "x-use-popup" );\r
+ if(!src)\r
+ return;\r
+\r
+ var name = src;\r
+ if( src.substr(0,1) == "#" ) \r
+ name = src.substr(1, src.length-1) + "_tmp";\r
+ var srcDiv = document.all.item(name);\r
+ if( !srcDiv )\r
+ return;\r
+\r
+ var type = el.getAttribute( "x-popup-type" );\r
+ var setup = el.getAttribute( "x-tmp-setup" );\r
+ if( srcDiv )\r
+ {\r
+ if( srcDiv.style.display == "" )\r
+ srcDiv.style.display = "none";\r
+ else\r
+ {\r
+ srcDiv.style.display = "";\r
+ if( typeof(srcDiv.bInitialized) == "undefined" )\r
+ {\r
+ srcDiv.bInitialized = true;\r
+ kadovInitEffects(name);\r
+ kadovInitEachChild(srcDiv);\r
+ }\r
+ }\r
+ }\r
+ return;\r
+}\r
+\r
+function kadovFindParentParagraph( el )\r
+{\r
+ if( typeof(el) == "string" )\r
+ el = document.all.item(el);\r
+ if( (!el) || el.tagName == "BODY" )\r
+ return null;\r
+ if( kadovIsParagraph(el.parentElement) )\r
+ return el.parentElement;\r
+ else\r
+ return kadovFindParentParagraph( el.parentElement );\r
+}\r
+\r
+//Begin HTML code invoked function\r
+function kadovRegisterEventHandler( obj, strEvent, strEventHandler )\r
+{\r
+ if( !gbBsIE4 )\r
+ return;\r
+ CCSSP.RegisterEventHandler( obj, strEvent, strEventHandler );\r
+}\r
+\r
+function kadovTextPopupInit( el )\r
+{\r
+ if( (!gbBsIE4) || (!CCSSP.bIsWinOS && !CCSSP.bIsSunOS))\r
+ return;\r
+ \r
+ if( typeof(el) == "string" )\r
+ el = document.all.item(el);\r
+ if( el != null )\r
+ {\r
+ CCSSP.RegisterEventHandler( el, "onclick", "kadovTextPopup(" + el.id +");" );\r
+ CCSSP.RegisterEventHandler( window, "onload", "kadovTextPopupOnLoad(" + el.id +");" );\r
+ }\r
+}\r
+//End HTML code invoked function\r
+\r
+//End to support extended and dropdown text effects.\r
+\r
+//Begin to convert iWrite format to RoboEditor Format for DHTML effects\r
+function kadovInitTriggersInHead( )\r
+{\r
+ if( Object.xDelayedInitElements )\r
+ {\r
+ var x = Object.xDelayedInitElements;\r
+ for(i=0; i<x.length; i++)\r
+ kadovInitTrigger( x[i] );\r
+ }\r
+}\r
+\r
+//Begin HTML code invoked function\r
+function kadovFilePopupInit( el )\r
+{\r
+ if( !gbBsIE4 )\r
+ return;\r
+ if( typeof(el) == "string" )\r
+ el = document.all.item(el);\r
+\r
+ if( el != null )\r
+ CCSSP.RegisterEventHandler( el, "onmouseover", "BSPSPopupOnMouseOver(event);" );\r
+}\r
+\r
+function kadovInitTrigger( element )\r
+{\r
+ if( !gbBsIE4 )\r
+ return;\r
+ var srcElement = element;\r
+ if( typeof(srcElement) == "string" )\r
+ {\r
+ srcElement = document.all.item(element,0);\r
+ if(srcElement == null)\r
+ return;\r
+ }\r
+ \r
+ if( !kadovIsParentVisible(srcElement) )\r
+ return;\r
+\r
+ var targets = srcElement.getAttribute( "x-targets" );\r
+ var arrOneTarget = targets.split( "," );\r
+ for( var i = 0; i < arrOneTarget.length; i ++ )\r
+ bsscFXInit( element, arrOneTarget[i], null, null, null, null );\r
+}\r
+\r
+function kadovIsParentVisible( el )\r
+{\r
+ if( typeof(el) == "string" )\r
+ el = document.all.item(el);\r
+ if( (!el) || el.tagName == "BODY" )\r
+ return true;\r
+ if( el.style.display == 'none' ) //el.visibility == 'hidden' || \r
+ return false;\r
+ else\r
+ return kadovIsParentVisible( el.parentElement );\r
+}\r
+\r
+function kadovInitEffects( element )\r
+{\r
+ if( !gbBsIE4 )\r
+ return;\r
+ var srcElement = element;\r
+ if( typeof(srcElement) == "string" )\r
+ {\r
+ srcElement = document.all.item(element,0);\r
+ if(srcElement == null)\r
+ return;\r
+ }\r
+ \r
+ if( !kadovIsParentVisible(srcElement) )\r
+ return;\r
+ \r
+ kadovInitEffect( srcElement, "x-on-hover" );\r
+ kadovInitEffect( srcElement, "x-on-pageclick" );\r
+ kadovInitEffect( srcElement, "x-on-pageload" );\r
+ kadovInitEffect( srcElement, "x-on-trigger-1" );\r
+ kadovInitEffect( srcElement, "x-on-trigger-2" );\r
+}\r
+//End HTML code invoked function\r
+\r
+function kadovInitEffect( element, prop )\r
+{\r
+ var values = null;\r
+ if( element.getAttribute( "currentStyle" ) && element.currentStyle.getAttribute)\r
+ values = element.currentStyle.getAttribute( prop );\r
+ else if (element.style.getAttribute)\r
+ values = element.style.getAttribute( prop );\r
+ if( !values )\r
+ return;\r
+\r
+ var functions = new Array();\r
+ var nIdx = 0, nStart = 0;\r
+ var nNext = values.indexOf( "\)", 0);\r
+ while( nNext >= 0 && nNext < values.length )\r
+ {\r
+ functions[nIdx] = values.substr( nStart, nNext-nStart+1);\r
+ nStart = nNext + 1;\r
+ nIdx++;\r
+ nNext = values.indexOf( "\)", nStart);\r
+ }\r
+ \r
+ for( var i=0; i<functions.length; i++)\r
+ {\r
+ var id = element.getAttribute( "id" );\r
+ var translatedProp = kadovTranslateProp(prop);\r
+\r
+ var lp = functions[i].indexOf( "(" );\r
+ var fnname = functions[i].substring(0, lp);\r
+ var srcargs = functions[i].substring(lp+1, functions[i].length-1);\r
+ \r
+ var nClickTimes = 1;\r
+ var arrForClickCount = srcargs.split( "," );\r
+ for( var j = 0; j < arrForClickCount.length; j++ )\r
+ {// to locate and get the "clicks=99" settings\r
+ var nPageClick = arrForClickCount[j].indexOf("clicks");\r
+ if( nPageClick >= 0 )\r
+ {\r
+ nPageClick = arrForClickCount[j].indexOf("=");\r
+ if( nPageClick > 0 )\r
+ {\r
+ nClickTimes = arrForClickCount[j].substring( nPageClick + 1, arrForClickCount[j].length) * 1;\r
+ break;\r
+ }\r
+ }\r
+ }\r
+ var args = srcargs;\r
+ if( j < arrForClickCount.length )\r
+ {// to strip out the "clicks=99" from the arguments string\r
+ args = "";\r
+ for( var k = 0; k < arrForClickCount.length; k ++ )\r
+ {\r
+ if( k != j )\r
+ {\r
+ args += arrForClickCount[k];\r
+ if( k < arrForClickCount.length - 1 )\r
+ args += ",";\r
+ }\r
+ }\r
+ }\r
+ bsscFXInit( null, id, translatedProp, fnname, args, nClickTimes );\r
+ }\r
+}\r
+\r
+function kadovTranslateProp( prop )\r
+{\r
+ switch( prop )\r
+ {\r
+ case "x-on-hover" : return "bsschover";\r
+ case "x-on-pageclick" : return "bsscpageclick";\r
+ case "x-on-pageload" : return "bsscpageload";\r
+ case "x-on-trigger-1" : return "bssctrigger1";\r
+ case "x-on-trigger-2" : return "bssctrigger2";\r
+ }\r
+ return null;\r
+}\r
+//End to convert iWrite format to RoboEditor Format for DHTML effects\r
+\r
+//Begin the definition of one entry to DHTML effects\r
+function bsscFXInit( trigger_ID, target_ID, event_type, \r
+ action_type, action_setting, event_addional )\r
+{\r
+ if( (!CCSSP.bIsWinOS && !CCSSP.bIsSunOS ) || typeof(target_ID) != "string" )//MUST have a target_ID\r
+ return; // we don't support Navigator yet\r
+ \r
+ if( typeof(event_type) == "string" )\r
+ event_type = event_type.toLowerCase();\r
+ if( typeof(action_type) == "string" )\r
+ action_type = action_type.toLowerCase();\r
+ if( typeof(action_setting) == "string" )\r
+ action_setting = action_setting.toLowerCase();\r
+ \r
+ // to get the target element then add it to the target list\r
+ var eleTarget = CCSSP.GetObject( target_ID );\r
+ if( (eleTarget != null) && (event_type != null) && (action_type != null) )\r
+ {\r
+ CEngine.AddOneTarget( target_ID, eleTarget );\r
+ CEngine.BuildTargetObject(target_ID, event_type, action_type, action_setting, event_addional);\r
+ }\r
+ \r
+ // to validate the trigger_ID parameter\r
+ if( typeof(trigger_ID) == "string" && trigger_ID != "" )\r
+ CEngine.BuildTriggerObject( trigger_ID, target_ID );\r
+} \r
+//End the definition of one entry to DHTML effects\r
+\r
+\r
+/// Section End - kadov DHTM (JavaScript 1.2)\r
+\r
+\r
+/// Section Begin - CCSSP DHTM (JavaScript 1.2)\r
+\r
+//Begin JavaScript libary for cross-platform positioning object.\r
+function CCSSP(){} // constructor of CCSSP class\r
+\r
+CCSSP.strAgent = navigator.userAgent.toLowerCase(); \r
+CCSSP.nAppVersion = parseInt(navigator.appVersion);\r
+\r
+CCSSP.bIsWinOS = ((CCSSP.strAgent.indexOf("win") >= 0) || (CCSSP.strAgent.indexOf("16bit") >= 0));\r
+CCSSP.bIsMacOS = (CCSSP.strAgent.indexOf("mac") >= 0);\r
+CCSSP.bIsSunOS = (CCSSP.strAgent.indexOf("sunos") != -1);\r
+\r
+CCSSP.bIsIE = (navigator.appName.indexOf("Microsoft") >= 0);\r
+CCSSP.bIsIE4 = (CCSSP.bIsIE && (CCSSP.nAppVersion >= 4));\r
+CCSSP.bIsIE5 = (CCSSP.bIsIE4 && (CCSSP.strAgent.indexOf("msie 5") != -1) )\r
+\r
+CCSSP.bIsNav = (navigator.appName.indexOf("Netscape") >= 0);\r
+CCSSP.bIsNav4 = (CCSSP.bIsNav && (CCSSP.nAppVersion >= 4));\r
+CCSSP.bIsNav6 = (CCSSP.bIsNav && (CCSSP.nAppVersion >= 5));\r
+\r
+CCSSP.GetObject = function( obj )\r
+{//convert object name string or reference into a valid object reference\r
+ if( typeof(obj) == "object" )\r
+ return obj;\r
+ else if( typeof(obj) == "string" && obj != "")\r
+ {\r
+ if( CCSSP.bIsNav4 )\r
+ return eval("document." + obj);\r
+ else\r
+ return eval("document.all." + obj);\r
+ }\r
+ else\r
+ return null;\r
+}\r
+\r
+CCSSP.MoveObjectTo = function(obj, x, y)\r
+{//positioning an object at a specific pixel coordinate\r
+ if( CCSSP.bIsNav4 )\r
+ obj.moveTo(x,y);\r
+ else\r
+ {\r
+ obj.style.pixelLeft = x;\r
+ obj.style.pixelTop = y;\r
+ }\r
+}\r
+\r
+CCSSP.MoveObjectBy = function(obj, dx, dy)\r
+{//moveing a object by x and/or y pixel\r
+ if( CCSSP.bIsNav4 )\r
+ obj.moveBy(dx,dy);\r
+ else\r
+ {\r
+ obj.style.pixelLeft += dx;\r
+ obj.style.pixelTop += dy;\r
+ }\r
+}\r
+\r
+CCSSP.SetObjectBGColor = function(obj, color)\r
+{//set the background color of an object\r
+ if( CCSSP.bIsNav4 )\r
+ obj.bgColor = color;\r
+ else\r
+ obj.style.backgroundColor = color;\r
+}\r
+\r
+CCSSP.ShowObject = function(obj, bShow)\r
+{// set the object to be visible or invisible\r
+ if( CCSSP.bIsNav4 )\r
+ obj.visibility = (bShow == true) ? 'show' : 'hide';\r
+ else\r
+ obj.style.visibility = (bShow == true) ? 'visible' : 'hidden';// when hidden, it still occupy some space.\r
+}\r
+\r
+CCSSP.GetObjectLeft = function(obj)\r
+{// retrieve the x coordinate of a posionable object\r
+ if( CCSSP.bIsNav4 )\r
+ return obj.left;\r
+ else\r
+ return obj.style.pixelLeft;\r
+}\r
+\r
+CCSSP.GetObjectTop = function(obj)\r
+{// retrieve the y coordinate of a posionable object\r
+ if( CCSSP.bIsNav4 )\r
+ return obj.top;\r
+ else\r
+ return obj.style.pixelTop;\r
+}\r
+\r
+CCSSP.GetObjectContainLeft = function(obj)\r
+{// retrieve the x coordinate of a posionable object relative to it's parent element\r
+ if( CCSSP.bIsNav4 )\r
+ return obj.pageX;\r
+ else\r
+ {\r
+ if( obj == document.body )\r
+ return obj.clientLeft;\r
+ else\r
+ return obj.offsetLeft;\r
+ }\r
+}\r
+\r
+CCSSP.GetObjectWindowLeft = function(obj)\r
+{// retrieve the x coordinate of a posionable object relative to browser window\r
+ if( CCSSP.bIsNav4 )\r
+ return obj.pageX;\r
+ else\r
+ {\r
+ var nOffsetWindowLeft = 0;\r
+ for(var element = obj; element; element = element.offsetParent)\r
+ nOffsetWindowLeft += CCSSP.GetObjectContainLeft(element);\r
+ return nOffsetWindowLeft;\r
+ }\r
+}\r
+\r
+CCSSP.GetObjectContainTop = function(obj)\r
+{// retrieve the y coordinate of a posionable object relative to it's parent element\r
+ if( CCSSP.bIsNav4 )\r
+ return obj.pageY;\r
+ else\r
+ {\r
+ if( obj == document.body )\r
+ return obj.clientTop;\r
+ else\r
+ return obj.offsetTop;\r
+ }\r
+}\r
+\r
+CCSSP.GetObjectWindowTop = function(obj)\r
+{// retrieve the y coordinate of a posionable object relative to browser window\r
+ if( CCSSP.bIsNav4 )\r
+ return obj.pageY;\r
+ else\r
+ {\r
+ var nOffsetWindowTop = 0;\r
+ for(var element = obj; element; element = element.offsetParent)\r
+ nOffsetWindowTop += CCSSP.GetObjectContainTop(element);\r
+ return nOffsetWindowTop;\r
+ }\r
+}\r
+\r
+CCSSP.GetObjectHeight = function(obj)\r
+{// retrieve the height of a posionable object\r
+ if( CCSSP.bIsNav4 )\r
+ return obj.clip.height;\r
+ else\r
+ return obj.offsetHeight;\r
+}\r
+\r
+CCSSP.GetObjectWidth = function(obj)\r
+{// retrieve the width of a posionable object\r
+ if( CCSSP.bIsNav4 )\r
+ return obj.clip.width;\r
+ else\r
+ return obj.offsetWidth;\r
+}\r
+\r
+CCSSP.RegisterEventHandler = function( srcObj, rawEventName, funcHandler )\r
+{ // to add the "funcHandler" as the "rawEventName" 's handler to the "srcObj" object,the original event handler will be combined\r
+ if (CCSSP.bIsNav4 && !CCSSP.bIsNav6)\r
+ return ;\r
+ var oldHandler = "";\r
+ if (CCSSP.bIsMacOS && CCSSP.bIsIE4)\r
+ {\r
+ if (typeof(srcObj[rawEventName.toLowerCase()])=="unknown")\r
+ { //search for <SCRIPT> tag which define the event handler\r
+ for( var i = 0; i < document.scripts.length; i++ ) \r
+ {\r
+ var script = document.scripts[i];\r
+ if( (script.htmlFor == srcObj.id || script.htmlFor == srcObj ) && script.event == rawEventName )\r
+ {\r
+ oldHandler = script.innerHTML;\r
+ break;\r
+ }\r
+ }\r
+ }\r
+ }\r
+ else\r
+ {\r
+ var oldInlineHandler = srcObj[rawEventName.toLowerCase()];\r
+ if( oldInlineHandler != null && typeof(oldInlineHandler) != "undefined")\r
+ {\r
+ var functionDefinition = oldInlineHandler.toString();\r
+ var bodyStart = functionDefinition.indexOf( "{" );\r
+ var bodyEnd = functionDefinition.lastIndexOf( "}" );\r
+ if( bodyStart > 0 || bodyEnd > bodyStart )\r
+ oldHandler = functionDefinition.substr( bodyStart + 1, bodyEnd - bodyStart - 2 );\r
+ }\r
+ else if( CCSSP.bIsIE4 )\r
+ { //search for <SCRIPT> tag which define the event handler\r
+ for( var i = 0; i < document.scripts.length; i++ ) \r
+ {\r
+ var script = document.scripts[i];\r
+ if( (script.htmlFor == srcObj.id || script.htmlFor == srcObj ) && script.event == rawEventName )\r
+ {\r
+ oldHandler = script.innerHTML;\r
+ break;\r
+ }\r
+ }\r
+ }\r
+ } \r
+ if( oldHandler.indexOf(funcHandler) >= 0 )\r
+ return;// to prevent register the funtion twice.\r
+\r
+ if( CCSSP.bIsNav4 ) // only "onload, onresize, onfocus" apply to window\r
+ {// other raw events will apply to layer\r
+ var noOn = rawEventName.substring(2, rawEventName.length);\r
+ if( typeof(noOn) == "string" && noOn.length > 3 ) {\r
+ srcObj.captureEvents( Event[noOn.toUpperCase()] );\r
+ }\r
+ }\r
+\r
+ var newHandler = oldHandler;\r
+ if( newHandler.length == 0 )\r
+ newHandler = funcHandler;\r
+ else\r
+ newHandler += "; " + funcHandler;\r
+ srcObj[rawEventName.toLowerCase()] = new Function( newHandler );\r
+}\r
+\r
+CCSSP.GetWindowHeight = function()\r
+{// retrieve the height of available content in browser window\r
+ if( CCSSP.bIsNav4 )\r
+ return window.innerHeight;\r
+ else\r
+ return document.body.clientHeight;\r
+}\r
+\r
+CCSSP.GetWindowBottom = function()\r
+{// retrieve the bottom postion of browser window\r
+ if( CCSSP.bIsNav4 )\r
+ return window.outerHeight + window.pageYOffset;\r
+ else\r
+ return document.body.clientHeight + document.body.scrollTop;\r
+}\r
+\r
+CCSSP.GetWindowWidth = function()\r
+{// retrieve the width of available content in browser window\r
+ if( CCSSP.bIsNav4 )\r
+ return window.innerWidth;\r
+ else\r
+ return document.body.clientWidth;\r
+}\r
+\r
+CCSSP.GetWindowRight = function()\r
+{// retrieve the right postion of browser window\r
+ if( CCSSP.bIsNav4 )\r
+ return window.outerWidth + window.pageXOffset;\r
+ else\r
+ return document.body.clientWidth + document.body.scrollLeft;\r
+}\r
+\r
+CCSSP.TrimString = function( objString, subtrim )\r
+{// to trim the "subtrim" in the beginning and ending of a string object\r
+ if( typeof(subtrim) != "string" || subtrim == null )\r
+ return objString;\r
+ var strHead = objString.substring(0, 1);\r
+ var strRear = objString.substring(objString.length-1, objString.length);\r
+ if( strHead != subtrim && strRear != subtrim )\r
+ return objString;\r
+ \r
+ var spacePos = objString.indexOf(subtrim);\r
+ if( spacePos < 0 )\r
+ return objString;\r
+ else if( spacePos == objString.length - 1 )\r
+ return objString.substring(0, spacePos);\r
+ else\r
+ {\r
+ var newString = objString.substring( spacePos + 1, objString.length);\r
+ return CCSSP.TrimString( newString, subtrim );\r
+ }\r
+}\r
+\r
+CCSSP.TrimSpace = function( objString )\r
+{\r
+ var Trim1 = CCSSP.TrimString( objString, " ");\r
+ return CCSSP.TrimString( Trim1, "\'");\r
+}\r
+\r
+CCSSP.GetEventElement = function( navEventObject )\r
+{// to get the element who fired the current event\r
+ if(CCSSP.bIsNav4 ) \r
+ if (CCSSP.bIsNav6)\r
+ return null;\r
+ else\r
+ navEventObject.target;\r
+ else\r
+ return event.srcElement;\r
+}\r
+\r
+CCSSP.PrepareFilter = function( Obj )\r
+{//to prepare for making the filter work\r
+ Obj.style.filter = "";\r
+ if( Obj.style.width != "" || Obj.style.height != "" || Obj.style.position == "absolute" )\r
+ return;\r
+ Obj.style.height = CCSSP.GetObjectHeight(Obj);\r
+}\r
+\r
+CCSSP.IsDescendant = function( progenitor, progeny )\r
+{\r
+ if( typeof(progeny) == "undefined" || progeny == null )\r
+ return false;\r
+ else if( progeny == progenitor )\r
+ return true; \r
+ else if( progeny.id == progenitor.id ) \r
+ return true; \r
+ else if( progeny.parentElement == progenitor.parentElement )\r
+ return false;\r
+ else\r
+ return CCSSP.IsDescendant( progenitor, progeny.parentElement );\r
+}\r
+\r
+CCSSP.IsTextTag = function( Obj )\r
+{\r
+ if( typeof( Obj.tagName ) == "undefined" )\r
+ return false;\r
+ return( Obj.tagName.indexOf("H") == 0 || Obj.tagName == "P" || \r
+ Obj.tagName == "FONT" || Obj.tagName == "SPAN" );\r
+}\r
+\r
+//End JavaScript libary for cross-platform positioning object.\r
+\r
+/// Section End - CCSSP DHTM (JavaScript 1.2)\r
+\r
+/// Section Begin - CCSSP DHTM 1 (JavaScript 1.2)\r
+\r
+//Begin the definition of class CTrigger\r
+function CTrigger( TriggerElement )\r
+{\r
+ // object : the trigger element. Never be null. \r
+ this.eleTrigger = TriggerElement;\r
+ \r
+ // number : the click counter number: only 3 values: 0,1,2;\r
+ this.nCounter = 0; \r
+ \r
+ //object as associative array of string:\r
+ // the associate target ID strings; one element at least. \r
+ this.objStrTarget = new Object();\r
+ this.eleTrigger.style.cursor = "hand";\r
+ if( this.eleTrigger.tagName == "AREA" && this.eleTrigger.getAttribute("href") == "" )\r
+ this.eleTrigger.setAttribute("href", "#") // to make a hand cursor for image map\r
+}\r
+\r
+CTrigger.prototype.AddTargetID = function( strTargetID )\r
+{// add one target ID string to the objStrTarget\r
+ if( typeof(strTargetID) != "string" )\r
+ return ;\r
+ if( typeof(this.objStrTarget[strTargetID]) != "string" )\r
+ this.objStrTarget[strTargetID] = strTargetID;\r
+}\r
+\r
+CTrigger.prototype.OnTriggerClick = function()\r
+{// to activate all asociated target\r
+ var strEventType = ( (this.nCounter++)% 2 == 0 ) ? \r
+ "bssctrigger1" : "bssctrigger2";\r
+ \r
+ // to enumerate associative target element's ID string\r
+ for( var strTargetID in this.objStrTarget ) \r
+ CEngine.SendEventToOneTarget( strTargetID, strEventType );\r
+}\r
+//End the definition of class CTrigger\r
+\r
+//Begin the definition of class CTarget\r
+function CTarget( TargetElement )\r
+{\r
+ // object : the target element. Never be null.\r
+ this.eleTarget = TargetElement;\r
+ this.objManager = new Object(); // object: the event manager\r
+} \r
+\r
+CTarget.nPageClickCounter = 0;// static class property.\r
+\r
+CTarget.prototype.GetAgencyObject = function(str_action_type,action_setting )\r
+{// return the action agency ( effect )object's refernece \r
+ switch( str_action_type )\r
+ {\r
+ case "show":return new CAgencyShow( this.eleTarget, true ) ;\r
+ case "hide":return new CAgencyShow( this.eleTarget, false ) ;\r
+\r
+ case "flyin" : \r
+ return new CAgencyFly(this.eleTarget, action_setting, true);\r
+ case "flyout" : \r
+ return new CAgencyFly(this.eleTarget, action_setting, false);\r
+ case "spiralin" : \r
+ return new CAgencySpiral(this.eleTarget, action_setting, true);\r
+ case "spiralout" : \r
+ return new CAgencySpiral(this.eleTarget, action_setting, false);\r
+ case "zoomin" :\r
+ return new CAgencyZoom(this.eleTarget, action_setting, true);\r
+ case "zoomout" : \r
+ return new CAgencyZoom(this.eleTarget, action_setting, false);\r
+ case "elastic" : \r
+ return new CAgencyElastic(this.eleTarget, action_setting);\r
+ \r
+ case "fadein" : \r
+ return (CCSSP.bIsIE4)? new CAgencyAlpha(this.eleTarget, action_setting, true) : null;\r
+ case "fadeout" :\r
+ return (CCSSP.bIsIE4)? new CAgencyAlpha(this.eleTarget, action_setting, false) : null;\r
+ case "rockrollstatic" :\r
+ case "rockroll" :\r
+ return (CCSSP.bIsIE4)? new CAgencyWave(this.eleTarget, action_setting, false) : null;\r
+ \r
+ case "glow":\r
+ return (CCSSP.bIsIE4)? new CAgencyGlow(this.eleTarget,action_setting) : null;\r
+ case "dropshadow":\r
+ return (CCSSP.bIsIE4)? new CAgencyDropShadow(this.eleTarget,action_setting) : null;\r
+ case "transition" :\r
+ return (CCSSP.bIsIE4)? new CAgencyRevealTrans(this.eleTarget,action_setting) : null;\r
+ case "blur" :\r
+ return (CCSSP.bIsIE4)? new CAgencyBlur(this.eleTarget,action_setting) : null;\r
+\r
+ case "fliph" : // all these 4 do NOT need any parameters\r
+ case "flipv" :\r
+ case "invert":\r
+ case "gray" :\r
+ return (CCSSP.bIsIE4)? new CAgencyChangeFilter(this.eleTarget, str_action_type) : null;\r
+ \r
+ case "fontchange": // the effects below change the style on the fly, so won't work in Navigator\r
+ return (CCSSP.bIsIE4)? new CAgencyFontChange(this.eleTarget,action_setting) : null;\r
+ case "boderchange": \r
+ case "stylechange":\r
+ return (CCSSP.bIsIE4)? new CAgencyChangeStyle(this.eleTarget,action_setting) : null;\r
+\r
+ default: return null;\r
+ }\r
+}\r
+\r
+CTarget.prototype.SetEventManager = function( \r
+ one_event_type,str_action_type,action_setting,event_additional)\r
+{// to set the event manager with specified action \r
+ if( typeof( one_event_type ) != "string" || \r
+ typeof( str_action_type ) != "string"||\r
+ typeof( action_setting ) != "string" )\r
+ return false;\r
+ if( typeof(this.objManager[one_event_type]) == "undefined" )\r
+ {\r
+ this.objManager[one_event_type] = new Object();\r
+ this.objManager[one_event_type].length = 0;\r
+ }\r
+ \r
+ var eventAgency = this.GetAgencyObject(str_action_type,action_setting);\r
+ if( eventAgency != null )\r
+ {\r
+ var ct = this.objManager[one_event_type].length ++;\r
+ this.objManager[one_event_type][ct] = eventAgency;\r
+ \r
+ if( one_event_type == "bsscpageclick" )\r
+ {// to deal with the "number of pageclick" stuff\r
+ if( typeof(event_additional) == "number" )\r
+ this.objManager[one_event_type][ct].nPageClick = event_additional;\r
+ else // set the default number \r
+ this.objManager[one_event_type][ct].nPageClick = 1;\r
+ \r
+ if( (typeof(this.objManager.nMinPageClickIndex) == "undefined") ||\r
+ (this.objManager[one_event_type][ct].nPageClick < \r
+ this.objManager[one_event_type][this.objManager.nMinPageClickIndex].nPageClick) )\r
+ this.objManager.nMinPageClickIndex = ct;\r
+ }\r
+ \r
+ //hide the object blindly,SetState function will take care of the final correct state\r
+ if( ((one_event_type == "bsscpageclick") && \r
+ (this.objManager[one_event_type][ct].nPageClick == 1)) ||\r
+ one_event_type == "bsscpageload" ||\r
+ one_event_type == "bssctrigger1" )\r
+ CCSSP.ShowObject( this.eleTarget, false );\r
+ \r
+ if( one_event_type == "bssctrigger1" || one_event_type == "bssctrigger2" )\r
+ if( typeof( this.strTriggerEvent ) == "undefined" )\r
+ this.strTriggerEvent = ( one_event_type == "bssctrigger1" ) ? "bssctrigger2" : "bssctrigger1";\r
+ \r
+ return true;\r
+ }\r
+ return false;\r
+}\r
+\r
+CTarget.prototype.OnEvent = function( strBsscEvent )\r
+{// response to the event ( bssc format )\r
+ if( typeof(this.objManager[strBsscEvent]) == "object" )\r
+ { // to get the event agency from the event manager\r
+ var eventAgency = this.objManager[strBsscEvent];\r
+ for( var i = 0; i < eventAgency.length; i++ )\r
+ {\r
+ if( strBsscEvent == "bsscpageclick" && \r
+ eventAgency[i].nPageClick != CTarget.nPageClickCounter )\r
+ continue;\r
+ else if( strBsscEvent == "bsschover" && event.type == "mouseout" )\r
+ eventAgency[i].EndEffect();\r
+ else // to invoke the unified function in effect object \r
+ eventAgency[i].UpdateEffect(); \r
+ }\r
+ }\r
+}\r
+\r
+CTarget.prototype.SetState = function( strBsscEvent )\r
+{\r
+ if( typeof(this.objManager[strBsscEvent]) != "object" )\r
+ return false;\r
+\r
+ // to get the event agency from the event manager\r
+ var eventAgency = this.objManager[strBsscEvent];\r
+ \r
+ if( strBsscEvent == "bsscpageclick" )\r
+ {// we only set the initial state for the minium number of pageclick \r
+ eventAgency[this.objManager.nMinPageClickIndex].PrepareEffect();\r
+ return true;\r
+ }\r
+ else\r
+ {\r
+ for( var i = 0; i < eventAgency.length; i++ )\r
+ eventAgency[i].PrepareEffect(); // to invoke the unified function in effect object \r
+ if( i > 0 )\r
+ return true;\r
+ else\r
+ return false;\r
+ }\r
+}\r
+//End the definition of class CTarget\r
+\r
+//Begin the definition of CEngine class\r
+function CEngine(){}// all properities are going be "class" properities\r
+\r
+// object : as associative array of trigger objects\r
+CEngine.objTrigger = new Object();\r
+// object : as associative array of target objects \r
+CEngine.objTarget = new Object(); \r
+\r
+// Array : each element is a CAgencyXXX animation object\r
+CEngine.arrAnimation = new Array();\r
+CEngine.PerformAnimation = function( nIndex )\r
+{// animation : update effects function\r
+ CEngine.arrAnimation[nIndex].UpdateEffect();\r
+}\r
+\r
+CEngine.AddOneTrigger = function(TriggerID,TriggerElement)\r
+{// add one Trigger object into the trigger array\r
+ if( typeof(TriggerID) != "string" || TriggerElement == null ||\r
+ typeof(TriggerElement) != "object" )\r
+ return;\r
+ if( typeof(CEngine.objTrigger[TriggerID] ) != "object" )\r
+ CEngine.objTrigger[TriggerID] = new CTrigger(TriggerElement);\r
+}\r
+ \r
+CEngine.AddOneTarget = function(TargetID, TargetElement)\r
+{// add one Target object into the target array\r
+ if( typeof(TargetID) != "string" || TargetElement == null ||\r
+ typeof(TargetElement) != "object" )\r
+ return;\r
+ if( typeof(CEngine.objTarget[TargetID]) != "object" )\r
+ CEngine.objTarget[TargetID] = new CTarget( TargetElement );\r
+}\r
+\r
+CEngine.SendEventToOneTarget = function(strTargetID, strBsscEvent )\r
+{// to activate one target object\r
+ if( typeof(CEngine.objTarget[strTargetID]) == "object" ) \r
+ {\r
+ if( strBsscEvent == "bssctrigger1" || strBsscEvent == "bssctrigger2" )\r
+ {//now, the "bssctrigger1" and "bssctrigger2" work like a toggle\r
+ if( strBsscEvent == CEngine.objTarget[strTargetID].strTriggerEvent )\r
+ strBsscEvent = (strBsscEvent == "bssctrigger1") ? "bssctrigger2" : "bssctrigger1";\r
+ CEngine.objTarget[strTargetID].strTriggerEvent = strBsscEvent;\r
+ }\r
+ CEngine.objTarget[strTargetID].OnEvent( strBsscEvent );\r
+ }\r
+}\r
+\r
+CEngine.SendEventToAllTarget = function( strBsscEvent )\r
+{ //to activate all target associative to the BSSC event\r
+ for( var strTargetID in CEngine.objTarget ) //to enumerate all target\r
+ CEngine.SendEventToOneTarget( strTargetID, strBsscEvent );\r
+}\r
+\r
+CEngine.SetOneTargetInitialState = function( strTargetID )\r
+{// only invoked after ALL effects for the target have been set\r
+ if( typeof(CEngine.objTarget[strTargetID]) == "object" ) \r
+ {// to get target object\r
+ var objTarget = CEngine.objTarget[strTargetID];\r
+ if( objTarget.SetState( "bsscpageload" ) == false )\r
+ {\r
+ objTarget.SetState( "bsscpageclick" );\r
+ objTarget.SetState( "bssctrigger1" );\r
+ }\r
+ }\r
+}\r
+\r
+CEngine.AdjustPageClickCounter = function()\r
+{\r
+ var nAdjustedClickCounter = CTarget.nPageClickCounter;\r
+ var bAdjusted = false;\r
+ for( var strTargetID in CEngine.objTarget ) //to enumerate all target\r
+ {// try to find the minum pageCliclConter greater than CTarget.nPageClickCounter\r
+ var objEventPageClick = CEngine.objTarget[strTargetID].objManager.bsscpageclick;\r
+ if( objEventPageClick != null )\r
+ {\r
+ for( var i = 0; i < objEventPageClick.length; i++ )\r
+ {\r
+ var nOtherPageClick = objEventPageClick[i].nPageClick;\r
+ if( nOtherPageClick == CTarget.nPageClickCounter )\r
+ return;\r
+ if( nOtherPageClick > CTarget.nPageClickCounter )\r
+ {\r
+ if( !bAdjusted )\r
+ {\r
+ nAdjustedClickCounter = nOtherPageClick;\r
+ bAdjusted = true;\r
+ }\r
+ else if( nOtherPageClick < nAdjustedClickCounter )\r
+ nAdjustedClickCounter = nOtherPageClick;\r
+ }\r
+ }\r
+ }\r
+ }\r
+ CTarget.nPageClickCounter = nAdjustedClickCounter;\r
+}\r
+\r
+CEngine.OnPageLoad = function()\r
+{ \r
+ // first, to set all target's initial state\r
+ for( var strTargetID in CEngine.objTarget )\r
+ CEngine.SetOneTargetInitialState( strTargetID );\r
+ \r
+ // to invoke all target's onpageload handler\r
+ CEngine.SendEventToAllTarget( "bsscpageload" );\r
+}\r
+\r
+CEngine.OnPageClick = function()\r
+{ // to invoke all target's onpageclick handler\r
+ var src = CCSSP.GetEventElement( arguments[0] );\r
+ if( src == null )\r
+ return;\r
+ \r
+ var objClickedTrigger = null;\r
+ for( var strTriggerID in CEngine.objTrigger )\r
+ { // to detect which trigger is clicked\r
+ if( CCSSP.IsDescendant( CEngine.objTrigger[strTriggerID].eleTrigger,src) )\r
+ {\r
+ objClickedTrigger = CEngine.objTrigger[strTriggerID];\r
+ break;\r
+ }\r
+ }\r
+ \r
+ if( objClickedTrigger != null) // the clicked trigger found\r
+ objClickedTrigger.OnTriggerClick();\r
+ else // no trigger is clicked\r
+ { // to send PageClick event to all target\r
+ CTarget.nPageClickCounter++;\r
+ CEngine.AdjustPageClickCounter();\r
+ CEngine.SendEventToAllTarget( "bsscpageclick" );\r
+ }\r
+} \r
+\r
+CEngine.OnMouseOver = function()\r
+{ // to invoke all target's onpageload handler\r
+ var src = CCSSP.GetEventElement( arguments[0] );\r
+ if( src == null )\r
+ return;\r
+ \r
+ var strHoveredTargetID = null;\r
+ for( var strTargetID in CEngine.objTarget )\r
+ { // to detect which Target is hovering on\r
+ if( CCSSP.IsDescendant( CEngine.objTarget[strTargetID].eleTarget, src ) )\r
+ {\r
+ strHoveredTargetID = strTargetID;\r
+ break;\r
+ }\r
+ }\r
+ \r
+ if( strHoveredTargetID != null ) // the hovered target found\r
+ CEngine.SendEventToOneTarget( strHoveredTargetID, "bsschover" );\r
+}\r
+\r
+CEngine.BuildTargetObject = function(target_ID,event_type,action_type,\r
+ action_setting, event_additional)\r
+{// to build target object \r
+ // to get the target object\r
+ if( typeof( CEngine.objTarget[target_ID] ) != "object" )\r
+ return false;// the engine's AddOneTarget function might have failed.\r
+ var TargetObject = CEngine.objTarget[target_ID];\r
+ \r
+ // to prepare the parameters for the event manager\r
+ var arrEvent = event_type.split("|"); // to split the combined event_type string\r
+ var arrAction = action_type.split("|");//to split the combined action_type string\r
+ for( var trim = 0; trim < arrEvent.length; trim++ )\r
+ arrEvent[trim] = CCSSP.TrimSpace(arrEvent[trim]);\r
+ \r
+ for( trim = 0; trim < arrAction.length; trim++ )\r
+ arrAction[trim] = CCSSP.TrimSpace(arrAction[trim]);\r
+ \r
+ var arrSetting = new Array(); \r
+ if( typeof(action_setting) == "string" )\r
+ arrSetting = action_setting.split("|");// to split the combined action_setting string\r
+ // to calibrate the arrays\r
+ for( var i = arrSetting.length; i < arrAction.length; i++ )\r
+ {\r
+ if( typeof(arrSetting[i]) != "string" )\r
+ arrSetting[i] = "";\r
+ } \r
+\r
+ // to prepare for dealing with the absolute posioning element\r
+ TargetObject.eleTarget.ABSX = CCSSP.GetObjectLeft( TargetObject.eleTarget );\r
+ TargetObject.eleTarget.ABSY = CCSSP.GetObjectTop( TargetObject.eleTarget );\r
+\r
+ if( arrEvent.length > 1 )\r
+ {// if event is combined, it must be : "bssctrigger1 | bssctrigger2"\r
+ if( arrAction.length != 2 )\r
+ return false; // if event is combined, there must be 2 actions\r
+ for( i = 0 ; i < 2; i++ )\r
+ {\r
+ if( TargetObject.SetEventManager(arrEvent[i], arrAction[i], \r
+ arrSetting[i], event_additional) == false )\r
+ return false; // the event manager has not been set up\r
+ }\r
+ }\r
+ else // the event_type string is not combined\r
+ {\r
+ for( i = 0 ; i < arrAction.length; i++ )\r
+ {\r
+ TargetObject.SetEventManager(event_type, arrAction[i], arrSetting[i], event_additional);\r
+ // to validate the event manager\r
+ if( typeof(TargetObject.objManager[event_type]) != "object" ||\r
+ typeof(TargetObject.objManager[event_type][i]) != "object" )\r
+ return false; // the event manager has not been set up\r
+ }\r
+ }\r
+ return true;\r
+}\r
+\r
+CEngine.BuildTriggerObject = function(trigger_ID, target_ID)\r
+{// to build the trigger object\r
+ var arrTrigger = trigger_ID.split("|"); // to split the combined trigger_ID string\r
+ for( var i = 0; i < arrTrigger.length; i ++ )\r
+ {// to get the trigger element then add it to the trigger list\r
+ arrTrigger[i] = CCSSP.TrimSpace( arrTrigger[i] );\r
+ var eleTrigger = CCSSP.GetObject( arrTrigger[i] );\r
+ if( eleTrigger == null )\r
+ continue; // the trigger_ID string in the HTML code maybe wrong\r
+ CEngine.AddOneTrigger( arrTrigger[i], eleTrigger );\r
+\r
+ // to get the target object\r
+ if( typeof( this.objTrigger[arrTrigger[i]] ) != "object" )\r
+ continue;// the engine's AddOneTarget function might have failed.\r
+ CEngine.objTrigger[arrTrigger[i]].AddTargetID( target_ID );\r
+ }\r
+}\r
+//End the definition of CEngine class\r
+\r
+/// Section End - CCSSP DHTM 1 (JavaScript 1.2)\r
+\r
+/// Section Begin - CCSSP DHTM 2 (JavaScript 1.2)\r
+\r
+//Begin the definition of CAgencyXXXX classes\r
+\r
+//Begin of the CAgencyShow definition\r
+function CAgencyShow( element, bIsShow )\r
+{\r
+ this.ele = element;\r
+ this.bIsShow = bIsShow;\r
+}\r
+\r
+CAgencyShow.prototype.PrepareEffect = function()\r
+{\r
+ CCSSP.ShowObject( this.ele, !this.bIsShow );\r
+}\r
+\r
+CAgencyShow.prototype.UpdateEffect = function()\r
+{\r
+ CCSSP.ShowObject( this.ele, this.bIsShow );\r
+}\r
+\r
+CAgencyShow.prototype.EndEffect = function()\r
+{\r
+ CCSSP.ShowObject( this.ele, !this.bIsShow );\r
+}\r
+// End of the CAgencyShow definition\r
+\r
+// Begin of CAgencyFly definition\r
+function CAgencyFly( element, settings, bIsIn )\r
+{\r
+ this.ele = element;\r
+ this.bIsIn = bIsIn;\r
+ this.duration = 1000; // default\r
+ this.direction = "right";\r
+\r
+ var arrAllSet = settings.split(",");\r
+ for( var i = 0; i < arrAllSet.length; i ++ )\r
+ {// to retrieve the setting\r
+ arrAllSet[i] = CCSSP.TrimSpace(arrAllSet[i]);\r
+ var arrOneSet = arrAllSet[i].split("=");\r
+ for( var j = 0; j < arrOneSet.length; j++ )\r
+ arrOneSet[j] = CCSSP.TrimSpace(arrOneSet[j]);\r
+ switch( arrOneSet[0] )\r
+ {\r
+ case "speed" : this.duration = 100000/arrOneSet[1]; break;\r
+ case "direction" : this.direction = arrOneSet[1]; break;\r
+ }\r
+ }\r
+ \r
+ if( CCSSP.bIsIE5 && this.ele.style.position != "absolute" )\r
+ this.ele.style.position = "relative";\r
+ this.timer = null;\r
+ this.aniIndex = CEngine.arrAnimation.length;\r
+ CEngine.arrAnimation[this.aniIndex] = this;\r
+}\r
+\r
+CAgencyFly.prototype.PrepareEffect = function()\r
+{\r
+ CCSSP.ShowObject(this.ele, !this.bIsIn );\r
+}\r
+\r
+CAgencyFly.prototype.UpdateEffect = function()\r
+{\r
+ if( this.timer == null )\r
+ this.ResetParameters();\r
+\r
+ var percent = ((new Date()).getTime() - this.startTime)/this.duration;\r
+ if( percent >= 1.0 )\r
+ this.EndEffect();\r
+ else\r
+ {\r
+ var newX = this.startX*(1.0-percent) + this.finalX*percent;\r
+ var newY = this.startY*(1.0-percent) + this.finalY*percent;\r
+ CCSSP.MoveObjectTo(this.ele, newX, newY);\r
+ if( this.timer == null )\r
+ this.timer = setInterval("CEngine.PerformAnimation(" + this.aniIndex + ")", 20 );\r
+ }\r
+}\r
+\r
+CAgencyFly.prototype.EndEffect = function()\r
+{\r
+ clearInterval( this.timer );\r
+ this.timer = null;\r
+\r
+ if( this.bIsIn ) // FlyIn\r
+ CCSSP.MoveObjectTo(this.ele, this.finalX, this.finalY);\r
+ else // FlyOut\r
+ CCSSP.MoveObjectTo(this.ele, this.startX, this.startY);\r
+ CCSSP.ShowObject(this.ele, this.bIsIn );\r
+}\r
+\r
+CAgencyFly.prototype.ResetParameters = function()\r
+{\r
+ this.PrepareEffect();\r
+ CCSSP.ShowObject(this.ele, true );\r
+\r
+ this.startX = 0;\r
+ this.startY = 0;\r
+ this.finalX = 0;\r
+ this.finalY = 0; \r
+ \r
+ var offsetLeft = CCSSP.GetObjectWindowLeft(this.ele) + this.ele.offsetWidth;\r
+ var offsetTop = CCSSP.GetObjectWindowTop(this.ele) + this.ele.offsetHeight;\r
+ var offsetRight = CCSSP.GetWindowRight();\r
+ var offsetBottom = CCSSP.GetWindowBottom();\r
+\r
+ if( this.bIsIn )\r
+ { // FlyIn\r
+ this.finalX = this.ele.ABSX;\r
+ this.finalY = this.ele.ABSY;\r
+\r
+ switch( this.direction )\r
+ {\r
+ case "right": this.startX = offsetRight; this.startY = this.finalY; break;\r
+ case "left": this.startX = -offsetLeft; this.startY = this.finalY; break;\r
+ case "down": this.startY = offsetBottom; this.startX = this.finalX; break;\r
+ case "up": this.startY = -offsetTop; this.startX = this.finalX; break;\r
+ case "downright":\r
+ this.startX = ( offsetBottom < offsetRight) ? offsetBottom : offsetRight;\r
+ this.startY = this.startX; break;\r
+ case "upright":\r
+ this.startX = (offsetTop < offsetRight)? offsetTop : offsetRight;\r
+ this.startY = -this.startX; break;\r
+ case "upleft":\r
+ this.startX = -((offsetTop < offsetRight)? offsetTop : offsetRight);\r
+ this.startY = this.startX; break;\r
+ case "downleft":\r
+ this.startX = -(( offsetBottom < offsetRight) ? offsetBottom : offsetRight);\r
+ this.startY = -this.startX; break;\r
+ }\r
+ }\r
+ else\r
+ { // FlyOut\r
+ this.startX = this.ele.ABSX;\r
+ this.startY = this.ele.ABSY;\r
+\r
+ switch( this.direction )\r
+ {\r
+ case "right": this.finalX = offsetRight; this.finalY = this.startY; break;\r
+ case "left": this.finalX = -offsetLeft; this.finalY = this.startY; break;\r
+ case "down": this.finalY = offsetBottom; this.finalX = this.startX; break;\r
+ case "up": this.finalY = -offsetTop; this.finalX = this.startX; break;\r
+ case "downright":\r
+ this.finalX = ( offsetBottom < offsetRight) ? offsetBottom : offsetRight;\r
+ this.finalY = this.finalX; break;\r
+ case "upright":\r
+ this.finalX = (offsetTop < offsetRight)? offsetTop : offsetRight;\r
+ this.finalY = -this.finalX; break;\r
+ case "upleft":\r
+ this.finalX = -((offsetTop < offsetRight)? offsetTop : offsetRight);\r
+ this.finalY = this.finalX; break;\r
+ case "downleft":\r
+ this.finalX = -(( offsetBottom < offsetRight) ? offsetBottom : offsetRight);\r
+ this.finalY = -this.finalX; break;\r
+ }\r
+ }\r
+ CCSSP.MoveObjectTo(this.ele, this.startX, this.startY);\r
+ this.startTime = (new Date()).getTime();\r
+}\r
+// End of the CAgencyFly definition\r
+\r
+// Begin of CAgencySpiral\r
+function CAgencySpiral( element, settings, bIsIn )\r
+{\r
+ this.ele = element;\r
+ this.bIsIn = bIsIn;\r
+ this.duration = 1000; // default\r
+\r
+ var arrAllSet = settings.split(",");\r
+ for( var i = 0; i < arrAllSet.length; i ++ )\r
+ {// to retrieve the setting\r
+ arrAllSet[i] = CCSSP.TrimSpace(arrAllSet[i]);\r
+ var arrOneSet = arrAllSet[i].split("=");\r
+ for( var j = 0; j < arrOneSet.length; j++ )\r
+ arrOneSet[j] = CCSSP.TrimSpace(arrOneSet[j]);\r
+ switch( arrOneSet[0] )\r
+ {\r
+ case "speed" : this.duration = 100000/arrOneSet[1]; break;\r
+ }\r
+ }\r
+\r
+ if( CCSSP.bIsIE5 && this.ele.style.position != "absolute" )\r
+ this.ele.style.position = "relative";\r
+ this.timer = null;\r
+ this.aniIndex = CEngine.arrAnimation.length;\r
+ CEngine.arrAnimation[this.aniIndex] = this;\r
+}\r
+\r
+CAgencySpiral.prototype.PrepareEffect = function()\r
+{\r
+ CCSSP.ShowObject(this.ele, !this.bIsIn );\r
+}\r
+\r
+CAgencySpiral.prototype.UpdateEffect = function()\r
+{\r
+ if( this.timer == null )\r
+ this.ResetParameters();\r
+\r
+ var percent = ((new Date()).getTime() - this.startTime)/this.duration;\r
+ if( percent >= 1.0 )\r
+ this.EndEffect();\r
+ else\r
+ {\r
+ var rf = (this.bIsIn)? (1.0 - percent) : percent; \r
+ var t = (1.0-rf) * 4.0 * Math.PI\r
+ var rxP = (this.bIsIn)? this.startX : this.finalX; \r
+ var ryP = (this.bIsIn)? this.startY : this.finalY; \r
+ var rx = (Math.abs(rxP) < 200) ? Math.abs(rxP) : 200;\r
+ var ry = (Math.abs(ryP) < 200) ? Math.abs(ryP) : 200;\r
+\r
+ var newX = Math.ceil(-rf*Math.cos(t)*rx) + this.ele.ABSX;\r
+ var newY = Math.ceil(-rf*Math.sin(t)*ry) + this.ele.ABSY;\r
+ CCSSP.MoveObjectTo(this.ele, newX, newY);\r
+ if( this.timer == null )\r
+ this.timer = setInterval("CEngine.PerformAnimation(" + this.aniIndex + ")", 20 );\r
+ }\r
+}\r
+\r
+CAgencySpiral.prototype.EndEffect = function()\r
+{\r
+ clearInterval( this.timer );\r
+ this.timer = null;\r
+ \r
+ if( this.bIsIn ) // In\r
+ CCSSP.MoveObjectTo(this.ele, this.finalX, this.finalY);\r
+ else // Out\r
+ CCSSP.MoveObjectTo(this.ele, this.startX, this.startY);\r
+ CCSSP.ShowObject(this.ele, this.bIsIn );\r
+}\r
+\r
+CAgencySpiral.prototype.ResetParameters = function()\r
+{\r
+ this.PrepareEffect();\r
+ CCSSP.ShowObject(this.ele, true );\r
+ this.startX = (this.bIsIn)? CCSSP.GetWindowRight() : this.ele.ABSX;\r
+ this.startY = (this.bIsIn)? CCSSP.GetWindowBottom() : this.ele.ABSY;\r
+ this.finalX = (this.bIsIn)? this.ele.ABSX : CCSSP.GetWindowRight();\r
+ this.finalY = (this.bIsIn)? this.ele.ABSY : CCSSP.GetWindowBottom(); \r
+ \r
+ CCSSP.MoveObjectTo(this.ele, this.startX, this.startY);\r
+ this.startTime = (new Date()).getTime();\r
+}\r
+// End of CAgencySpiral\r
+\r
+// Begin of CAgencyElastic\r
+function CAgencyElastic( element, settings)\r
+{\r
+ this.ele = element;\r
+ this.duration = 1000; // default\r
+ this.direction = "right";\r
+\r
+ var arrAllSet = settings.split(",");\r
+ for( var i = 0; i < arrAllSet.length; i ++ )\r
+ {// to retrieve the setting\r
+ arrAllSet[i] = CCSSP.TrimSpace(arrAllSet[i]);\r
+ var arrOneSet = arrAllSet[i].split("=");\r
+ for( var j = 0; j < arrOneSet.length; j++ )\r
+ arrOneSet[j] = CCSSP.TrimSpace(arrOneSet[j]);\r
+ switch( arrOneSet[0] )\r
+ {\r
+ case "speed" : this.duration = 100000/arrOneSet[1]; break;\r
+ case "direction" : this.direction = arrOneSet[1]; break;\r
+ }\r
+ }\r
+ \r
+ if( CCSSP.bIsIE5 && this.ele.style.position != "absolute" )\r
+ this.ele.style.position = "relative";\r
+ this.timer = null;\r
+ this.aniIndex = CEngine.arrAnimation.length;\r
+ CEngine.arrAnimation[this.aniIndex] = this;\r
+}\r
+\r
+CAgencyElastic.prototype.PrepareEffect = function()\r
+{\r
+ CCSSP.ShowObject(this.ele, false );\r
+}\r
+\r
+CAgencyElastic.prototype.UpdateEffect = function()\r
+{\r
+ if( this.timer == null )\r
+ this.ResetParameters();\r
+\r
+ var percent = ((new Date()).getTime() - this.startTime)/this.duration;\r
+ if( percent >= 1.0 )\r
+ this.EndEffect();\r
+ else\r
+ {\r
+ var newX = this.startX;\r
+ var newY = this.startY;\r
+ var rf = Math.exp(-percent*3);\r
+ var t = percent * 1.5 * Math.PI\r
+ var rx = (Math.abs(this.startX) > Math.abs(this.startY)) ? this.startX : this.startY;\r
+ switch (this.direction )\r
+ {\r
+ case "left": \r
+ case "right" : newX = rf*Math.cos(t)*rx + this.ele.ABSX; break;\r
+ case "up": \r
+ case "down" : newY = rf*Math.cos(t)*rx + this.ele.ABSX; break;\r
+ }\r
+ CCSSP.MoveObjectTo(this.ele, newX, newY);\r
+ if( this.timer == null )\r
+ this.timer = setInterval("CEngine.PerformAnimation(" + this.aniIndex + ")", 20 );\r
+ }\r
+}\r
+\r
+CAgencyElastic.prototype.EndEffect = function()\r
+{\r
+ CCSSP.MoveObjectTo(this.ele, this.finalX, this.finalY);\r
+ clearInterval( this.timer );\r
+ this.timer = null;\r
+}\r
+\r
+CAgencyElastic.prototype.ResetParameters = function()\r
+{\r
+ CCSSP.ShowObject(this.ele, true );\r
+ this.startX = this.ele.ABSX;\r
+ this.finalX = this.ele.ABSX;\r
+ this.startY = this.ele.ABSY;\r
+ this.finalY = this.ele.ABSY;\r
+ \r
+ switch (this.direction)\r
+ { \r
+ case "left": this.startX = -this.ele.offsetWidth; break;\r
+ case "right": this.startX = this.ele.offsetWidth; break;\r
+ case "up": this.startY = -this.ele.offsetHeight;break;\r
+ case "down": this.startY = this.ele.offsetHeight; break;\r
+ }\r
+ CCSSP.MoveObjectTo(this.ele, this.startX, this.startY);\r
+ this.startTime = (new Date()).getTime();\r
+}\r
+// End of CAgencyElastic\r
+\r
+// Begin of CAgencyZoom\r
+function CAgencyZoom( element, settings, bIsIn)\r
+{\r
+ this.ele = element;\r
+ this.duration = 1000; // default\r
+ \r
+ var arrAllSet = settings.split(",");\r
+ for( var i = 0; i < arrAllSet.length; i ++ )\r
+ {// to retrieve the setting\r
+ arrAllSet[i] = CCSSP.TrimSpace(arrAllSet[i]);\r
+ var arrOneSet = arrAllSet[i].split("=");\r
+ for( var j = 0; j < arrOneSet.length; j++ )\r
+ arrOneSet[j] = CCSSP.TrimSpace(arrOneSet[j]);\r
+ switch( arrOneSet[0] )\r
+ {\r
+ case "speed" : this.duration = 100000/arrOneSet[1]; break;\r
+ }\r
+ }\r
+\r
+ this.bIsIn = bIsIn;\r
+ this.timer = null;\r
+ this.aniIndex = CEngine.arrAnimation.length;\r
+ CEngine.arrAnimation[this.aniIndex] = this;\r
+}\r
+\r
+CAgencyZoom.prototype.PrepareEffect = function()\r
+{\r
+ CCSSP.ShowObject(this.ele, false);\r
+}\r
+\r
+CAgencyZoom.prototype.UpdateEffect = function()\r
+{\r
+ if( this.timer == null )\r
+ this.ResetParameters();\r
+\r
+ var percent = ((new Date()).getTime() - this.startTime)/this.duration;\r
+ if( percent >= 1.0 )\r
+ this.EndEffect();\r
+ else\r
+ {\r
+ var nFactorIn = Math.ceil(50+50*percent);\r
+ var nFactorOut = Math.ceil(100+200*(1-percent));\r
+ var AlterFontsize = ((this.bIsIn)? nFactorIn : nFactorOut) + "%";\r
+ var AlterFactor = ((this.bIsIn)? nFactorIn : nFactorOut) / 100;\r
+ \r
+ this.UpdateEffectAllChildren(this.ele, AlterFontsize, AlterFactor);\r
+ for(var index = 0; index < this.ele.all.length; index++)\r
+ this.UpdateEffectAllChildren(this.ele.all[index], AlterFontsize, AlterFactor);\r
+ \r
+ if( this.timer == null )\r
+ this.timer = setInterval("CEngine.PerformAnimation(" + this.aniIndex + ")", 20 );\r
+ }\r
+}\r
+\r
+CAgencyZoom.prototype.UpdateEffectAllChildren = function(child, FontSize, Factor)\r
+{\r
+ if( CCSSP.IsTextTag(child) )\r
+ child.style.fontSize = FontSize;\r
+ else\r
+ {\r
+ if( typeof(child.orgWidth) == "number" )\r
+ child.style.width = Factor * child.orgWidth;\r
+ if( typeof(child.orgHeight) == "number" )\r
+ child.style.height = Factor * child.orgHeight;\r
+ }\r
+}\r
+\r
+CAgencyZoom.prototype.EndEffect = function()\r
+{\r
+ this.EndEffectAllChildren(this.ele);\r
+ for(var index = 0; index < this.ele.all.length; index++)\r
+ this.EndEffectAllChildren(this.ele.all[index]);\r
+ \r
+ clearInterval( this.timer );\r
+ this.timer = null;\r
+}\r
+\r
+CAgencyZoom.prototype.EndEffectAllChildren = function( child )\r
+{ \r
+ if( CCSSP.IsTextTag(child) )\r
+ child.style.fontSize = child.orgFontSize;\r
+ else\r
+ {\r
+ if( typeof(child.intactWidth) != "undefined" )\r
+ {\r
+ child.width = child.intactWidth;\r
+ child.height = child.intactHeight;\r
+ }\r
+ else if( typeof(child.style.intactPixelWidth) != "undefined" )\r
+ {\r
+ child.style.pixelWidth = child.style.intactPixelWidth;\r
+ child.style.pixelHeight = child.style.intactPixelHeight;\r
+ }\r
+ }\r
+}\r
+\r
+CAgencyZoom.prototype.ResetParameters = function()\r
+{\r
+ this.PrepareEffect();\r
+ this.ResetParametersAllChildren( this.ele );\r
+ for(var index = 0; index < this.ele.all.length; index++)\r
+ this.ResetParametersAllChildren(this.ele.all[index]);\r
+ \r
+ this.startTime = (new Date()).getTime();\r
+}\r
+\r
+CAgencyZoom.prototype.ResetParametersAllChildren = function( child )\r
+{\r
+ CCSSP.ShowObject(child, true );\r
+ if( (child.tagName == "DIV") && (child.parentElement.tagName == "TD") )\r
+ child.width = "100%";// if the div is inside a cell of table, we need the this hack\r
+ \r
+ if( CCSSP.IsTextTag(child) )\r
+ child.orgFontSize = child.style.fontSize;\r
+ else\r
+ {\r
+ if( child.width > "" || child.height > "" )\r
+ {\r
+ child.orgWidth = child.intactWidth = child.width;\r
+ child.orgHeight = child.intactHeight = child.height;\r
+ }\r
+ else if( ( typeof(child.orgWidth) != "number" ) && (typeof(child.orgHeight) != "number") )\r
+ {\r
+ child.orgWidth = child.style.intactPixelWidth = child.style.pixelWidth;\r
+ child.orgHeight = child.style.intactPixelHeight = child.style.pixelHeight;\r
+ }\r
+ }\r
+}\r
+// End of CAgencyZoom\r
+\r
+//// the following effects will use IE's exclusive "filter" function ////\r
+// Begin of CAgencyAlpha definition\r
+function CAgencyAlpha( element, settings, bIsIn )\r
+{// because of "visual filter" style, this won't work in Navigator\r
+ this.ele = element;\r
+ this.bIsIn = bIsIn;\r
+\r
+ // to set the default value\r
+ this.startOpacity = (this.bIsIn) ? 0 : 100;\r
+ this.endOpacity = (this.bIsIn) ? 100 : 0;\r
+ \r
+ this.duration = 1000; // default\r
+ \r
+ var arrAllSet = settings.split(",");\r
+ for( var i = 0; i < arrAllSet.length; i ++ )\r
+ {// to retrieve the setting\r
+ arrAllSet[i] = CCSSP.TrimSpace(arrAllSet[i]);\r
+ var arrOneSet = arrAllSet[i].split("=");\r
+ for( var j = 0; j < arrOneSet.length; j++ )\r
+ arrOneSet[j] = CCSSP.TrimSpace(arrOneSet[j]);\r
+ switch( arrOneSet[0] )\r
+ {\r
+ case "speed" : this.duration = 100000/arrOneSet[1]; break;\r
+ }\r
+ }\r
+ \r
+ this.timer = null;\r
+ this.aniIndex = CEngine.arrAnimation.length;\r
+ CEngine.arrAnimation[this.aniIndex] = this;\r
+}\r
+\r
+CAgencyAlpha.prototype.PrepareEffect = function()\r
+{// to set the visual filter function\r
+ // the visual filter ONLY work when set by "Width and Height" or\r
+ // absolute position for DIV, SPAN and normal tag ( such as p )\r
+ // but, "absolute" cause the following elements overlap, so:\r
+ CCSSP.PrepareFilter( this.ele );\r
+ CCSSP.ShowObject(this.ele, !this.bIsIn );\r
+}\r
+\r
+CAgencyAlpha.prototype.UpdateEffect = function()\r
+{// to set the visual filter function\r
+ if( this.timer == null )\r
+ this.ResetParameters();\r
+ if( typeof(this.ele.filters.alpha) != "object" )\r
+ {\r
+ this.EndEffect();\r
+ return;\r
+ }\r
+\r
+ var percent = ((new Date()).getTime() - this.startTime)/this.duration;\r
+ if( percent >= 1.0 )\r
+ this.EndEffect();\r
+ else if( typeof(this.ele.filters.alpha) == "object" )\r
+ {\r
+ this.ele.filters.alpha.opacity = this.startOpacity*(1.0-percent) + this.endOpacity*percent;\r
+ if( this.timer == null )\r
+ this.timer = setInterval("CEngine.PerformAnimation(" + this.aniIndex + ")", 20 );\r
+ }\r
+}\r
+\r
+CAgencyAlpha.prototype.EndEffect = function()\r
+{// to remove the visual filter function\r
+ clearInterval( this.timer );\r
+ this.timer = null;\r
+ this.ele.style.filter = "";\r
+ CCSSP.ShowObject(this.ele, this.bIsIn );\r
+}\r
+\r
+CAgencyAlpha.prototype.ResetParameters = function()\r
+{\r
+ this.PrepareEffect();\r
+ CCSSP.ShowObject(this.ele, true );\r
+ this.ele.style.filter = "alpha(opacity=" + this.startOpacity + ")";\r
+ this.startTime = (new Date()).getTime();\r
+}\r
+// End of the CAgencyAlpha definition\r
+\r
+// Begin of CAgencyWave definition\r
+function CAgencyWave( element, settings )\r
+{// because of "visual filter" style, this won't work in Navigator\r
+ this.ele = element;\r
+\r
+ this.duration = 0; // default\r
+ this.strength = 10;\r
+ this.freq = 1;\r
+ this.lightstrength = 1;\r
+ \r
+ var arrAllSet = settings.split(",");\r
+ for( var i = 0; i < arrAllSet.length; i ++ )\r
+ {// to retrieve the setting\r
+ arrAllSet[i] = CCSSP.TrimSpace(arrAllSet[i]);\r
+ var arrOneSet = arrAllSet[i].split("=");\r
+ for( var j = 0; j < arrOneSet.length; j++ )\r
+ arrOneSet[j] = CCSSP.TrimSpace(arrOneSet[j]);\r
+ switch( arrOneSet[0] )\r
+ {\r
+ case "duration" : this.duration = 100000/arrOneSet[1]; break;\r
+ case "strength" : this.strength = arrOneSet[1]; break;\r
+ case "freq" : this.freq = arrOneSet[1]; break;\r
+ case "lightstrength" : this.lightstrength = arrOneSet[1]; break;\r
+ }\r
+ }\r
+\r
+ this.timer = null;\r
+ this.aniIndex = CEngine.arrAnimation.length;\r
+ CEngine.arrAnimation[this.aniIndex] = this;\r
+}\r
+\r
+CAgencyWave.prototype.PrepareEffect = function()\r
+{// to set the visual filter function\r
+ CCSSP.PrepareFilter(this.ele);\r
+\r
+ CCSSP.ShowObject(this.ele, true );\r
+}\r
+\r
+CAgencyWave.prototype.UpdateEffect = function()\r
+{// to set the visual filter function\r
+ if( this.timer == null )\r
+ this.ResetParameters();\r
+ if( typeof(this.ele.filters.wave) != "object" )\r
+ {\r
+ this.EndEffect();\r
+ return;\r
+ }\r
+\r
+ if( this.duration > 0 )\r
+ {\r
+ var percent = ((new Date()).getTime() - this.startTime)/this.duration;\r
+ if( percent >= 1.0 )\r
+ {\r
+ this.EndEffect();\r
+ return;\r
+ }\r
+ }\r
+ \r
+ this.ele.filters.wave.phase += 5;\r
+ this.ele.filters.wave.phase %= 100;\r
+ if( this.timer == null )\r
+ this.timer = setInterval("CEngine.PerformAnimation(" + this.aniIndex + ")", 50 );\r
+}\r
+\r
+CAgencyWave.prototype.EndEffect = function()\r
+{// to remove the visual filter function\r
+ this.ele.style.filter = "";\r
+ clearInterval( this.timer );\r
+ this.timer = null;\r
+}\r
+\r
+CAgencyWave.prototype.ResetParameters = function()\r
+{\r
+ this.PrepareEffect();\r
+ this.ele.style.filter = "wave(strength=" + this.strength + ",freq=" + \r
+ this.freq +", lightstrength=" + this.lightstrength +",phase=0);";\r
+ this.startTime = (new Date()).getTime();\r
+}\r
+// End of the CAgencyWave definition\r
+\r
+// Begin of CAgencyGlow definition\r
+function CAgencyGlow( element, settings )\r
+{// because of "visual filter" style, this won't work in Navigator\r
+ this.ele = element;\r
+\r
+ // to set the default value\r
+ this.glowColor = "green";\r
+ this.glowStrength = "3";\r
+ \r
+ var arrAllSet = settings.split(",");\r
+ for( var i = 0; i < arrAllSet.length; i ++ )\r
+ {\r
+ arrAllSet[i] = CCSSP.TrimSpace(arrAllSet[i]);\r
+ var arrOneSet = arrAllSet[i].split("=");\r
+ for( var j = 0; j < arrOneSet.length; j++ )\r
+ arrOneSet[j] = CCSSP.TrimSpace(arrOneSet[j]);\r
+ switch( arrOneSet[0] )\r
+ {\r
+ case "color" : this.glowColor = arrOneSet[1]; break;\r
+ case "strength" : this.glowStrength = arrOneSet[1]; break;\r
+ }\r
+ }\r
+}\r
+\r
+CAgencyGlow.prototype.PrepareEffect = function()\r
+{\r
+ CCSSP.PrepareFilter(this.ele);\r
+ CCSSP.ShowObject(this.ele, true );\r
+ if( this.ele.style.backgroundColor != "" )\r
+ {//style.backgroundColor somehow stop the visual filter\r
+ this.ele.intactBackgroundColor = this.ele.style.backgroundColor;\r
+ this.ele.style.backgroundColor = "";\r
+ }\r
+}\r
+\r
+CAgencyGlow.prototype.UpdateEffect = function()\r
+{// to set the visual filter function\r
+ this.PrepareEffect();\r
+ this.ele.style.filter = "glow(Color=" + this.glowColor + ", Strength=" + \r
+ this.glowStrength + ", enabled=true" +")";\r
+}\r
+\r
+CAgencyGlow.prototype.EndEffect = function()\r
+{// to remove the visual filter function\r
+ this.ele.style.filter = "";\r
+ if( typeof(this.ele.intactBackgroundColor) != "undefined" )\r
+ this.ele.style.backgroundColor = this.ele.intactBackgroundColor;\r
+}\r
+// End of the CAgencyGlow definition\r
+\r
+// Begin of CAgencyDropShadow definition\r
+function CAgencyDropShadow( element, settings )\r
+{// because of "visual filter" style, this won't work in Navigator\r
+ this.ele = element;\r
+\r
+ // to set the default value\r
+ this.shadowColor = "black"; \r
+ this.shadowOffx = "1";\r
+ this.shadowOffy = "1";\r
+ \r
+ var arrAllSet = settings.split(",");\r
+ for( var i = 0; i < arrAllSet.length; i ++ )\r
+ {\r
+ arrAllSet[i] = CCSSP.TrimSpace(arrAllSet[i]);\r
+ var arrOneSet = arrAllSet[i].split("=");\r
+ for( var j = 0; j < arrOneSet.length; j++ )\r
+ arrOneSet[j] = CCSSP.TrimSpace(arrOneSet[j]);\r
+ switch( arrOneSet[0] )\r
+ {\r
+ case "color" : this.shadowColor = arrOneSet[1]; break;\r
+ case "offx" : this.shadowOffx = arrOneSet[1]; break;\r
+ case "offy" : this.shadowOffy = arrOneSet[1]; break;\r
+ }\r
+ }\r
+}\r
+\r
+CAgencyDropShadow.prototype.PrepareEffect = function()\r
+{\r
+ CCSSP.PrepareFilter(this.ele);\r
+ CCSSP.ShowObject(this.ele, true );\r
+ \r
+ if( this.ele.style.backgroundColor != "" )\r
+ {//style.backgroundColor somehow stop the visual filter\r
+ this.ele.intactBackgroundColor = this.ele.style.backgroundColor;\r
+ this.ele.style.backgroundColor = "";\r
+ }\r
+}\r
+\r
+CAgencyDropShadow.prototype.UpdateEffect = function()\r
+{// to set the visual filter function\r
+ this.PrepareEffect();\r
+ this.ele.style.filter = "dropshadow(color=" + this.shadowColor + ", offx=" + \r
+ this.shadowOffx + ", offy=" + this.shadowOffy + ")";\r
+}\r
+\r
+CAgencyDropShadow.prototype.EndEffect = function()\r
+{// to remove the visual filter function\r
+ this.ele.style.filter = "";\r
+ if( typeof(this.ele.intactBackgroundColor) != "undefined" )\r
+ this.ele.style.backgroundColor = this.ele.intactBackgroundColor;\r
+}\r
+// End of the CAgencyDropShadow definition\r
+\r
+// Begin of CAgencyRevealTrans definition\r
+function CAgencyRevealTrans( element, settings )\r
+{// because of "visual filter" style, this won't work in Navigator\r
+ this.ele = element;\r
+\r
+ // to set the default value\r
+ this.duration = 1.0; //The value is specified in seconds.milliseconds format (0.0000).\r
+ this.transition = 0;\r
+ \r
+ var arrAllSet = settings.split(",");\r
+ for( var i = 0; i < arrAllSet.length; i ++ )\r
+ {\r
+ arrAllSet[i] = CCSSP.TrimSpace(arrAllSet[i]);\r
+ var arrOneSet = arrAllSet[i].split("=");\r
+ for( var j = 0; j < arrOneSet.length; j++ )\r
+ arrOneSet[j] = CCSSP.TrimSpace(arrOneSet[j]);\r
+ switch( arrOneSet[0] )\r
+ {\r
+ case "type" : this.transition = arrOneSet[1]; break;\r
+ case "duration" : this.duration = 100/arrOneSet[1]; break;\r
+ }\r
+ }\r
+}\r
+\r
+CAgencyRevealTrans.prototype.PrepareEffect = function()\r
+{\r
+ CCSSP.PrepareFilter(this.ele);\r
+ CCSSP.ShowObject( this.ele, false);\r
+}\r
+\r
+CAgencyRevealTrans.prototype.UpdateEffect = function()\r
+{// to set the visual filter function\r
+ if( typeof( this.ele.filters.RevealTrans ) == "object" )\r
+ {\r
+ if( this.ele.filters.RevealTrans.status == 2 )\r
+ this.ele.filters.RevealTrans.stop(); \r
+ }\r
+\r
+ this.PrepareEffect();\r
+ \r
+ this.ele.style.filter = "RevealTrans(duration=" + this.duration + \r
+ ", transition=" + this.transition + ")";\r
+ \r
+ if( typeof( this.ele.filters.RevealTrans ) == "object" )\r
+ {\r
+ this.ele.filters.RevealTrans.apply();\r
+ CCSSP.ShowObject( this.ele, true);\r
+ this.ele.filters.RevealTrans.play(); \r
+ }\r
+ else\r
+ CCSSP.ShowObject( this.ele, true);\r
+}\r
+\r
+CAgencyRevealTrans.prototype.EndEffect = function()\r
+{\r
+ if( typeof( this.ele.filters.RevealTrans ) == "object" )\r
+ this.ele.filters.RevealTrans.stop(); \r
+ this.ele.style.filter = "";\r
+}\r
+// End of the CAgencyRevealTrans definition\r
+\r
+// Begin of CAgencyBlur definition\r
+function CAgencyBlur( element, settings )\r
+{// because of "visual filter" style, this won't work in Navigator\r
+ this.ele = element;\r
+\r
+ // to set the default value\r
+ this.strength = "5";\r
+ this.direction = "90";\r
+ \r
+ var arrAllSet = settings.split(",");\r
+ for( var i = 0; i < arrAllSet.length; i ++ )\r
+ {\r
+ arrAllSet[i] = CCSSP.TrimSpace(arrAllSet[i]);\r
+ var arrOneSet = arrAllSet[i].split("=");\r
+ for( var j = 0; j < arrOneSet.length; j++ )\r
+ arrOneSet[j] = CCSSP.TrimSpace(arrOneSet[j]);\r
+ switch( arrOneSet[0] )\r
+ {\r
+ case "strength" : this.strength = arrOneSet[1]; break;\r
+ case "direction" : this.direction = arrOneSet[1]; break;\r
+ }\r
+ }\r
+}\r
+\r
+CAgencyBlur.prototype.PrepareEffect = function()\r
+{\r
+ CCSSP.PrepareFilter(this.ele);\r
+ CCSSP.ShowObject(this.ele, true );\r
+}\r
+\r
+CAgencyBlur.prototype.UpdateEffect = function()\r
+{// to set the visual filter function\r
+ CCSSP.PrepareFilter(this.ele);\r
+ this.ele.style.filter = "blur(strength=" + this.strength + \r
+ ", direction=" + this.direction + ")";\r
+}\r
+\r
+CAgencyBlur.prototype.EndEffect = function()\r
+{// to remove the visual filter function\r
+ this.ele.style.filter = "";\r
+}\r
+// End of the CAgencyBlur definition\r
+\r
+// Begin of CAgencyChangeFilter definition\r
+function CAgencyChangeFilter( element, settings ) // flipH, flipV, invert, grey,\r
+{// because of "visual filter" style, this won't work in Navigator\r
+ this.ele = element;\r
+\r
+ // to set the default value\r
+ this.filterFunction = settings;\r
+}\r
+\r
+CAgencyChangeFilter.prototype.PrepareEffect = function()\r
+{\r
+ CCSSP.PrepareFilter(this.ele);\r
+ CCSSP.ShowObject(this.ele, true );\r
+}\r
+\r
+CAgencyChangeFilter.prototype.UpdateEffect = function()\r
+{// to set the visual filter function\r
+ CCSSP.PrepareFilter(this.ele);\r
+ this.ele.style.filter = this.filterFunction;\r
+}\r
+\r
+CAgencyChangeFilter.prototype.EndEffect = function()\r
+{// to remove the visual filter function\r
+ this.ele.style.filter = "";\r
+}\r
+// End of the CAgencyChangeFilter definition\r
+\r
+// The effects below change the style on the fly, so they won't work in Navigator\r
+\r
+// Begin of CAgencyFontChange definition, \r
+function CAgencyFontChange( element, settings )\r
+{//this class can be replace by CAgencyChangeStyle,provided the "settings" is standard CSS string.\r
+ this.ele = element;\r
+ \r
+ // to retrieve the original font style\r
+ this.RetrieveOldFont( this.ele );\r
+ \r
+ // to set the default font to change\r
+ this.newfontFamily = this.ele.oldFontFamily;\r
+ this.newfColor = this.ele.oldColor;\r
+ this.newtextDecoration = this.ele.oldTextDecoration;\r
+ this.newfontWeight = this.ele.oldFontWeight;\r
+ this.newfontStyle = this.ele.oldFontStyle;\r
+ this.newfontSize = this.ele.oldFontSize;\r
+ this.newBackgroundColor = this.ele.oldBackgroundColor;\r
+ \r
+ var arrAllSet = settings.split(",");\r
+ for( var i = 0; i < arrAllSet.length; i ++ )\r
+ {// to retrieve the setting\r
+ arrAllSet[i] = CCSSP.TrimSpace(arrAllSet[i]);\r
+ var arrOneSet = arrAllSet[i].split("=");\r
+ for( var j = 0; j < arrOneSet.length; j++ )\r
+ arrOneSet[j] = CCSSP.TrimSpace(arrOneSet[j]);\r
+ switch( arrOneSet[0] )\r
+ {\r
+ case "font-family" : this.newfontFamily = arrOneSet[1]; break;\r
+ case "color" : this.newfColor = arrOneSet[1]; break;\r
+ case "underline" : this.newtextDecoration = (arrOneSet[1]=="on")? "underline" : "none"; break;\r
+ case "bold" : this.newfontWeight = (arrOneSet[1]=="on")? "bold" : "normal"; break;\r
+ case "italic" : this.newfontStyle = (arrOneSet[1]=="on")? "italic" : "normal"; break;\r
+ case "size" : this.newfontSize = arrOneSet[1]; break;\r
+ case "background-color" : this.newBackgroundColor = arrOneSet[1]; break;\r
+ }\r
+ }\r
+}\r
+\r
+CAgencyFontChange.prototype.RetrieveOldFont = function(objChild)\r
+{\r
+ if( typeof(objChild.oldFontFamily) == "undefined" )\r
+ objChild.oldFontFamily = objChild.style.fontFamily;\r
+ if( typeof(objChild.oldColor) == "undefined" )\r
+ objChild.oldColor = objChild.style.color;\r
+ if( typeof(objChild.oldTextDecoration) == "undefined" )\r
+ objChild.oldTextDecoration = objChild.style.textDecoration;\r
+ if( typeof(objChild.oldFontWeight) == "undefined" )\r
+ objChild.oldFontWeight = objChild.style.fontWeight;\r
+ if( typeof(objChild.oldFontStyle) == "undefined" )\r
+ objChild.oldFontStyle = objChild.style.fontStyle;\r
+ if( typeof(objChild.oldFontSize) == "undefined" )\r
+ objChild.oldFontSize = objChild.style.fontSize;\r
+ if( typeof(objChild.oldBackgroundColor) == "undefined" )\r
+ objChild.oldBackgroundColor = objChild.style.backgroundColor;\r
+}\r
+\r
+CAgencyFontChange.prototype.PrepareEffect = function()\r
+{\r
+ // as for expanding text, the child is created after the constructor called\r
+ for(var index = 0; index < this.ele.all.length; index++)\r
+ this.RetrieveOldFont(this.ele.all[index]);\r
+ CCSSP.ShowObject(this.ele, true );\r
+}\r
+\r
+CAgencyFontChange.prototype.UpdateEffect = function()\r
+{// to change the font\r
+ this.PrepareEffect();\r
+ this.UpdateEffectAllChildren( this.ele );\r
+ for( var index = 0; index < this.ele.all.length; index++)\r
+ this.UpdateEffectAllChildren(this.ele.all[index]);\r
+}\r
+\r
+CAgencyFontChange.prototype.UpdateEffectAllChildren = function(objChild)\r
+{\r
+ objChild.style.fontFamily = this.newfontFamily;\r
+ objChild.style.color = this.newfColor;\r
+ objChild.style.textDecoration = this.newtextDecoration;\r
+ objChild.style.fontWeight = this.newfontWeight;\r
+ objChild.style.fontStyle = this.newfontStyle;\r
+ objChild.style.fontSize = this.newfontSize;\r
+ objChild.style.backgroundColor = this.newBackgroundColor;\r
+}\r
+\r
+CAgencyFontChange.prototype.EndEffect = function()\r
+{// to reinstate the original font style\r
+ this.EndEffectAllChildren( this.ele );\r
+ for( var index = 0; index < this.ele.all.length; index++)\r
+ this.EndEffectAllChildren(this.ele.all[index]);\r
+}\r
+\r
+CAgencyFontChange.prototype.EndEffectAllChildren = function( objChild )\r
+{\r
+ if( typeof(objChild.oldFontFamily) != "undefined" )\r
+ objChild.style.fontFamily = objChild.oldFontFamily;\r
+ if( typeof(objChild.oldColor) != "undefined" )\r
+ objChild.style.color = objChild.oldColor;\r
+ if( typeof(objChild.oldFontWeight) != "undefined" )\r
+ objChild.style.fontWeight = objChild.oldFontWeight;\r
+ if( typeof(objChild.oldFontStyle) != "undefined" )\r
+ objChild.style.fontStyle = objChild.oldFontStyle;\r
+ if( typeof(objChild.oldFontSize) != "undefined" )\r
+ objChild.style.fontSize = objChild.oldFontSize;\r
+ if( typeof(objChild.oldTextDecoration) != "undefined" )\r
+ objChild.style.textDecoration = objChild.oldTextDecoration;\r
+ if( typeof(objChild.oldBackgroundColor) != "undefined" )\r
+ objChild.style.backgroundColor = objChild.oldBackgroundColor;\r
+}\r
+// End of the CAgencyFontChange definition\r
+\r
+// Begin of the CAgencyChangeStyle definition\r
+function CAgencyChangeStyle( element, settings )\r
+{//this class can be replace by CAgencyChangeStyle,provided the "settings" is standard CSS string.\r
+ this.ele = element;\r
+ \r
+ // to retrieve the original style\r
+ this.oldstyle = this.ele.style.cssText;\r
+ \r
+ // to set the default style\r
+ this.newStyle = this.oldstyle;\r
+ \r
+ if( typeof(settings) == "string" && settings.length > 1 )\r
+ this.newStyle = this.oldstyle + " " + settings;\r
+}\r
+\r
+CAgencyChangeStyle.prototype.PrepareEffect = function()\r
+{\r
+ CCSSP.ShowObject(this.ele, true );\r
+}\r
+\r
+CAgencyChangeStyle.prototype.UpdateEffect = function()\r
+{// to change the style\r
+ this.ele.style.cssText = this.newStyle;\r
+}\r
+\r
+CAgencyChangeStyle.prototype.EndEffect = function()\r
+{// to reinstate the original style\r
+ this.ele.style.cssText = this.oldStyle;\r
+}\r
+// End of the CAgencyChangeStyle definition\r
+\r
+//End the definition of CAgencyXXXX classes\r
+\r
+//Begin to collaborate with other event handler settings \r
+CCSSP.RegisterEventHandler( window, "onload", "CEngine.OnPageLoad();BSSCOnLoad();kadovInitTriggersInHead();");\r
+CCSSP.RegisterEventHandler( document, "onclick", "CEngine.OnPageClick();BSSCOnClick();");\r
+CCSSP.RegisterEventHandler( document, "onmouseover", "CEngine.OnMouseOver();BSSCOnMouseOver();" );\r
+CCSSP.RegisterEventHandler( document, "onmouseout", "CEngine.OnMouseOver();BSSCOnMouseOut();" );\r
+CCSSP.RegisterEventHandler( window, "onunload", "BSSCOnUnload();");\r
+//End to collaborate with other event handler settings\r
+\r
+\r
+/// Section End - CCSSP DHTM 2 (JavaScript 1.2)\r
+\r
+//// Segment End -- (JavaScript 1.2)\r
--- /dev/null
+<!doctype HTML public "-//W3C//DTD HTML 4.0 Frameset//EN">\r
+\r
+<html>\r
+\r
+<!--(==============================================================)-->\r
+<!--(Document created with RoboEditor. )============================-->\r
+<!--(==============================================================)-->\r
+\r
+<head>\r
+\r
+<title>About SALOME architecture</title>\r
+\r
+<!--(Meta)==========================================================-->\r
+\r
+<meta http-equiv=content-type content="text/html; charset=windows-1252">\r
+<meta name=generator content="RoboHELP by eHelp Corporation - www.ehelp.com">\r
+<meta name=generator-major-version content=0.1>\r
+<meta name=generator-minor-version content=1>\r
+<meta name=filetype content=kadov>\r
+<meta name=filetype-version content=1>\r
+<meta name=page-count content=1>\r
+<meta name=layout-height content=1043>\r
+<meta name=layout-width content=700>\r
+\r
+\r
+<!--(Links)=========================================================-->\r
+\r
+ <link rel='stylesheet' href='../default_ns.css'>\r
+<script type="text/javascript" language="JavaScript" title="WebHelpSplitCss">\r
+<!--\r
+if (navigator.appName !="Netscape")\r
+{ document.write("<link rel='stylesheet' href='../default.css'>");}\r
+//-->\r
+</script>\r
+<style type="text/css">\r
+<!--\r
+h1.whs1 {font-family: 'Times New Roman', serif;}\r
+p.whs2 {font-family: 'Times New Roman', serif; text-align: justify; text-indent: 48px;}\r
+p.whs3 {text-indent: 48px; font-weight: bold; font-family: 'Times New Roman', serif; text-align: justify;}\r
+p.whs4 {text-indent: 48px; font-family: 'Times New Roman', serif; text-align: justify; font-weight: normal;}\r
+p.whs5 {font-family:'Times New Roman' , serif; text-align:justify; font-weight:bold; text-indent:8px; background-image:url(../texture_horiz_ltbluebubbles.jpg); }\r
+img_whs6 {border-style: none; border: none; width: 35px; height: 37px; float: none;}\r
+p.whs7 {font-family: 'Times New Roman', serif; text-align: justify; font-weight: bold; text-indent: 8px;}\r
+p.whs8 {margin-left: 40px; font-family: 'Times New Roman', serif;}\r
+p.whs9 {font-family: 'Times New Roman', serif; margin-left: 40px;}\r
+ul.whs10 {list-style: disc;}\r
+p.whs11 {font-family: 'Times New Roman', serif;}\r
+-->\r
+</style>\r
+<script type="text/javascript" language="JavaScript" title="BSSC Special Effects" src="../ehlpdhtm.js"></script><script type="text/javascript" language="JavaScript" title="WebHelpInlineScript">\r
+<!--\r
+function reDo() {\r
+ if (innerWidth != origWidth || innerHeight != origHeight)\r
+ location.reload();\r
+}\r
+if ((parseInt(navigator.appVersion) == 4) && (navigator.appName == "Netscape")) {\r
+ origWidth = innerWidth;\r
+ origHeight = innerHeight;\r
+ onresize = reDo;\r
+}\r
+onerror = null; \r
+//-->\r
+</script>\r
+<style type="text/css">\r
+<!--\r
+ div.WebHelpPopupMenu {position:absolute; left:0px; top:0px; z-index:4; visibility:hidden;}\r
+-->\r
+</style>\r
+<script type="text/javascript" language="javascript1.2" src="../whmsg.js"></script>\r
+<script type="text/javascript" language="javascript" src="../whver.js"></script>\r
+<script type="text/javascript" language="javascript1.2" src="../whproxy.js"></script>\r
+<script type="text/javascript" language="javascript1.2" src="../whutils.js"></script>\r
+<script type="text/javascript" language="javascript1.2" src="../whtopic.js"></script>\r
+</head>\r
+\r
+<!--(Body)==========================================================-->\r
+\r
+\r
+<body>\r
+\r
+<script type="text/javascript" language="javascript1.2">\r
+<!--\r
+if (window.gbWhTopic)\r
+{\r
+ if (window.addTocInfo)\r
+ {\r
+ addTocInfo("About SALOME\nAbout SALOME architecture");\r
+addButton("show",BTN_TEXT,"Show","","","","",0,0,"","","");\r
+\r
+ }\r
+ if (window.writeBtnStyle)\r
+ writeBtnStyle();\r
+\r
+ if (window.writeIntopicBar)\r
+ writeIntopicBar(1);\r
+\r
+ if (window.setRelStartPage)\r
+ {\r
+ setRelStartPage("../kernel.html");\r
+\r
+ autoSync(0);\r
+ sendSyncInfo();\r
+ sendAveInfoOut();\r
+ }\r
+}\r
+else\r
+ document.location.reload();\r
+//-->\r
+</script>\r
+<h1 class="whs1">About SALOME architecture</h1>\r
+\r
+<p class="whs2"><span style="font-family: 'Times New Roman', serif; font-weight: bold;"><B>SALOME \r
+ </B></span><span style="font-family: 'Times New Roman', serif;">architecture \r
+ is based on </span><span style="font-family: 'Times New Roman', serif; font-weight: bold;"><B>CORBA</B></span><span \r
+ style="font-family: 'Times New Roman', serif;"> technology using distributed \r
+ system model of applications. This architecture takes the concept of multitier \r
+ client/server to its natural conclusion. The</span><span style="font-family: 'Times New Roman', serif;\r
+ text-align: justify;\r
+ text-indent: 48px;"> distributed system model exposes all functionality \r
+ of the application as objects, each of which can use any of the services \r
+ provided by other objects in the system, or even objects in other systems. \r
+ The architecture can also blur the distinction between "client" \r
+ and "server" because the client components can also create objects \r
+ that behave in server-like roles. This architecture provides the ultimate \r
+ in flexibility.</span></p>\r
+\r
+<p class="whs2">The distributed system architecture achieves \r
+ its flexibility by encouraging (or enforcing) the definition of specific \r
+ component interfaces. The interface of a component specifies to other \r
+ components what services are offered by that component and how they are \r
+ used. As long as the interface of a component remains constant, that component's \r
+ implementation can change dramatically without affecting other components. \r
+ </p>\r
+\r
+<p class="whs3"><span style="font-weight: normal;">All \r
+ integrated into </span>SALOME <span style="font-weight: normal;">platform \r
+ software components (VISU, Geom, SMESH...) implement \r
+ predefined interfaces. Each component provides data for the </span>SALOME<span \r
+ style="font-weight: normal;"> study in a form of links (stored in the \r
+ Study) to the specific data created and stored in the component. All components \r
+ represent</span> CORBA <span style="font-weight: normal;">servers and \r
+ it allows to run them on different host stations.</span></p>\r
+\r
+<p class="whs4">Another fundamental piece of the <span \r
+ style="font-weight: bold;"><B>SALOME</B></span> architecture is the use of the \r
+ Interface Definition Language (IDL). IDL, which specifies interfaces between \r
+ CORBA components, is instrumental in ensuring CORBA's language independence. \r
+ Because interfaces described in IDL can be mapped to any programming language, \r
+ CORBA applications and components are thus independent of the language(s) \r
+ used to implement them. </p>\r
+\r
+<p class="whs3"><span style="font-weight: normal;">Additional \r
+ information about CORBA technology is available at </span><span style="text-indent: 8px;"><a \r
+ href="http://www.omg.org">www.omg.org</a></span><span style="font-weight: normal;"> \r
+ </span></p>\r
+\r
+<p class="whs3"> </p>\r
+\r
+<p class="whs5"><span \r
+ style="font-weight: normal;"> <img src="../note1.gif" x-maintain-ratio="TRUE" width="35px" height="37px" border="0" class="img_whs6">In </span>SALOME<span style="font-weight: normal;"> there \r
+ is a possibility to run definite components in the so-called </span><a href="running_salome_pro.htm#batchmode">batch mode</a><span style="font-weight: normal;"> \r
+ without GUI provided by IAPP component. In this case you can work with \r
+ these components with the help of Python commands and scripts. </span> </p>\r
+\r
+<p class="whs7"> </p>\r
+\r
+<p class="whs8">The \r
+ architecture of this all-inclusive platform for numerical components responds \r
+ to the following objectives: </p>\r
+\r
+<p class="whs9"> </p>\r
+\r
+<ul type="disc" class="whs10">\r
+ \r
+ <li style="margin-left: -20px;"\r
+ class=kadov-p><p class="whs11"><span \r
+ style="font-weight: bold;"><B>Flexibility</B></span> : the \r
+ creation and modification of computation schemes must be easy. The developer \r
+ must have easy access to all modeling parameters to create domain-specific \r
+ tools adapted to new situations or to test new numerical algorithms. SALOME \r
+ allows integration and implementation of numerical and physical components \r
+ derived from existing code. </p></li>\r
+</ul>\r
+\r
+<p class="whs11"> </p>\r
+\r
+<ul type="disc" class="whs10">\r
+ \r
+ <li style="margin-left: -20px;"\r
+ class=kadov-p><p class="whs11"><span \r
+ style="font-weight: bold;"><B>Productivity</B></span> : the \r
+ implementation of code is simple for the user and the reuse of components \r
+ (within other environments for macro-components) is noticeably facilitated.</p></li>\r
+</ul>\r
+\r
+<p class="whs11"> </p>\r
+\r
+<ul type="disc" class="whs10">\r
+ \r
+ <li style="margin-left: -20px;"\r
+ class=kadov-p><p class="whs11"><span \r
+ style="font-weight: bold;"><B>Performance</B></span> : <span \r
+ style="font-weight: bold;"><B>SALOME</B></span> \r
+ is able to more finely simulate phenomena that is more complex in scale \r
+ and in physical coupling requirements. <span style="font-weight: bold;"><B>SALOME \r
+ </B></span>economically exploits the performance of used machines (massively \r
+ parallel processors, PC clusters, etc).</p></li>\r
+</ul>\r
+\r
+<p class="whs11"> </p>\r
+\r
+<ul type="disc" class="whs10">\r
+ \r
+ <li style="margin-left: -20px;"\r
+ class=kadov-p><p class="whs11"><span \r
+ style="font-weight: bold;"><B>Expandability</B></span>: on \r
+ the one hand, software technologies and physical architectures evolve \r
+ rapidly compared to the development time, validation and use of a scientific \r
+ application while on the other hand, the development of a database model \r
+ adapted to the totality of exchanges between components can be achieved \r
+ incrementally. <span style="font-weight: bold;"><B>SALOME</B></span> is \r
+ able to easily follow these developments.</p></li>\r
+</ul>\r
+\r
+<p class="whs11"> </p>\r
+\r
+<p class="whs11"> </p>\r
+\r
+<p class="whs11"> </p>\r
+\r
+<p class="whs11">\r
+<a href="javascript:void(0);" onClick="var e; if (parseInt(navigator.appVersion)>=4){e=event;} if (parseInt(navigator.appVersion) >=2 && typeof(PopupMenu_Invoke) == 'function') PopupMenu_Invoke(e,'','Installing SALOME PRO','installing_salome_pro.htm','Introduction to SALOME PRO','introduction_to_salome_pro.htm');return false;" title="Related Topics"><img src="../ss_btn_related_topics.gif" border=0 height=17 width=82 alt="Related Topics"></a></p>\r
+\r
+<p class="whs11"> </p>\r
+\r
+<p class="whs11"> </p>\r
+\r
+<script type="text/javascript" language="JavaScript" title="WebHelpRelatedTopics"><!--\r
+if (parseInt(navigator.appVersion) >= 3 && typeof (WritePopupMenuLayer) == "function")\r
+ WritePopupMenuLayer();\r
+//--></script><script type="text/javascript" language="javascript1.2">\r
+<!--\r
+if (window.writeIntopicBar)\r
+ writeIntopicBar(0);\r
+//-->\r
+</script>\r
+</body>\r
+\r
+</html>\r
--- /dev/null
+<!doctype HTML public "-//W3C//DTD HTML 4.0 Frameset//EN">\r
+\r
+<html>\r
+\r
+<!--(==============================================================)-->\r
+<!--(Document created with RoboEditor. )============================-->\r
+<!--(==============================================================)-->\r
+\r
+<head>\r
+\r
+<title>About SALOME help system</title>\r
+\r
+<!--(Meta)==========================================================-->\r
+\r
+<meta http-equiv=content-type content="text/html; charset=windows-1252">\r
+<meta name=generator content="RoboHELP by eHelp Corporation - www.ehelp.com">\r
+<meta name=generator-major-version content=0.1>\r
+<meta name=generator-minor-version content=1>\r
+<meta name=filetype content=kadov>\r
+<meta name=filetype-version content=1>\r
+<meta name=page-count content=1>\r
+<meta name=layout-height content=380>\r
+<meta name=layout-width content=700>\r
+\r
+\r
+<!--(Links)=========================================================-->\r
+\r
+ <link rel='stylesheet' href='../default_ns.css'>\r
+<script type="text/javascript" language="JavaScript" title="WebHelpSplitCss">\r
+<!--\r
+if (navigator.appName !="Netscape")\r
+{ document.write("<link rel='stylesheet' href='../default.css'>");}\r
+//-->\r
+</script>\r
+<style type="text/css">\r
+<!--\r
+h1.whs1 {font-family: 'Times New Roman', serif;}\r
+p.whs2 {font-family: 'Times New Roman', serif; text-indent: 48px;}\r
+p.whs3 {font-family: 'Times New Roman', serif;}\r
+-->\r
+</style>\r
+<script type="text/javascript" language="JavaScript" title="BSSC Special Effects" src="../ehlpdhtm.js"></script><script type="text/javascript" language="JavaScript" title="WebHelpInlineScript">\r
+<!--\r
+function reDo() {\r
+ if (innerWidth != origWidth || innerHeight != origHeight)\r
+ location.reload();\r
+}\r
+if ((parseInt(navigator.appVersion) == 4) && (navigator.appName == "Netscape")) {\r
+ origWidth = innerWidth;\r
+ origHeight = innerHeight;\r
+ onresize = reDo;\r
+}\r
+onerror = null; \r
+//-->\r
+</script>\r
+<style type="text/css">\r
+<!--\r
+ div.WebHelpPopupMenu {position:absolute; left:0px; top:0px; z-index:4; visibility:hidden;}\r
+-->\r
+</style>\r
+<script type="text/javascript" language="javascript1.2" src="../whmsg.js"></script>\r
+<script type="text/javascript" language="javascript" src="../whver.js"></script>\r
+<script type="text/javascript" language="javascript1.2" src="../whproxy.js"></script>\r
+<script type="text/javascript" language="javascript1.2" src="../whutils.js"></script>\r
+<script type="text/javascript" language="javascript1.2" src="../whtopic.js"></script>\r
+</head>\r
+\r
+<!--(Body)==========================================================-->\r
+\r
+\r
+<body>\r
+\r
+<script type="text/javascript" language="javascript1.2">\r
+<!--\r
+if (window.gbWhTopic)\r
+{\r
+ if (window.addTocInfo)\r
+ {\r
+ addTocInfo("Using this reference manual\nAbout SALOME help system");\r
+addButton("show",BTN_TEXT,"Show","","","","",0,0,"","","");\r
+\r
+ }\r
+ if (window.writeBtnStyle)\r
+ writeBtnStyle();\r
+\r
+ if (window.writeIntopicBar)\r
+ writeIntopicBar(1);\r
+\r
+ if (window.setRelStartPage)\r
+ {\r
+ setRelStartPage("../kernel.html");\r
+\r
+ autoSync(0);\r
+ sendSyncInfo();\r
+ sendAveInfoOut();\r
+ }\r
+}\r
+else\r
+ document.location.reload();\r
+//-->\r
+</script>\r
+<h1 class="whs1">About SALOME help system</h1>\r
+\r
+<p class="whs2">Welcome \r
+ to SALOME help system. This on-line help has been created in HTML format \r
+ with the help of Java applets. It can be launched with the help of any \r
+ browser (Internet Explorer, Netscape Navigator and others) and on any \r
+ platform (Windows, Macintosh, Linux, and UNIX).</p>\r
+\r
+<p class="whs3"> </p>\r
+\r
+<p class="whs3">The SALOME reference \r
+ manual contains a set of topics which are divided into different chapters \r
+ describing the functionality of different modules of the SALOME platform. \r
+ This help system contains a wide variety of <a href="navigating_topics.htm" style="font-family: 'Times New Roman', serif;">navigation \r
+ components</a> and <a href="using_left-hand_tabs.htm" style="font-family: 'Times New Roman', serif;">search \r
+ utilities</a> which will help you to get acquainted with all features \r
+ of SALOME. </p>\r
+\r
+<p class="whs3"> </p>\r
+\r
+<p class="whs3"> <a href="javascript:void(0);" onClick="var e; if (parseInt(navigator.appVersion)>=4){e=event;} if (parseInt(navigator.appVersion) >=2 && typeof(PopupMenu_Invoke) == 'function') PopupMenu_Invoke(e,'','Navigating topics','navigating_topics.htm','Using left-hand tabs','using_left-hand_tabs.htm');return false;" title="Related Topics"><img src="../ss_btn_related_topics.gif" border=0 height=17 width=82 alt="Related Topics"></a></p>\r
+\r
+<script type="text/javascript" language="JavaScript" title="WebHelpRelatedTopics"><!--\r
+if (parseInt(navigator.appVersion) >= 3 && typeof (WritePopupMenuLayer) == "function")\r
+ WritePopupMenuLayer();\r
+//--></script><script type="text/javascript" language="javascript1.2">\r
+<!--\r
+if (window.writeIntopicBar)\r
+ writeIntopicBar(0);\r
+//-->\r
+</script>\r
+</body>\r
+\r
+</html>\r
--- /dev/null
+<!doctype HTML public "-//W3C//DTD HTML 4.0 Frameset//EN">\r
+\r
+<html>\r
+\r
+<!--(==============================================================)-->\r
+<!--(Document created with RoboEditor. )============================-->\r
+<!--(==============================================================)-->\r
+\r
+<head>\r
+\r
+<title>Copyright notice</title>\r
+\r
+<!--(Meta)==========================================================-->\r
+\r
+<meta http-equiv=content-type content="text/html; charset=windows-1252">\r
+<meta name=generator content="RoboHELP by eHelp Corporation - www.ehelp.com">\r
+<meta name=generator-major-version content=0.1>\r
+<meta name=generator-minor-version content=1>\r
+<meta name=filetype content=kadov>\r
+<meta name=filetype-version content=1>\r
+<meta name=page-count content=1>\r
+<meta name=layout-height content=614>\r
+<meta name=layout-width content=765>\r
+\r
+\r
+<!--(Links)=========================================================-->\r
+\r
+ <link rel='stylesheet' href='../default_ns.css'>\r
+<script type="text/javascript" language="JavaScript" title="WebHelpSplitCss">\r
+<!--\r
+if (navigator.appName !="Netscape")\r
+{ document.write("<link rel='stylesheet' href='../default.css'>");}\r
+//-->\r
+</script>\r
+<style type="text/css">\r
+<!--\r
+h1.whs1 {font-family: 'Times New Roman', serif;}\r
+p.whs2 {font-family: 'Times New Roman', serif;}\r
+p.whs3 {font-family: 'Times New Roman', serif; text-align: justify;}\r
+p.whs4 {font-family: 'Times New Roman', serif; text-align: center;}\r
+img_whs5 {border-style: none; border: none; width: 260px; height: 112px; float: none;}\r
+-->\r
+</style>\r
+<script type="text/javascript" language="JavaScript" title="WebHelpInlineScript">\r
+<!--\r
+function reDo() {\r
+ if (innerWidth != origWidth || innerHeight != origHeight)\r
+ location.reload();\r
+}\r
+if ((parseInt(navigator.appVersion) == 4) && (navigator.appName == "Netscape")) {\r
+ origWidth = innerWidth;\r
+ origHeight = innerHeight;\r
+ onresize = reDo;\r
+}\r
+onerror = null; \r
+//-->\r
+</script>\r
+<style type="text/css">\r
+<!--\r
+ div.WebHelpPopupMenu {position:absolute; left:0px; top:0px; z-index:4; visibility:hidden;}\r
+-->\r
+</style>\r
+<script type="text/javascript" language="javascript1.2" src="../whmsg.js"></script>\r
+<script type="text/javascript" language="javascript" src="../whver.js"></script>\r
+<script type="text/javascript" language="javascript1.2" src="../whproxy.js"></script>\r
+<script type="text/javascript" language="javascript1.2" src="../whutils.js"></script>\r
+<script type="text/javascript" language="javascript1.2" src="../whtopic.js"></script>\r
+</head>\r
+\r
+<!--(Body)==========================================================-->\r
+\r
+\r
+<body>\r
+\r
+<script type="text/javascript" language="javascript1.2">\r
+<!--\r
+if (window.gbWhTopic)\r
+{\r
+ if (window.addTocInfo)\r
+ {\r
+ addButton("show",BTN_TEXT,"Show","","","","",0,0,"","","");\r
+\r
+ }\r
+ if (window.writeBtnStyle)\r
+ writeBtnStyle();\r
+\r
+ if (window.writeIntopicBar)\r
+ writeIntopicBar(1);\r
+\r
+ if (window.setRelStartPage)\r
+ {\r
+ setRelStartPage("../kernel.html");\r
+\r
+ autoSync(0);\r
+ sendSyncInfo();\r
+ sendAveInfoOut();\r
+ }\r
+}\r
+else\r
+ document.location.reload();\r
+//-->\r
+</script>\r
+<h1 class="whs1">Copyright notice</h1>\r
+\r
+<p class="whs2">Copyright © 2003, by \r
+ Open CASCADE S.A.</p>\r
+\r
+<p class="whs2"> </p>\r
+\r
+<p class="whs3">PROPRIETARY \r
+ RIGHTS NOTICE: All rights reserved. No part of this material may be reproduced \r
+ or transmitted in any form or by any means, electronic, mechanical, or \r
+ otherwise, including photocopying and recording or in connection with \r
+ any information storage or retrieval system, without the permission in \r
+ writing from Open CASCADE S.A.</p>\r
+\r
+<p class="whs3"> </p>\r
+\r
+<p class="whs3">The \r
+ information contained in this document is subject to change without notice \r
+ and should not be construed as a commitment by Open CASCADE S.A. Open \r
+ CASCADE S.A. bears no responsibility for any errors that may appear in \r
+ this document.</p>\r
+\r
+<p class="whs3"> </p>\r
+\r
+<p class="whs3">The \r
+ software described in this document is furnished under a license and may \r
+ be used or copied only in accordance with the terms of such a license.</p>\r
+\r
+<p class="whs3"> </p>\r
+\r
+<p class="whs3">CAS.CADE \r
+ and Open CASCADE are registered trademarks of Open CASCADE S.A. Other \r
+ brand or product names are trademarks or registered trademarks of their \r
+ respective holders.</p>\r
+\r
+<p class="whs3"> </p>\r
+\r
+<p class="whs3"> </p>\r
+\r
+<p align="center" class="whs4"><img src="../occ.jpg" x-maintain-ratio="TRUE" width="260px" height="112px" border="0" class="img_whs5"></p>\r
+\r
+<p align="center" class="whs4"> </p>\r
+\r
+<p align="center" class="whs4">Immeuble Ariane</p>\r
+\r
+<p align="center" class="whs4">Domaine Technologique de Saclay</p>\r
+\r
+<p align="center" class="whs4">4, rue René Razel</p>\r
+\r
+<p align="center" class="whs4">91400 SACLAY - France</p>\r
+\r
+<script type="text/javascript" language="javascript1.2">\r
+<!--\r
+if (window.writeIntopicBar)\r
+ writeIntopicBar(0);\r
+//-->\r
+</script>\r
+</body>\r
+\r
+</html>\r
--- /dev/null
+<!doctype HTML public "-//W3C//DTD HTML 4.0 Frameset//EN">\r
+\r
+<html>\r
+\r
+<!--(==============================================================)-->\r
+<!--(Document created with RoboEditor. )============================-->\r
+<!--(==============================================================)-->\r
+\r
+<head>\r
+\r
+<title>Creating a new study</title>\r
+\r
+<!--(Meta)==========================================================-->\r
+\r
+<meta http-equiv=content-type content="text/html; charset=windows-1252">\r
+<meta name=generator content="RoboHELP by eHelp Corporation - www.ehelp.com">\r
+<meta name=generator-major-version content=0.1>\r
+<meta name=generator-minor-version content=1>\r
+<meta name=filetype content=kadov>\r
+<meta name=filetype-version content=1>\r
+<meta name=page-count content=1>\r
+<meta name=layout-height content=605>\r
+<meta name=layout-width content=700>\r
+\r
+\r
+<!--(Links)=========================================================-->\r
+\r
+ <link rel='stylesheet' href='../default_ns.css'>\r
+<script type="text/javascript" language="JavaScript" title="WebHelpSplitCss">\r
+<!--\r
+if (navigator.appName !="Netscape")\r
+{ document.write("<link rel='stylesheet' href='../default.css'>");}\r
+//-->\r
+</script>\r
+<style type="text/css">\r
+<!--\r
+h1.whs1 {text-align: justify;}\r
+p.whs2 {font-style: italic; text-align: justify; color: #000000; font-family: 'Arial Black', sans-serif;}\r
+p.whs3 {color: #ff0000; font-style: italic; margin-left: 40px; text-align: justify;}\r
+img_whs4 {border-style: none; border: none; width: 24px; height: 29px; float: none;}\r
+p.whs5 {margin-left: 0px; text-align: justify;}\r
+p.whs6 {margin-left: 0px; font-style: italic; text-align: justify; color: #000000; font-family: 'Arial Black', sans-serif;}\r
+p.whs7 {margin-left: 40px; text-align: justify;}\r
+p.whs8 {font-style: italic; color: #ff0000; margin-left: 40px; text-align: justify;}\r
+p.whs9 {margin-left: 0px; font-weight: bold; text-align: justify;}\r
+p.whs10 {font-weight: bold; margin-left: 0px; text-align: justify;}\r
+-->\r
+</style>\r
+<script type="text/javascript" language="JavaScript">\r
+<!--\r
+if ((navigator.appName == "Netscape") && (parseInt(navigator.appVersion) == 4))\r
+{\r
+ var strNSS = "<style type='text/css'>";\r
+ strNSS += "p.whs5 {margin-left:1; }";\r
+ strNSS += "p.whs6 {margin-left:1; }";\r
+ strNSS += "p.whs9 {margin-left:1; }";\r
+ strNSS += "p.whs10 {margin-left:1; }";\r
+ strNSS +="</style>";\r
+ document.write(strNSS);\r
+}\r
+//-->\r
+</script>\r
+<script type="text/javascript" language="JavaScript" title="BSSC Special Effects" src="../ehlpdhtm.js"></script><script type="text/javascript" language="JavaScript" title="WebHelpInlineScript">\r
+<!--\r
+function reDo() {\r
+ if (innerWidth != origWidth || innerHeight != origHeight)\r
+ location.reload();\r
+}\r
+if ((parseInt(navigator.appVersion) == 4) && (navigator.appName == "Netscape")) {\r
+ origWidth = innerWidth;\r
+ origHeight = innerHeight;\r
+ onresize = reDo;\r
+}\r
+onerror = null; \r
+//-->\r
+</script>\r
+<style type="text/css">\r
+<!--\r
+ div.WebHelpPopupMenu {position:absolute; left:0px; top:0px; z-index:4; visibility:hidden;}\r
+-->\r
+</style>\r
+<script type="text/javascript" language="javascript1.2" src="../whmsg.js"></script>\r
+<script type="text/javascript" language="javascript" src="../whver.js"></script>\r
+<script type="text/javascript" language="javascript1.2" src="../whproxy.js"></script>\r
+<script type="text/javascript" language="javascript1.2" src="../whutils.js"></script>\r
+<script type="text/javascript" language="javascript1.2" src="../whtopic.js"></script>\r
+</head>\r
+\r
+<!--(Body)==========================================================-->\r
+\r
+\r
+<body>\r
+\r
+<script type="text/javascript" language="javascript1.2">\r
+<!--\r
+if (window.gbWhTopic)\r
+{\r
+ if (window.addTocInfo)\r
+ {\r
+ addTocInfo("IAPP module\nStudy management\nCreating a new study");\r
+addButton("show",BTN_TEXT,"Show","","","","",0,0,"","","");\r
+\r
+ }\r
+ if (window.writeBtnStyle)\r
+ writeBtnStyle();\r
+\r
+ if (window.writeIntopicBar)\r
+ writeIntopicBar(1);\r
+\r
+ if (window.setRelStartPage)\r
+ {\r
+ setRelStartPage("../kernel.html");\r
+\r
+ autoSync(0);\r
+ sendSyncInfo();\r
+ sendAveInfoOut();\r
+ }\r
+}\r
+else\r
+ document.location.reload();\r
+//-->\r
+</script>\r
+<h1 class="whs1">Creating a new study</h1>\r
+\r
+<p class="whs2">To create a new study:</p>\r
+\r
+<p class="whs3"><span style="font-style: normal; color: #000000;"><font color=black >From \r
+ the main menu select </font></span><span style="font-style: normal;\r
+ color: #000000;\r
+ font-weight: bold;"><font color=black ><B>File > \r
+ New </B></font></span><span style="font-style: normal; color: #000000;"><font color=black >or in the \r
+ standard toolbar click </font></span><img src="../pics/newsticn.jpg" x-maintain-ratio="TRUE" width="24px" height="29px" border="0" class="img_whs4"> <span style="font-style: normal; color: #000000;"><font color=black >icon.</font></span></p>\r
+\r
+<p class="whs3"> </p>\r
+\r
+<p class="whs5">Your study will be created \r
+ with default name <span style="font-weight: bold;"><B>Study1#1</B></span>. In \r
+ SALOME you can create several studies. </p>\r
+\r
+<p class="whs5"> </p>\r
+\r
+<p class="whs5">In addition to it, you \r
+ can create several windows with different activated viewers (VTK, OCC, \r
+ Plot2d) for each study.</p>\r
+\r
+<p class="whs5"> </p>\r
+\r
+<p class="whs6">To create a new window \r
+ for a definite study:</p>\r
+\r
+<p class="whs5"> </p>\r
+\r
+<p class="whs7">1. Make \r
+ your study <span style="font-weight: bold;"><B>active:</B></span> maximize it \r
+ (if it minimized) or click \r
+ on the top control zone of the study window</p>\r
+\r
+<p class="whs8"> </p>\r
+\r
+<p class="whs7">2. From \r
+ the main menu select <span style="font-weight: bold;"><B>Window > New \r
+ Window </B></span>and from the submenu choose the viewer, which will be activated \r
+ in your new window </p>\r
+\r
+<p class="whs7"> </p>\r
+\r
+<p class="whs5">The window for your study \r
+ will be created with a default name <span style="font-weight: bold;"><B>Study1#2</B></span>.<span \r
+ style="font-weight: bold;"> <B></B></span></p>\r
+\r
+<p class="whs9"> </p>\r
+\r
+<p class="whs9"> </p>\r
+\r
+<p class="whs9"> </p>\r
+\r
+<p class="whs10"> </p>\r
+\r
+<p class="whs10">\r
+<a href="javascript:void(0);" onClick="var e; if (parseInt(navigator.appVersion)>=4){e=event;} if (parseInt(navigator.appVersion) >=2 && typeof(PopupMenu_Invoke) == 'function') PopupMenu_Invoke(e,'','Displaying studies','displaying_studies.htm','Introduction to IAPP','introduction_to_iapp.htm','Opening studies','opening_studies.htm','SALOME PRO desktop','salome_pro_desktop.htm','Saving and closing studies','saving_a_study.htm');return false;" title="Related Topics"><img src="../ss_btn_related_topics.gif" border=0 height=17 width=82 alt="Related Topics"></a></p>\r
+\r
+<p class="whs10"> </p>\r
+\r
+<p class="whs10"> </p>\r
+\r
+<p class="whs10"> </p>\r
+\r
+<p class="whs10"> </p>\r
+\r
+<script type="text/javascript" language="JavaScript" title="WebHelpRelatedTopics"><!--\r
+if (parseInt(navigator.appVersion) >= 3 && typeof (WritePopupMenuLayer) == "function")\r
+ WritePopupMenuLayer();\r
+//--></script><script type="text/javascript" language="javascript1.2">\r
+<!--\r
+if (window.writeIntopicBar)\r
+ writeIntopicBar(0);\r
+//-->\r
+</script>\r
+</body>\r
+\r
+</html>\r
--- /dev/null
+<!doctype HTML public "-//W3C//DTD HTML 4.0 Frameset//EN">\r
+\r
+<html>\r
+\r
+<!--(==============================================================)-->\r
+<!--(Document created with RoboEditor. )============================-->\r
+<!--(==============================================================)-->\r
+\r
+<head>\r
+\r
+<title>Displaying/hiding toolbars</title>\r
+\r
+<!--(Meta)==========================================================-->\r
+\r
+<meta http-equiv=content-type content="text/html; charset=windows-1252">\r
+<meta name=generator content="RoboHELP by eHelp Corporation - www.ehelp.com">\r
+<meta name=generator-major-version content=0.1>\r
+<meta name=generator-minor-version content=1>\r
+<meta name=filetype content=kadov>\r
+<meta name=filetype-version content=1>\r
+<meta name=page-count content=1>\r
+<meta name=layout-height content=380>\r
+<meta name=layout-width content=700>\r
+\r
+\r
+<!--(Links)=========================================================-->\r
+\r
+ <link rel='stylesheet' href='../default_ns.css'>\r
+<script type="text/javascript" language="JavaScript" title="WebHelpSplitCss">\r
+<!--\r
+if (navigator.appName !="Netscape")\r
+{ document.write("<link rel='stylesheet' href='../default.css'>");}\r
+//-->\r
+</script>\r
+<style type="text/css">\r
+<!--\r
+h1.whs1 {text-align: justify;}\r
+p.whs2 {text-align: justify;}\r
+img_whs3 {border-style: none; border: none; width: 30px; height: 30px; float: none;}\r
+p.whs4 {font-style: italic; text-align: justify; color: #000000; font-family: 'Arial Black', sans-serif;}\r
+p.whs5 {margin-left: 40px; text-align: justify;}\r
+p.whs6 {font-style: italic; color: #ff0000; margin-left: 40px; text-align: justify;}\r
+p.whs7 {margin-left: 0px; text-align: justify;}\r
+-->\r
+</style>\r
+<script type="text/javascript" language="JavaScript">\r
+<!--\r
+if ((navigator.appName == "Netscape") && (parseInt(navigator.appVersion) == 4))\r
+{\r
+ var strNSS = "<style type='text/css'>";\r
+ strNSS += "p.whs7 {margin-left:1; }";\r
+ strNSS +="</style>";\r
+ document.write(strNSS);\r
+}\r
+//-->\r
+</script>\r
+<script type="text/javascript" language="JavaScript" title="BSSC Special Effects" src="../ehlpdhtm.js"></script><script type="text/javascript" language="JavaScript" title="WebHelpInlineScript">\r
+<!--\r
+function reDo() {\r
+ if (innerWidth != origWidth || innerHeight != origHeight)\r
+ location.reload();\r
+}\r
+if ((parseInt(navigator.appVersion) == 4) && (navigator.appName == "Netscape")) {\r
+ origWidth = innerWidth;\r
+ origHeight = innerHeight;\r
+ onresize = reDo;\r
+}\r
+onerror = null; \r
+//-->\r
+</script>\r
+<style type="text/css">\r
+<!--\r
+ div.WebHelpPopupMenu {position:absolute; left:0px; top:0px; z-index:4; visibility:hidden;}\r
+-->\r
+</style>\r
+<script type="text/javascript" language="javascript1.2" src="../whmsg.js"></script>\r
+<script type="text/javascript" language="javascript" src="../whver.js"></script>\r
+<script type="text/javascript" language="javascript1.2" src="../whproxy.js"></script>\r
+<script type="text/javascript" language="javascript1.2" src="../whutils.js"></script>\r
+<script type="text/javascript" language="javascript1.2" src="../whtopic.js"></script>\r
+</head>\r
+\r
+<!--(Body)==========================================================-->\r
+\r
+\r
+<body>\r
+\r
+<script type="text/javascript" language="javascript1.2">\r
+<!--\r
+if (window.gbWhTopic)\r
+{\r
+ if (window.addTocInfo)\r
+ {\r
+ addTocInfo("IAPP module\nDisplaying/hiding toolbars");\r
+addButton("show",BTN_TEXT,"Show","","","","",0,0,"","","");\r
+\r
+ }\r
+ if (window.writeBtnStyle)\r
+ writeBtnStyle();\r
+\r
+ if (window.writeIntopicBar)\r
+ writeIntopicBar(1);\r
+\r
+ if (window.setRelStartPage)\r
+ {\r
+ setRelStartPage("../kernel.html");\r
+\r
+ autoSync(0);\r
+ sendSyncInfo();\r
+ sendAveInfoOut();\r
+ }\r
+}\r
+else\r
+ document.location.reload();\r
+//-->\r
+</script>\r
+<h1 class="whs1">Displaying/hiding toolbars</h1>\r
+\r
+<p class="whs2"><img src="../i_blue.jpg" x-maintain-ratio="TRUE" width="30px" height="30px" border="0" class="img_whs3">All toolbars in the <span \r
+ style="font-weight: bold;"><B>SALOME</B></span> application are context-sensitive. \r
+ Uploading of a definite component (Geom, VISU, SMESH etc.) will automatically \r
+ add some additional toolbars specific to this component. </p>\r
+\r
+<p class="whs2"> </p>\r
+\r
+<p class="whs4">To display/hide a \r
+ definite toolbar:</p>\r
+\r
+<p class="whs2"> </p>\r
+\r
+<p class="whs5">In the main menu choose \r
+ <span style="font-weight: bold;"><B>View > Toolbar</B></span>, and from this \r
+ submenu mark or unmark the toolbar, you would like to display/hide. </p>\r
+\r
+<p class="whs6"> </p>\r
+\r
+<p class="whs7">By default all toolbars \r
+ are located on the top of the SALOME desktop. But you can relocate toolbars \r
+ by dragging with the mouse and dropping it in any place of the window. \r
+ </p>\r
+\r
+<p class="whs7"> </p>\r
+\r
+<p class="whs7"> </p>\r
+\r
+<p class="whs7"> </p>\r
+\r
+<p class="whs7"> <a href="javascript:void(0);" onClick="var e; if (parseInt(navigator.appVersion)>=4){e=event;} if (parseInt(navigator.appVersion) >=2 && typeof(PopupMenu_Invoke) == 'function') PopupMenu_Invoke(e,'','SALOME PRO desktop','salome_pro_desktop.htm');return false;" title="Related Topics"><img src="../ss_btn_related_topics.gif" border=0 height=17 width=82 alt="Related Topics"></a></p>\r
+\r
+<script type="text/javascript" language="JavaScript" title="WebHelpRelatedTopics"><!--\r
+if (parseInt(navigator.appVersion) >= 3 && typeof (WritePopupMenuLayer) == "function")\r
+ WritePopupMenuLayer();\r
+//--></script><script type="text/javascript" language="javascript1.2">\r
+<!--\r
+if (window.writeIntopicBar)\r
+ writeIntopicBar(0);\r
+//-->\r
+</script>\r
+</body>\r
+\r
+</html>\r
--- /dev/null
+<!doctype HTML public "-//W3C//DTD HTML 4.0 Frameset//EN">\r
+\r
+<html>\r
+\r
+<!--(==============================================================)-->\r
+<!--(Document created with RoboEditor. )============================-->\r
+<!--(==============================================================)-->\r
+\r
+<head>\r
+\r
+<title>Displaying studies</title>\r
+\r
+<!--(Meta)==========================================================-->\r
+\r
+<meta http-equiv=content-type content="text/html; charset=windows-1252">\r
+<meta name=generator content="RoboHELP by eHelp Corporation - www.ehelp.com">\r
+<meta name=generator-major-version content=0.1>\r
+<meta name=generator-minor-version content=1>\r
+<meta name=filetype content=kadov>\r
+<meta name=filetype-version content=1>\r
+<meta name=page-count content=1>\r
+<meta name=layout-height content=1521>\r
+<meta name=layout-width content=720>\r
+\r
+\r
+<!--(Links)=========================================================-->\r
+\r
+ <link rel='stylesheet' href='../default_ns.css'>\r
+<script type="text/javascript" language="JavaScript" title="WebHelpSplitCss">\r
+<!--\r
+if (navigator.appName !="Netscape")\r
+{ document.write("<link rel='stylesheet' href='../default.css'>");}\r
+//-->\r
+</script>\r
+<style type="text/css">\r
+<!--\r
+h1.whs1 {text-align: justify;}\r
+p.whs2 {margin-left: 0px; text-align: justify;}\r
+p.whs3 {margin-left: 0px; font-weight: bold; text-align: justify;}\r
+p.whs4 {margin-left: 0px; font-style: italic; color: #ff0000; text-align: justify;}\r
+p.whs5 {margin-left: 40px; text-align: justify;}\r
+p.whs6 {font-weight: bold; margin-left: 0px; text-align: justify;}\r
+img_whs7 {border-style: none; border: none; width: 574px; height: 411px; float: none;}\r
+p.whs8 {margin-left: 0px; font-style: italic; text-align: justify; color: #000000; font-family: 'Arial Black', sans-serif;}\r
+p.whs9 {font-weight: bold; text-align: justify; margin-left: 40px;}\r
+p.whs10 {font-style: italic; color: #ff0000; margin-left: 40px; text-align: justify;}\r
+p.whs11 {margin-left: 40px; font-weight: bold; text-align: justify;}\r
+-->\r
+</style>\r
+<script type="text/javascript" language="JavaScript">\r
+<!--\r
+if ((navigator.appName == "Netscape") && (parseInt(navigator.appVersion) == 4))\r
+{\r
+ var strNSS = "<style type='text/css'>";\r
+ strNSS += "p.whs2 {margin-left:1; }";\r
+ strNSS += "p.whs3 {margin-left:1; }";\r
+ strNSS += "p.whs4 {margin-left:1; }";\r
+ strNSS += "p.whs6 {margin-left:1; }";\r
+ strNSS += "p.whs8 {margin-left:1; }";\r
+ strNSS +="</style>";\r
+ document.write(strNSS);\r
+}\r
+//-->\r
+</script>\r
+<script type="text/javascript" language="JavaScript" title="BSSC Special Effects" src="../ehlpdhtm.js"></script><script type="text/javascript" language="JavaScript" title="WebHelpInlineScript">\r
+<!--\r
+function reDo() {\r
+ if (innerWidth != origWidth || innerHeight != origHeight)\r
+ location.reload();\r
+}\r
+if ((parseInt(navigator.appVersion) == 4) && (navigator.appName == "Netscape")) {\r
+ origWidth = innerWidth;\r
+ origHeight = innerHeight;\r
+ onresize = reDo;\r
+}\r
+onerror = null; \r
+//-->\r
+</script>\r
+<style type="text/css">\r
+<!--\r
+ div.WebHelpPopupMenu {position:absolute; left:0px; top:0px; z-index:4; visibility:hidden;}\r
+-->\r
+</style>\r
+<script type="text/javascript" language="javascript1.2" src="../whmsg.js"></script>\r
+<script type="text/javascript" language="javascript" src="../whver.js"></script>\r
+<script type="text/javascript" language="javascript1.2" src="../whproxy.js"></script>\r
+<script type="text/javascript" language="javascript1.2" src="../whutils.js"></script>\r
+<script type="text/javascript" language="javascript1.2" src="../whtopic.js"></script>\r
+</head>\r
+\r
+<!--(Body)==========================================================-->\r
+\r
+\r
+<body>\r
+\r
+<script type="text/javascript" language="javascript1.2">\r
+<!--\r
+if (window.gbWhTopic)\r
+{\r
+ if (window.addTocInfo)\r
+ {\r
+ addTocInfo("IAPP module\nStudy management\nDisplaying studies");\r
+addButton("show",BTN_TEXT,"Show","","","","",0,0,"","","");\r
+\r
+ }\r
+ if (window.writeBtnStyle)\r
+ writeBtnStyle();\r
+\r
+ if (window.writeIntopicBar)\r
+ writeIntopicBar(1);\r
+\r
+ if (window.setRelStartPage)\r
+ {\r
+ setRelStartPage("../kernel.html");\r
+\r
+ autoSync(0);\r
+ sendSyncInfo();\r
+ sendAveInfoOut();\r
+ }\r
+}\r
+else\r
+ document.location.reload();\r
+//-->\r
+</script>\r
+<h1 class="whs1">Displaying studies</h1>\r
+\r
+<p class="whs2">In <span style="font-weight: bold;"><B>SALOME \r
+ </B></span>there are several options allowing to display in different ways \r
+ your study windows in SALOME Desktop. </p>\r
+\r
+<p class="whs3"> </p>\r
+\r
+<p class=TODO>To make a cascade representation of several study windows:</p>\r
+\r
+<p class="whs4"> </p>\r
+\r
+<p class="whs5">From the main menu select \r
+ <span style="font-weight: bold;"><B>Window > Cascade.</B></span></p>\r
+\r
+<p class="whs5"> </p>\r
+\r
+<p class="whs2">It will look like as \r
+ follows:</p>\r
+\r
+<p class="whs6"> </p>\r
+\r
+<p class="whs5"><img src="../pics/cascade.jpg" x-maintain-ratio="TRUE" width="574px" height="411px" border="0" class="img_whs7"></p>\r
+\r
+<p class="whs3"> </p>\r
+\r
+<p class="whs8">Tiling of several \r
+ study windows:</p>\r
+\r
+<p class="whs4"> </p>\r
+\r
+<p class="whs5">From the main menu select \r
+ <span style="font-weight: bold;"><B>Window > Cascade.</B></span></p>\r
+\r
+<p class="whs5"> </p>\r
+\r
+<p class="whs2">It will look like as \r
+ follows:</p>\r
+\r
+<p class="whs2"> </p>\r
+\r
+<p class="whs9"><img src="../pics/tile.jpg" x-maintain-ratio="TRUE" width="574px" height="411px" border="0" class="img_whs7"> </p>\r
+\r
+<p class="whs6"> </p>\r
+\r
+<p class="whs8"> </p>\r
+\r
+<p class="whs8">To switch between \r
+ several study windows:</p>\r
+\r
+<p class="whs4"> </p>\r
+\r
+<p class="whs5">From the main menu choose \r
+ <span style="font-weight: bold;"><B>Window</B></span> and select by name \r
+ a study window for activation. This window will be displayed, maximized \r
+ and activated.</p>\r
+\r
+<p class="whs10"> </p>\r
+\r
+<p class="whs11"> </p>\r
+\r
+<p class="whs11"> </p>\r
+\r
+<p class="whs6"> </p>\r
+\r
+<p class="whs6">\r
+<a href="javascript:void(0);" onClick="var e; if (parseInt(navigator.appVersion)>=4){e=event;} if (parseInt(navigator.appVersion) >=2 && typeof(PopupMenu_Invoke) == 'function') PopupMenu_Invoke(e,'','Creating a new study','creating_a_new_study.htm','Introduction to IAPP','introduction_to_iapp.htm','Opening studies','opening_studies.htm','SALOME PRO desktop','salome_pro_desktop.htm','Saving and closing studies','saving_a_study.htm');return false;" title="Related Topics"><img src="../ss_btn_related_topics.gif" border=0 height=17 width=82 alt="Related Topics"></a></p>\r
+\r
+<p class="whs6"> </p>\r
+\r
+<p class="whs6"> </p>\r
+\r
+<p class="whs6"> </p>\r
+\r
+<p class="whs6"> </p>\r
+\r
+<script type="text/javascript" language="JavaScript" title="WebHelpRelatedTopics"><!--\r
+if (parseInt(navigator.appVersion) >= 3 && typeof (WritePopupMenuLayer) == "function")\r
+ WritePopupMenuLayer();\r
+//--></script><script type="text/javascript" language="javascript1.2">\r
+<!--\r
+if (window.writeIntopicBar)\r
+ writeIntopicBar(0);\r
+//-->\r
+</script>\r
+</body>\r
+\r
+</html>\r
--- /dev/null
+<!doctype HTML public "-//W3C//DTD HTML 4.0 Frameset//EN">\r
+\r
+<html>\r
+\r
+<!--(==============================================================)-->\r
+<!--(Document created with RoboEditor. )============================-->\r
+<!--(==============================================================)-->\r
+\r
+<head>\r
+\r
+<title>Editing studies</title>\r
+\r
+<!--(Meta)==========================================================-->\r
+\r
+<meta http-equiv=content-type content="text/html; charset=windows-1252">\r
+<meta name=generator content="RoboHELP by eHelp Corporation - www.ehelp.com">\r
+<meta name=generator-major-version content=0.1>\r
+<meta name=generator-minor-version content=1>\r
+<meta name=filetype content=kadov>\r
+<meta name=filetype-version content=1>\r
+<meta name=page-count content=1>\r
+<meta name=layout-height content=458>\r
+<meta name=layout-width content=702>\r
+\r
+\r
+<!--(Links)=========================================================-->\r
+\r
+ <link rel='stylesheet' href='../default_ns.css'>\r
+<script type="text/javascript" language="JavaScript" title="WebHelpSplitCss">\r
+<!--\r
+if (navigator.appName !="Netscape")\r
+{ document.write("<link rel='stylesheet' href='../default.css'>");}\r
+//-->\r
+</script>\r
+<style type="text/css">\r
+<!--\r
+h1.whs1 {text-align: justify;}\r
+p.whs2 {text-align: justify;}\r
+img_whs3 {border-style: none; border: none; float: none; width: 30px; height: 30px;}\r
+p.whs4 {font-style: italic; text-align: justify; color: #000000; font-family: 'Arial Black', sans-serif;}\r
+p.whs5 {margin-left: 40px; text-align: justify;}\r
+img_whs6 {border-style: none; border: none; width: 37px; height: 26px; float: none;}\r
+p.whs7 {margin-left: 0px; font-style: italic; text-align: justify; color: #000000; font-family: 'Arial Black', sans-serif;}\r
+p.whs8 {margin-left: 0px; text-align: justify;}\r
+img_whs9 {border-style: none; border: none; width: 48px; height: 26px; float: none;}\r
+p.whs10 {margin-left: 0px; font-weight: bold; text-align: justify;}\r
+-->\r
+</style>\r
+<script type="text/javascript" language="JavaScript">\r
+<!--\r
+if ((navigator.appName == "Netscape") && (parseInt(navigator.appVersion) == 4))\r
+{\r
+ var strNSS = "<style type='text/css'>";\r
+ strNSS += "p.whs7 {margin-left:1; }";\r
+ strNSS += "p.whs8 {margin-left:1; }";\r
+ strNSS += "p.whs10 {margin-left:1; }";\r
+ strNSS +="</style>";\r
+ document.write(strNSS);\r
+}\r
+//-->\r
+</script>\r
+<script type="text/javascript" language="JavaScript" title="BSSC Special Effects" src="../ehlpdhtm.js"></script><script type="text/javascript" language="JavaScript" title="WebHelpInlineScript">\r
+<!--\r
+function reDo() {\r
+ if (innerWidth != origWidth || innerHeight != origHeight)\r
+ location.reload();\r
+}\r
+if ((parseInt(navigator.appVersion) == 4) && (navigator.appName == "Netscape")) {\r
+ origWidth = innerWidth;\r
+ origHeight = innerHeight;\r
+ onresize = reDo;\r
+}\r
+onerror = null; \r
+//-->\r
+</script>\r
+<style type="text/css">\r
+<!--\r
+ div.WebHelpPopupMenu {position:absolute; left:0px; top:0px; z-index:4; visibility:hidden;}\r
+-->\r
+</style>\r
+<script type="text/javascript" language="javascript1.2" src="../whmsg.js"></script>\r
+<script type="text/javascript" language="javascript" src="../whver.js"></script>\r
+<script type="text/javascript" language="javascript1.2" src="../whproxy.js"></script>\r
+<script type="text/javascript" language="javascript1.2" src="../whutils.js"></script>\r
+<script type="text/javascript" language="javascript1.2" src="../whtopic.js"></script>\r
+</head>\r
+\r
+<!--(Body)==========================================================-->\r
+\r
+\r
+<body>\r
+\r
+<script type="text/javascript" language="javascript1.2">\r
+<!--\r
+if (window.gbWhTopic)\r
+{\r
+ if (window.addTocInfo)\r
+ {\r
+ addTocInfo("IAPP module\nStudy management\nEditing studies");\r
+addButton("show",BTN_TEXT,"Show","","","","",0,0,"","","");\r
+\r
+ }\r
+ if (window.writeBtnStyle)\r
+ writeBtnStyle();\r
+\r
+ if (window.writeIntopicBar)\r
+ writeIntopicBar(1);\r
+\r
+ if (window.setRelStartPage)\r
+ {\r
+ setRelStartPage("../kernel.html");\r
+\r
+ autoSync(0);\r
+ sendSyncInfo();\r
+ sendAveInfoOut();\r
+ }\r
+}\r
+else\r
+ document.location.reload();\r
+//-->\r
+</script>\r
+<h1 class="whs1">Editing studies</h1>\r
+\r
+<p class="whs2"><img src="../i_blue.jpg" x-maintain-ratio="TRUE" width="30px" height="30px" border="0" class="img_whs3"><span style="font-weight: bold;"><B>SALOME \r
+ </B></span>has some additional features allowing to edit your study within \r
+ a definite component: <span style="font-weight: bold;"><B>Undo/Redo</B></span> \r
+ functionality and <span style="font-weight: bold;"><B>Copy/Paste</B></span> functionality \r
+ (currently used in GEOM, VISU). </p>\r
+\r
+<p class="whs2"> </p>\r
+\r
+<p class="whs4">To undo/redo an operation:</p>\r
+\r
+<p class="whs2"> </p>\r
+\r
+<p class="whs5">In the main toolbar \r
+ click one of the icons <img src="../pics/undo-redo.jpg" x-maintain-ratio="TRUE" width="37px" height="26px" border="0" class="img_whs6"> or from the main menu choose <span \r
+ style="font-weight: bold;"><B>Edit > Undo/Redo</B></span> option.</p>\r
+\r
+<p class="whs5"> </p>\r
+\r
+<p class="whs7">To copy/paste a definite \r
+ object:</p>\r
+\r
+<p class="whs8"> </p>\r
+\r
+<p class="whs5">In the main toolbar \r
+ click one of the icons <img src="../pics/copy-paste.jpg" x-maintain-ratio="TRUE" width="48px" height="26px" border="0" class="img_whs9"> or from the main menu choose <span \r
+ style="font-weight: bold;"><B>Edit > Copy/Paste</B></span> option.</p>\r
+\r
+<p class="whs5"> </p>\r
+\r
+<p class="whs5"> </p>\r
+\r
+<p class="whs5"> </p>\r
+\r
+<p class="whs5"> </p>\r
+\r
+<p class="whs8"> </p>\r
+\r
+<p class="whs10">\r
+<a href="javascript:void(0);" onClick="var e; if (parseInt(navigator.appVersion)>=4){e=event;} if (parseInt(navigator.appVersion) >=2 && typeof(PopupMenu_Invoke) == 'function') PopupMenu_Invoke(e,'','Creating a new study','creating_a_new_study.htm','Displaying studies','displaying_studies.htm','Introduction to IAPP','introduction_to_iapp.htm','Opening studies','opening_studies.htm','SALOME PRO desktop','salome_pro_desktop.htm','Saving and closing studies','saving_a_study.htm');return false;" title="Related Topics"><img src="../ss_btn_related_topics.gif" border=0 height=17 width=82 alt="Related Topics"></a></p>\r
+\r
+<script type="text/javascript" language="JavaScript" title="WebHelpRelatedTopics"><!--\r
+if (parseInt(navigator.appVersion) >= 3 && typeof (WritePopupMenuLayer) == "function")\r
+ WritePopupMenuLayer();\r
+//--></script><script type="text/javascript" language="javascript1.2">\r
+<!--\r
+if (window.writeIntopicBar)\r
+ writeIntopicBar(0);\r
+//-->\r
+</script>\r
+</body>\r
+\r
+</html>\r
--- /dev/null
+<!doctype HTML public "-//W3C//DTD HTML 4.0 Frameset//EN">\r
+\r
+<html>\r
+\r
+<!--(==============================================================)-->\r
+<!--(Document created with RoboEditor. )============================-->\r
+<!--(==============================================================)-->\r
+\r
+<head>\r
+\r
+<title>Getting properties of the study</title>\r
+\r
+<!--(Meta)==========================================================-->\r
+\r
+<meta http-equiv=content-type content="text/html; charset=windows-1252">\r
+<meta name=generator content="RoboHELP by eHelp Corporation - www.ehelp.com">\r
+<meta name=generator-major-version content=0.1>\r
+<meta name=generator-minor-version content=1>\r
+<meta name=filetype content=kadov>\r
+<meta name=filetype-version content=1>\r
+<meta name=page-count content=1>\r
+<meta name=layout-height content=1122>\r
+<meta name=layout-width content=700>\r
+\r
+\r
+<!--(Links)=========================================================-->\r
+\r
+ <link rel='stylesheet' href='../default_ns.css'>\r
+<script type="text/javascript" language="JavaScript" title="WebHelpSplitCss">\r
+<!--\r
+if (navigator.appName !="Netscape")\r
+{ document.write("<link rel='stylesheet' href='../default.css'>");}\r
+//-->\r
+</script>\r
+<style type="text/css">\r
+<!--\r
+h1.whs1 {text-align: justify;}\r
+p.whs2 {font-style: italic; text-align: justify; color: #000000; font-family: 'Arial Black', sans-serif;}\r
+p.whs3 {font-style: italic; color: #ff0000; text-align: justify;}\r
+p.whs4 {margin-left: 40px; text-align: justify;}\r
+img_whs5 {border-style: none; border: none; width: 380px; height: 268px; float: none;}\r
+p.whs6 {margin-left: 0px; text-align: justify;}\r
+img_whs7 {border-style: none; border: none; width: 562px; height: 122px; float: none;}\r
+p.whs8 {margin-left: 0px; font-weight: bold; text-align: justify;}\r
+-->\r
+</style>\r
+<script type="text/javascript" language="JavaScript">\r
+<!--\r
+if ((navigator.appName == "Netscape") && (parseInt(navigator.appVersion) == 4))\r
+{\r
+ var strNSS = "<style type='text/css'>";\r
+ strNSS += "p.whs6 {margin-left:1; }";\r
+ strNSS += "p.whs8 {margin-left:1; }";\r
+ strNSS +="</style>";\r
+ document.write(strNSS);\r
+}\r
+//-->\r
+</script>\r
+<script type="text/javascript" language="JavaScript" title="BSSC Special Effects" src="../ehlpdhtm.js"></script><script type="text/javascript" language="JavaScript" title="WebHelpInlineScript">\r
+<!--\r
+function reDo() {\r
+ if (innerWidth != origWidth || innerHeight != origHeight)\r
+ location.reload();\r
+}\r
+if ((parseInt(navigator.appVersion) == 4) && (navigator.appName == "Netscape")) {\r
+ origWidth = innerWidth;\r
+ origHeight = innerHeight;\r
+ onresize = reDo;\r
+}\r
+onerror = null; \r
+//-->\r
+</script>\r
+<style type="text/css">\r
+<!--\r
+ div.WebHelpPopupMenu {position:absolute; left:0px; top:0px; z-index:4; visibility:hidden;}\r
+-->\r
+</style>\r
+<script type="text/javascript" language="javascript1.2" src="../whmsg.js"></script>\r
+<script type="text/javascript" language="javascript" src="../whver.js"></script>\r
+<script type="text/javascript" language="javascript1.2" src="../whproxy.js"></script>\r
+<script type="text/javascript" language="javascript1.2" src="../whutils.js"></script>\r
+<script type="text/javascript" language="javascript1.2" src="../whtopic.js"></script>\r
+</head>\r
+\r
+<!--(Body)==========================================================-->\r
+\r
+\r
+<body>\r
+\r
+<script type="text/javascript" language="javascript1.2">\r
+<!--\r
+if (window.gbWhTopic)\r
+{\r
+ if (window.addTocInfo)\r
+ {\r
+ addTocInfo("IAPP module\nStudy management\nGetting and setting study properties");\r
+addButton("show",BTN_TEXT,"Show","","","","",0,0,"","","");\r
+\r
+ }\r
+ if (window.writeBtnStyle)\r
+ writeBtnStyle();\r
+\r
+ if (window.writeIntopicBar)\r
+ writeIntopicBar(1);\r
+\r
+ if (window.setRelStartPage)\r
+ {\r
+ setRelStartPage("../kernel.html");\r
+\r
+ autoSync(0);\r
+ sendSyncInfo();\r
+ sendAveInfoOut();\r
+ }\r
+}\r
+else\r
+ document.location.reload();\r
+//-->\r
+</script>\r
+<h1 class="whs1">Getting study properties</h1>\r
+\r
+<p class="whs2">To view the properties \r
+ of the current study:</p>\r
+\r
+<p class="whs3"> </p>\r
+\r
+<p class="whs4">From the main menu select \r
+ <span style="font-weight: bold;"><B>File > Properties</B></span> option. The \r
+ following dialog box will appear:</p>\r
+\r
+<p class="whs4"> </p>\r
+\r
+<p class="whs4"><img src="../pics/properties.jpg" x-maintain-ratio="TRUE" width="380px" height="268px" border="0" class="img_whs5"></p>\r
+\r
+<p class="whs4"> </p>\r
+\r
+<p class="whs6">This dialog box gives \r
+ complete information about your study. </p>\r
+\r
+<p class="whs6"> </p>\r
+\r
+<p class=TODO>To change the name of the study author:</p>\r
+\r
+<p class="whs6"> </p>\r
+\r
+<p class="whs4">In this dialog box click \r
+ on the <span style="font-weight: bold;"><B>Author</B></span> field and enter \r
+ a new name.</p>\r
+\r
+<p class="whs4"> </p>\r
+\r
+<p class=TODO>To view the list of changes made with your study:</p>\r
+\r
+<p class="whs6"> </p>\r
+\r
+<p class="whs4">In this dialog box click \r
+ on the <span style="font-weight: bold;"><B>Modifications</B></span> field and \r
+ scroll it down. Each record contains the following information: date and \r
+ time of modification of the study, name of the user, who has made these \r
+ changes. </p>\r
+\r
+<p class="whs6"> </p>\r
+\r
+<p class=TODO>To lock your study for modifications:</p>\r
+\r
+<p class="whs6"> </p>\r
+\r
+<p class="whs4">In the dialog box shown \r
+ on the picture above click on the <span style="font-weight: bold;"><B>Locked \r
+ </B></span>field and choose <span style="font-weight: bold;"><B>Yes</B></span> item. \r
+ </p>\r
+\r
+<p class="whs4"> </p>\r
+\r
+<p class="whs6">In this case your study \r
+ will be locked for any kind of modifications for all users. Next time \r
+ you try to edit it, you will see the following warning message:</p>\r
+\r
+<p class="whs6"> </p>\r
+\r
+<p class="whs4"><img src="../pics/warninglocked.jpg" x-maintain-ratio="TRUE" width="562px" height="122px" border="0" class="img_whs7"></p>\r
+\r
+<p class="whs4"> </p>\r
+\r
+<p class="whs4"> </p>\r
+\r
+<p class="whs4"> </p>\r
+\r
+<p class="whs4"> </p>\r
+\r
+<p class="whs8">\r
+<a href="javascript:void(0);" onClick="var e; if (parseInt(navigator.appVersion)>=4){e=event;} if (parseInt(navigator.appVersion) >=2 && typeof(PopupMenu_Invoke) == 'function') PopupMenu_Invoke(e,'','Creating a new study','creating_a_new_study.htm','Displaying studies','displaying_studies.htm','Introduction to IAPP','introduction_to_iapp.htm','Opening studies','opening_studies.htm','SALOME PRO desktop','salome_pro_desktop.htm','Saving and closing studies','saving_a_study.htm');return false;" title="Related Topics"><img src="../ss_btn_related_topics.gif" border=0 height=17 width=82 alt="Related Topics"></a></p>\r
+\r
+<p class="whs8"> </p>\r
+\r
+<p class="whs8"> </p>\r
+\r
+<p class="whs8"> </p>\r
+\r
+<p class="whs8"> </p>\r
+\r
+<p class="whs8"> </p>\r
+\r
+<script type="text/javascript" language="JavaScript" title="WebHelpRelatedTopics"><!--\r
+if (parseInt(navigator.appVersion) >= 3 && typeof (WritePopupMenuLayer) == "function")\r
+ WritePopupMenuLayer();\r
+//--></script><script type="text/javascript" language="javascript1.2">\r
+<!--\r
+if (window.writeIntopicBar)\r
+ writeIntopicBar(0);\r
+//-->\r
+</script>\r
+</body>\r
+\r
+</html>\r
--- /dev/null
+<!doctype HTML public "-//W3C//DTD HTML 4.0 Frameset//EN">\r
+\r
+<html>\r
+\r
+<!--(==============================================================)-->\r
+<!--(Document created with RoboEditor. )============================-->\r
+<!--(==============================================================)-->\r
+\r
+<head>\r
+\r
+<title>Getting started2</title>\r
+\r
+<!--(Meta)==========================================================-->\r
+\r
+<meta http-equiv=content-type content="text/html; charset=windows-1252">\r
+<meta name=generator content="RoboHELP by eHelp Corporation - www.ehelp.com">\r
+<meta name=generator-major-version content=0.1>\r
+<meta name=generator-minor-version content=1>\r
+<meta name=filetype content=kadov>\r
+<meta name=filetype-version content=1>\r
+<meta name=page-count content=1>\r
+<meta name=layout-height content=896>\r
+<meta name=layout-width content=700>\r
+\r
+\r
+<!--(Links)=========================================================-->\r
+\r
+ <link rel='stylesheet' href='../default_ns.css'>\r
+<script type="text/javascript" language="JavaScript" title="WebHelpSplitCss">\r
+<!--\r
+if (navigator.appName !="Netscape")\r
+{ document.write("<link rel='stylesheet' href='../default.css'>");}\r
+//-->\r
+</script>\r
+<style type="text/css">\r
+<!--\r
+h1.whs1 {text-align: justify;}\r
+p.whs2 {text-align: justify;}\r
+p.whs3 {margin-left: 40px; text-align: justify;}\r
+img_whs4 {border-style: none; border: none; width: 585px; height: 426px;}\r
+img_whs5 {border-style: none; border: none; width: 30px; height: 30px; float: none;}\r
+p.whs6 {text-align:justify; background-image:url(../texture_horiz_ltbluebubbles.jpg); }\r
+img_whs7 {border-style: none; border: none; width: 36px; height: 38px; float: none;}\r
+-->\r
+</style>\r
+<script type="text/javascript" language="JavaScript" title="BSSC Special Effects" src="../ehlpdhtm.js"></script><script type="text/javascript" language="JavaScript" title="WebHelpInlineScript">\r
+<!--\r
+function reDo() {\r
+ if (innerWidth != origWidth || innerHeight != origHeight)\r
+ location.reload();\r
+}\r
+if ((parseInt(navigator.appVersion) == 4) && (navigator.appName == "Netscape")) {\r
+ origWidth = innerWidth;\r
+ origHeight = innerHeight;\r
+ onresize = reDo;\r
+}\r
+onerror = null; \r
+//-->\r
+</script>\r
+<style type="text/css">\r
+<!--\r
+ div.WebHelpPopupMenu {position:absolute; left:0px; top:0px; z-index:4; visibility:hidden;}\r
+-->\r
+</style>\r
+<script type="text/javascript" language="javascript1.2" src="../whmsg.js"></script>\r
+<script type="text/javascript" language="javascript" src="../whver.js"></script>\r
+<script type="text/javascript" language="javascript1.2" src="../whproxy.js"></script>\r
+<script type="text/javascript" language="javascript1.2" src="../whutils.js"></script>\r
+<script type="text/javascript" language="javascript1.2" src="../whtopic.js"></script>\r
+</head>\r
+\r
+<!--(Body)==========================================================-->\r
+\r
+\r
+<body>\r
+\r
+<script type="text/javascript" language="javascript1.2">\r
+<!--\r
+if (window.gbWhTopic)\r
+{\r
+ if (window.addTocInfo)\r
+ {\r
+ addTocInfo("IAPP module\nGetting started");\r
+addButton("show",BTN_TEXT,"Show","","","","",0,0,"","","");\r
+\r
+ }\r
+ if (window.writeBtnStyle)\r
+ writeBtnStyle();\r
+\r
+ if (window.writeIntopicBar)\r
+ writeIntopicBar(1);\r
+\r
+ if (window.setRelStartPage)\r
+ {\r
+ setRelStartPage("../kernel.html");\r
+\r
+ autoSync(0);\r
+ sendSyncInfo();\r
+ sendAveInfoOut();\r
+ }\r
+}\r
+else\r
+ document.location.reload();\r
+//-->\r
+</script>\r
+<h1 class="whs1">Getting started</h1>\r
+\r
+<p class="whs2">Start the SALOME application, the following \r
+ initial desktop window will appear:</p>\r
+\r
+<p class="whs2"> </p>\r
+\r
+<p class="whs3"> <img src="../image2.jpg" width="585px" height="426px" border="0" class="img_whs4"></p>\r
+\r
+<p class="whs2"><img src="../i_blue.jpg" x-maintain-ratio="TRUE" width="30px" height="30px" border="0" class="img_whs5"> In general, the SALOME application \r
+ is destined for performance of different numerical calculations and visualization \r
+ of the resulting data. For that purpose, in the SALOME environment the \r
+ following notion is used - \r
+ <span style="font-weight: bold;"><B>Study. </B></span></p>\r
+\r
+<p class="whs2">Study represents a working document in \r
+ which you can realize all operations connected with the SALOME functionality. \r
+ </p>\r
+\r
+<p class="whs2">SALOME is a multi-study platform. It means \r
+ that simultaneously you can work with several studies. <span> </span> </p>\r
+\r
+<p class="whs2"> </p>\r
+\r
+<p class="whs6"><img src="../note1.gif" x-maintain-ratio="TRUE" width="36px" height="38px" border="0" class="img_whs7">To proceed working in SALOME you should create or open a new \r
+ study. </p>\r
+\r
+<p class="whs2"> </p>\r
+\r
+<p class="whs2"> </p>\r
+\r
+<p class="whs2"> </p>\r
+\r
+<p class="whs2">\r
+<a href="javascript:void(0);" onClick="var e; if (parseInt(navigator.appVersion)>=4){e=event;} if (parseInt(navigator.appVersion) >=2 && typeof(PopupMenu_Invoke) == 'function') PopupMenu_Invoke(e,'','Creating a new study','creating_a_new_study.htm','Introduction to IAPP','introduction_to_iapp.htm','SALOME PRO desktop','salome_pro_desktop.htm');return false;" title="Related Topics"><img src="../ss_btn_related_topics.gif" border=0 height=17 width=82 alt="Related Topics"></a></p>\r
+\r
+<p class="whs2"> </p>\r
+\r
+<p class="whs2"> </p>\r
+\r
+<p class="whs2"> </p>\r
+\r
+<script type="text/javascript" language="JavaScript" title="WebHelpRelatedTopics"><!--\r
+if (parseInt(navigator.appVersion) >= 3 && typeof (WritePopupMenuLayer) == "function")\r
+ WritePopupMenuLayer();\r
+//--></script><script type="text/javascript" language="javascript1.2">\r
+<!--\r
+if (window.writeIntopicBar)\r
+ writeIntopicBar(0);\r
+//-->\r
+</script>\r
+</body>\r
+\r
+</html>\r
--- /dev/null
+<!doctype HTML public "-//W3C//DTD HTML 4.0 Frameset//EN">\r
+\r
+<html>\r
+\r
+<!--(==============================================================)-->\r
+<!--(Document created with RoboEditor. )============================-->\r
+<!--(==============================================================)-->\r
+\r
+<head>\r
+\r
+<title>Installing SALOME</title>\r
+\r
+<!--(Meta)==========================================================-->\r
+\r
+<meta http-equiv=content-type content="text/html; charset=windows-1252">\r
+<meta name=generator content="RoboHELP by eHelp Corporation - www.ehelp.com">\r
+<meta name=generator-major-version content=0.1>\r
+<meta name=generator-minor-version content=1>\r
+<meta name=filetype content=kadov>\r
+<meta name=filetype-version content=1>\r
+<meta name=page-count content=1>\r
+<meta name=layout-height content=8574>\r
+<meta name=layout-width content=825>\r
+\r
+\r
+<!--(Links)=========================================================-->\r
+\r
+ <link rel='stylesheet' href='../default_ns.css'>\r
+<script type="text/javascript" language="JavaScript" title="WebHelpSplitCss">\r
+<!--\r
+if (navigator.appName !="Netscape")\r
+{ document.write("<link rel='stylesheet' href='../default.css'>");}\r
+//-->\r
+</script>\r
+<style type="text/css">\r
+<!--\r
+h1.whs1 {font-size: 24pt;}\r
+hr.whs2 {float: aligncenter; text-align: justify;}\r
+p.whs3 {text-align: justify;}\r
+h3.whs4 {text-align: justify;}\r
+p.whs5 {text-align: justify; font-style: italic; color: #ff0000;}\r
+p.whs6 {text-align:justify; background-image:url(../texture_horiz_ltbluebubbles.jpg); }\r
+img_whs7 {border-style: none; border: none; width: 36px; height: 38px; float: none;}\r
+p.whs8 {text-align: justify; text-indent: 48px;}\r
+p.whs9 {text-align: justify; margin-left: 40px;}\r
+p.whs10 {text-align: center;}\r
+img_whs11 {border-style: none; width: 638px; height: 404px;}\r
+img_whs12 {border-style: none; width: 481px; height: 117px;}\r
+table.whs13 {width: 100%; float: alignleft; x-border-left: 4px table-solid; x-border-top: 4px table-solid; x-border-right: 4px table-solid; x-border-bottom: 4px table-solid; border-collapse: separate; x-border-left: 4px table-solid; x-border-top: 4px table-solid; x-border-right: 4px table-solid; x-border-bottom: 4px table-solid; border-collapse: separate;}\r
+th.whs14 {background-color: #c0c0c0;}\r
+td.whs15 {background-color: #e4e4e4;}\r
+p.whs16 {font-family: 'Times New Roman', serif; text-align: justify;}\r
+p.whs17 {font-family: 'Times New Roman', serif;}\r
+-->\r
+</style>\r
+<script type="text/javascript" language="JavaScript" title="BSSC Special Effects" src="../ehlpdhtm.js"></script><script type="text/javascript" language="JavaScript" title="WebHelpInlineScript">\r
+<!--\r
+function reDo() {\r
+ if (innerWidth != origWidth || innerHeight != origHeight)\r
+ location.reload();\r
+}\r
+if ((parseInt(navigator.appVersion) == 4) && (navigator.appName == "Netscape")) {\r
+ origWidth = innerWidth;\r
+ origHeight = innerHeight;\r
+ onresize = reDo;\r
+}\r
+onerror = null; \r
+//-->\r
+</script>\r
+<style type="text/css">\r
+<!--\r
+ div.WebHelpPopupMenu {position:absolute; left:0px; top:0px; z-index:4; visibility:hidden;}\r
+-->\r
+</style>\r
+<script type="text/javascript" language="javascript1.2" src="../whmsg.js"></script>\r
+<script type="text/javascript" language="javascript" src="../whver.js"></script>\r
+<script type="text/javascript" language="javascript1.2" src="../whproxy.js"></script>\r
+<script type="text/javascript" language="javascript1.2" src="../whutils.js"></script>\r
+<script type="text/javascript" language="javascript1.2" src="../whtopic.js"></script>\r
+</head>\r
+\r
+<!--(Body)==========================================================-->\r
+\r
+\r
+<body>\r
+\r
+<script type="text/javascript" language="javascript1.2">\r
+<!--\r
+if (window.gbWhTopic)\r
+{\r
+ if (window.addTocInfo)\r
+ {\r
+ addButton("show",BTN_TEXT,"Show","","","","",0,0,"","","");\r
+\r
+ }\r
+ if (window.writeBtnStyle)\r
+ writeBtnStyle();\r
+\r
+ if (window.writeIntopicBar)\r
+ writeIntopicBar(1);\r
+\r
+ if (window.setRelStartPage)\r
+ {\r
+ setRelStartPage("../kernel.html");\r
+\r
+ autoSync(0);\r
+ sendSyncInfo();\r
+ sendAveInfoOut();\r
+ }\r
+}\r
+else\r
+ document.location.reload();\r
+//-->\r
+</script>\r
+<h1 class="whs1"><span style="font-size: 24pt;"><font size=6 style="font-size:24pt;">Installing \r
+ SALOME platform </font></span></h1>\r
+\r
+\r
+<!--(HR)============================================================-->\r
+<hr align="center" class="whs2">\r
+\r
+\r
+<ul>\r
+ \r
+ <li class=kadov-p><p class="whs3"><a href="#install_from_script">Installing \r
+ products using install script directly</a></p></li>\r
+ \r
+ <li class=kadov-p><p class="whs3"><a href="#install_from_wizard">Installing \r
+ products using Installation Wizard</a></p></li>\r
+ \r
+ <li class=kadov-p><p class="whs3"><a href="#check_version_proc">Notes \r
+ on checking products version procedure</a></p></li>\r
+ \r
+ <li class=kadov-p><p class="whs3"><a href="#pick_up_env">Picking \r
+ up the environment</a></p></li>\r
+</ul>\r
+\r
+\r
+<!--(HR)============================================================-->\r
+<hr align="center" class="whs2">\r
+\r
+\r
+<h3 class="whs4"><a NAME=install_from_script></a>Installing \r
+ products using <tt><font style="color: #ff0000;"\r
+ color=#FF0000>install</font></tt> script directly</h3>\r
+\r
+<p class="whs5">To run installation using the install script, \r
+ type in the command line of a terminal window:</p>\r
+\r
+<p class="whs3"> </p>\r
+\r
+<p class="whs3"><tt style="font-family: monospace;">./install \r
+ [options] <target-directory> [ [ALL] | <product> ... <product> \r
+ ]</tt> </p>\r
+\r
+<p class="whs3"> </p>\r
+\r
+<p class="whs3">Available options are the following: </p>\r
+\r
+<p class="whs3"><tt style="font-family: monospace;">--binaries</tt> \r
+ is not an obligatory parameter. If you pass this parameter all products \r
+ will be extracted from the precompiled archives. Otherwise all products \r
+ will be installed and built from the sources using gnu make procedure. \r
+ <b><br>\r
+ </b></p>\r
+\r
+<p class="whs6"><img src="../note1.gif" x-maintain-ratio="TRUE" width="36px" height="38px" border="0" class="img_whs7"> Take into account that target platform for precompiled binaries \r
+ is Linux Red Hat 8.0. If you want to install SALOME onto another Linux \r
+ version, you should use <b><i>sources</i></b> installation mode. </p>\r
+\r
+<p class="whs3"> </p>\r
+\r
+<p class="whs3"><tt style="font-family: monospace;">--reinstall</tt> \r
+ is an optional parameter. Use this parameter if you want to reinstall \r
+ products you have already installed.</p>\r
+\r
+<p class="whs3"> </p>\r
+\r
+<p class="whs3"><tt style="font-family: monospace;">--update</tt> \r
+ is an optional parameter. Pass this parameter to the script if you want \r
+ your profile to be updated by the installation script. This option is \r
+ used only when <b>SALOME sources</b> and/or <b>SALOME binaries </b>are \r
+ installed. </p>\r
+\r
+<p class="whs3"> </p>\r
+\r
+<p class="whs3"><tt style="font-family: monospace;">--native</tt> \r
+ is optional parameter. This option states the way the installation procedure \r
+ picks up the environment for the products which are not currently installed. \r
+ When this option is used, the installation script first tries to find \r
+ and use native products. If necessary products are not found in /usr/bin \r
+ and /usr/lib directories, script looks for them in the target directory. \r
+ If the option is not used (default behaviour), the script first inspects \r
+ the target directory and the system folders. <br>\r
+For more detail information see <a href="#pick_up_env">here.</a> </p>\r
+\r
+<p class="whs3"> </p>\r
+\r
+<p class="whs3"><tt style="font-family: monospace;">--with-mesa</tt> \r
+ is also optional parameter. This parameter forces linking <b>VTK </b>and \r
+ <b>Qt</b> with <b>Mesa</b> library and is not taken into account if <b>Mesa \r
+ </b>library is not installed in the target directory. </p>\r
+\r
+<p class="whs3"> </p>\r
+\r
+<p class="whs3"><tt style="font-family: monospace;">--temp \r
+ </tt>is optional parameter, the directory path must follow it. This directory \r
+ is used for temporary files. By default script uses <b>/tmp </b>folder. \r
+ You can change this directory if you doesn't have sufficient amount of \r
+ disk space in the <b>/tmp</b> folder. <b><br>\r
+ </b></p>\r
+\r
+<p class="whs6"><img src="../note1.gif" x-maintain-ratio="TRUE" width="36px" height="38px" border="0" class="img_whs7"> The directory you point should exist and must be an absolute \r
+ path, otherwise installation script will fail. </p>\r
+\r
+<p class="whs3"> </p>\r
+\r
+<p class="whs3"><tt style="font-family: monospace;"><target-directory></tt> \r
+ is the only obligatory parameter and should be an absolute path. This \r
+ will be the root directory for installing products. </p>\r
+\r
+<p class="whs3"> </p>\r
+\r
+<p class="whs6"><img src="../note1.gif" x-maintain-ratio="TRUE" width="36px" height="38px" border="0" class="img_whs7"> This directory should exist. <tt><target-directory></tt> \r
+ and temp directory must not coincide to avoid collisions. </p>\r
+\r
+<p class="whs3"> </p>\r
+\r
+<p class="whs3"><tt style="font-family: monospace;"><product> \r
+ ... <product></tt> are the symbolic names of the installing products. \r
+ <br>\r
+Prerequisite products are <b>gcc tcl cas python numeric swig mesa qt qwt \r
+ sip pyqt hdf med omni vtk salomebin salomesources salomedoc</b> <br>\r
+Additional bonus products are <b>doxygen graphviz happydoc</b> </p>\r
+\r
+<p class="whs3">You can also use <tt>ALL</tt> parameter \r
+ to install all supplied products at once. </p>\r
+\r
+<p class="whs3"> </p>\r
+\r
+<p class="whs6"><img src="../note1.gif" x-maintain-ratio="TRUE" width="36px" height="38px" border="0" class="img_whs7"> If you want to use native products do not add them into the \r
+ script parameters. You should also use <tt>--native</tt> option in this \r
+ case. </p>\r
+\r
+<p class="whs3"> </p>\r
+\r
+<p class="whs3"><tt style="font-family: monospace;">--help</tt> \r
+ or <tt>-h</tt> key will print this information. </p>\r
+\r
+\r
+<!--(HR)============================================================-->\r
+<hr align="center" class="whs2">\r
+\r
+\r
+<h3 class="whs4"><a NAME=install_from_wizard></a>Installing \r
+ products using <font style="color: #ff0000;"\r
+ color=#FF0000>Installation Wizard</font></h3>\r
+\r
+<p class="whs8">Actually you can install \r
+ all necessary products with help of the install script. But it's not convenient \r
+ because you have to enter in the command line all parameters used by this \r
+ script in a strictly definite order. You are strongly recommended to use \r
+ Installation Wizard program. It represents a GUI superstructure over the \r
+ shell script. It helps you to install all products needed for SALOME platform, \r
+ avoiding the problem with parameters' order. </p>\r
+\r
+<p class="whs8"> </p>\r
+\r
+<p class="whs5">To run Installation Wizard, type in the command \r
+ line of the terminal</p>\r
+\r
+<p class="whs3"> </p>\r
+\r
+<p class="whs9"> <b>./runInstall.csh</b>. \r
+ </p>\r
+\r
+<p class="whs3"> </p>\r
+\r
+<p class="whs8">This software was built \r
+ with help of <b><i>Qt</i></b>. The wizard contains several pages. To navigate \r
+ between pages use <i>"Next"</i> and <i>"Back"</i> \r
+ buttons in the lower part of the wizard window. <i>"Cancel"</i> \r
+ button closes dialog window and quits the installation procedure. To invoke \r
+ this help information click <i>"Help"</i> button. </p>\r
+\r
+<p class="whs3">Skip the first <i>"<span style="font-weight: bold;"><B>Introduction</B></span>"</i> \r
+ page by pressing <i>"<span style="font-weight: bold;"><B>Next</B></span>"</i> \r
+ button. In the second page you have the possibility to select products \r
+ for installation (see <a href="#ProductPage">Fig.1</a> ). Each product \r
+ has several options of installation - it can be installed as precompiled \r
+ binaries, as sources or not installed at all. You can mark the products, \r
+ you want to install, by clicking the corresponding radiobuttons and checkboxes \r
+ in the list view in the left part of the page. Note that some products \r
+ can be installed only together with other products (or these products \r
+ should be already installed on your machine). So the installation procedure \r
+ has a special feature to automatically mark these products in the list \r
+ view. For example, in order to install <b><i>pyqt</i></b> it's necessary \r
+ to have <b><i>gcc, python</i></b>,<b><i> qt</i></b> and <b><i>sip</i></b> \r
+ installed. Therefore all these products will be marked when you check \r
+ on <b><i>pyqt</i></b>. This feature can be switched off by clicking <i>"<span \r
+ style="font-weight: bold;"><B>Auto set prerequisites products</B></span>"</i> \r
+ checkbox. <br>\r
+There are three special buttons in the right part of the page. If you want \r
+ to install all products as sources just click <i>"<span style="font-weight: bold;"><B>Select \r
+ Sources</B></span>"</i> button. This will also mark <b><i>SALOME docs</i></b>, \r
+ <b><i>SALOME sources</i></b> and <b><i>SALOME binaries</i></b> items. \r
+ You can mark all products (except <b><i>gcc</i></b> and <b><i>swig</i></b>, \r
+ see below) as binaries by clicking <i>"<span style="font-weight: bold;"><B>Select \r
+ Binaries (recommended)</B></span>"</i> button. This will mark <b><i>SALOME \r
+ docs</i></b>, <b><i>SALOME sources</i></b> and <b><i>SALOME binaries</i></b> \r
+ items too. <i>"<span style="font-weight: bold;"><B>Unselect All</B></span>"</i> \r
+ resets all products to <i>"not install"</i> state. </p>\r
+\r
+<p class="whs3"> </p>\r
+\r
+<p align="center" class="whs10"><img src="../productpage.png" width="638px" height="404px" border="0" class="img_whs11"> <br>\r
+<a NAME=ProductPage></a><b>Figure 1:</b> "Products to install" \r
+ page </p>\r
+\r
+<p align="center" class="whs10"> </p>\r
+\r
+<p class="whs3">The <i>"<span style="font-weight: bold;"><B>Total \r
+ disk space required:</B></span>"</i> field displays how much disk space \r
+ on the hard drive is required for installation of selected products. <br>\r
+Installation procedure uses a special directory for storing temporary files. \r
+ The <i>"<span style="font-weight: bold;"><B>Space for temporary files:</B></span>"</i> \r
+ field shows the information about required disk space on the hard drive \r
+ for extracting and compiling of the selected products. </p>\r
+\r
+ \r
+\r
+<p class="whs6"><b \r
+ style="font-weight: bold;"><img src="../note1.gif" x-maintain-ratio="TRUE" width="36px" height="38px" border="0" class="img_whs7"> </b>Please, take into account \r
+ that displayed amount of required disk space is approximate and may differ \r
+ when you install products on your hard drive. </p>\r
+\r
+<p class="whs3"> </p>\r
+\r
+<p class="whs3"> </p>\r
+\r
+<p class="whs6"><b \r
+ style="font-weight: bold;"><img src="../note1.gif" x-maintain-ratio="TRUE" width="36px" height="38px" border="0" class="img_whs7"> </b>Not all products can be installed \r
+ as precompiled binaries. <b><i>gcc</i></b> and <b><i>swig</i></b> must \r
+ be installed as sources and then compiled. Therefore when you try to install \r
+ all products as binaries by clicking <i>"Select Binaries (recommended)"</i> \r
+ button these two items will be marked as sources and you will get the \r
+ following <a href="#CantInstall">warning message box</a> </p>\r
+\r
+<p align="center" class="whs10"> </p>\r
+\r
+<p align="center" class="whs10"><img src="../cantinstall.png" width="481px" height="117px" border="0" class="img_whs12"> <br>\r
+<a NAME=CantInstall></a><b>Figure 2:</b> <b><i>gcc</i></b> and <b><i>swig</i></b> \r
+ warning message box </p>\r
+\r
+<p align="center" class="whs10"> </p>\r
+\r
+<p class="whs6"><b \r
+ style="font-weight: bold;"><img src="../note1.gif" x-maintain-ratio="TRUE" width="36px" height="38px" border="0" class="img_whs7"></b> Installation procedure has \r
+ the limitation concerning<b> </b>gcc 3.2 installation procedure. The known \r
+ bug of the gcc3.2 is impossibility to build it on the computer where gcc3.2 \r
+ is already installed. In this case build procedure fails. </p>\r
+\r
+<p class="whs3"> </p>\r
+\r
+<p class="whs3">To proceed installation click <i>"<span \r
+ style="font-weight: bold;"><B>Next</B></span>"</i> button. </p>\r
+\r
+<p class="whs3">In the second page you are proposed to \r
+ enter the target directory where all selected products will be installed \r
+ to (see <a href="#DirPage">Fig.3</a> ). You can also press <i>"<span \r
+ style="font-weight: bold;"><B>Browse</B></span>..."</i> button and choose \r
+ the folder for installation using standard <b><i>Qt</i></b> browse directory \r
+ dialog box. </p>\r
+\r
+<p class="whs3">As it was mentioned before, the shell script \r
+ uses a special directory for storing all temporary files. The <b>/tmp</b> \r
+ folder is used by default. You can change this default behaviour - just \r
+ type any folder or use the corresponding <i>"<span style="font-weight: bold;"><B>Browse...</B></span>"</i> \r
+ button. <b><br>\r
+ </b></p>\r
+\r
+<p class="whs3">The temporary folder field is disabled \r
+ when you are installing only binaries. </p>\r
+\r
+<p class="whs3"> </p>\r
+\r
+<p align="center" class="whs10"><img src="../dirpage.png" width="638px" height="404px" border="0" class="img_whs11"> <br>\r
+<a NAME=DirPage></a><b>Figure 3:</b> "Installation settings" \r
+ page </p>\r
+\r
+<p class="whs3"> </p>\r
+\r
+<p class="whs8">If the directory you \r
+ want to install products does not exist you will be prompted by message \r
+ box to confirm this directory creation. If you type wrong directory path, \r
+ or if you have no permission for the directory you use the corresponding \r
+ message box will raise. <br>\r
+The installation procedure also checks available disk space on the selected \r
+ directories according to the products selected. If there is no enough \r
+ disk space on your hard drive you will also see the corresponding error \r
+ message box. </p>\r
+\r
+<p class="whs8">Unfortunately, the configure \r
+ procedure has a very annoying bug under Linux platform. The directory \r
+ should be obligatory entered without spaces. For example, the configure \r
+ procedure for <b><i>gcc</i></b> won't work if you pass the following parameter: \r
+ <i>--prefix="/New Folder 1"</i>. <b>Therefore you are strongly \r
+ recommended not to use directory names containing spaces.</b> </p>\r
+\r
+<p class="whs3">In case if you have some products already \r
+ installed on your machine it will be very convenient not to install these \r
+ products again, because repeated compiling can take a lot of time. We \r
+ have added checking of installed products in the installation shell script \r
+ in order to decrease time for installing of products. But it can lead \r
+ to some troubles. For example, the shell script can successfully check \r
+ <b><i>Qt</i></b> (check <b>QTDIR</b> and find libqt-mt.so.3.0.5) but some \r
+ files can be corrupted or non-existent (e.g. some header files have been \r
+ accidentally removed ). For such cases in the shell script there is a \r
+ possibility to reinstall these corrupted products. For that purpose you \r
+ have to check <i>"<span style="font-weight: bold;"><B>Reinstall products \r
+ you have already installed (recommended)?</B></span>"</i> option on this \r
+ page. You are recommended to use <i>"<span style="font-weight: bold;"><B>No</B></span>"</i> \r
+ switch only if this Installation Wizard program has been used before. \r
+ </p>\r
+\r
+<p class="whs3">For more detailed information about checking \r
+ products version procedure see <a href="#check_version_proc">here</a>. \r
+ </p>\r
+\r
+<p class="whs8"><a name=profile></a>The \r
+ shell script creates special files: <b>.salomecsh</b> and <b>.salomesh</b> \r
+ in the <b><i>SALOME sources</i></b> and <b><i>SALOME binaries</i></b> \r
+ root directories. You have a possibility to add one of them into your \r
+ profile. Just check <i>"<span style="font-weight: bold;"><B>Do you want \r
+ to update your profile?</B></span>" </i>option In this case your \r
+ environment will always point to the newly installed products. </p>\r
+\r
+<p class="whs8">Check <i>"<span \r
+ style="font-weight: bold;"><B>Use Mesa library</B></span>"</i> option if \r
+ you want to install/build Vtk and Qt (OpenGL support) to be linked to \r
+ preinstalled Mesa library. You should have Mesa drivers installed on the \r
+ target directory or somewhere else, but in the last case you have to set \r
+ MESA_HOME environment variable. Or you should choose Mesa 3.4.2 product \r
+ to be installed also. Otherwise Vtk/Qt without Mesa support will be installed. \r
+ </p>\r
+\r
+<p class="whs8">If you want to use native \r
+ Linus Red Hat 8.0 products (these are gcc, tcl, Python, Qt, Sip and PyQt) \r
+ do not mark these products in the <i>"<span style="font-weight: bold;"><B>Products \r
+ to install</B></span>"</i> page and check <i>"<span style="font-weight: bold;"><B>Prefer \r
+ native products</B></span>" </i>option. See <a href="#pick_up_env">Pick \r
+ up the environment</a> section for more detail information. </p>\r
+\r
+<p class="whs3">To proceed further click <i>"<span \r
+ style="font-weight: bold;"><B>Next</B></span>"</i> button (see <a href="#ChoicePage">Fig.4</a>). \r
+ </p>\r
+\r
+<p class="whs3"> </p>\r
+\r
+<p align="center" class="whs10"><img src="../choicepage.png" width="638px" height="404px" border="0" class="img_whs11"> <br>\r
+<a NAME=ChoicePage></a><b>Figure 4:</b> "Check your choice" page \r
+ </p>\r
+\r
+<p align="center" class="whs10"> </p>\r
+\r
+<p class="whs3">This page summarizes the installation settings \r
+ you've made on the previous pages. You can check again the settings and \r
+ change them if necessary. <br>\r
+When you are sure that everything is OK, press <i>"<span style="font-weight: bold;"><B>Next</B></span>"</i> \r
+ button to follow to the <a href="#ProgressPage">next page</a>. </p>\r
+\r
+<p class="whs3"> </p>\r
+\r
+<p align="center" class="whs10"><img src="../progresspage.png" width="638px" height="404px" border="0" class="img_whs11"> <br>\r
+<a NAME=ProgressPage></a><b>Figure 5:</b> "Installation progress" \r
+ page </p>\r
+\r
+<p class="whs3"> </p>\r
+\r
+<p class="whs3">To start installation of the selected products \r
+ click <i>"<span style="font-weight: bold;"><B>Start</B></span>"</i> \r
+ button. It launches the shell installation script and you will be able \r
+ to see the output of the script in the topmost dialog's frame. In case \r
+ of any installation problems (for example, you have accidentally removed \r
+ the temporary directory) the script will ask you: <i>"<span style="font-weight: bold;"><B>Would \r
+ you like to continue : (Y,N) ?</B></span>"</i>. You can answer this question \r
+ by typing [Y] or [N] in the middle text edit control frame. <b><span style="font-weight: normal;"><br>\r
+P</span></b>ress [Enter] when you finish typing data. </p>\r
+\r
+<p class="whs3">The <i>"<span style="font-weight: bold;"><B>Installation \r
+ Status</B></span>"</i> frame window shows you the progress of installation. \r
+ It contains a list of all selected products with brief descriptions. "<font \r
+ style="color: #ff0000;"\r
+ color=#FF0000>Waiting</font>" description means that installation \r
+ of this product have not started yet. Currently installing product is \r
+ marked as "<font style="color: #FF9900;"\r
+ color=#FF9900>Processing</font>". All installed \r
+ products have "<font style="color: #33FF33;"\r
+ color=#33FF33>Completed</font>" description. \r
+ </p>\r
+\r
+<p class="whs3">You can abort installation and close the \r
+ installation procedure using <i>"Cancel"</i> button. It sends \r
+ the signal "SIGTERM" to the shell script. The script has a signal \r
+ handler and will try to clear all temporary files. The process of removing \r
+ temporary files can take some time, so the installation wizard will wait \r
+ 3 seconds before closing. </p>\r
+\r
+<p class="whs3">At the end of installation (all selected \r
+ products have been installed successfully) you can go back to the previous \r
+ pages to start a new installation or click <i>"Finish"</i> button \r
+ to close the installation wizard. </p>\r
+\r
+\r
+<!--(HR)============================================================-->\r
+<hr align="center" class="whs2">\r
+\r
+\r
+<h3 class="whs4"><a NAME=check_version_proc></a>Notes on<font \r
+ style="color: #ff0000;"\r
+ color=#FF0000> checking products version</font> procedure</h3>\r
+\r
+<p>Unfortunately under Linux platform there is no exact algorithm to identify \r
+ the product's version. The table below contains the information relating \r
+ to checking preinstalled products. <br>\r
+ </p>\r
+\r
+<!--(Table)=========================================================-->\r
+<div align=left><table NOSAVE x-use-null-cells width="100%" border="4" class="whs13">\r
+\r
+<tr NOSAVE>\r
+<th NOSAVE bgcolor="#C0C0C0" class="whs14"><font style="font-size: medium;"\r
+ size=4>Product</font> </th>\r
+<th NOSAVE bgcolor="#C0C0C0" class="whs14"><font style="font-size: medium;"\r
+ size=4>Algorithm of checking</font> </th>\r
+<th NOSAVE bgcolor="#C0C0C0" class="whs14"><font style="font-size: medium;"\r
+ size=4>Preliminary steps before launching</font> \r
+ <font style="font-size: medium;"\r
+ size=4><br>\r
+of installation procedure</font> </th>\r
+<th NOSAVE bgcolor="#C0C0C0" class="whs14"><font style="font-size: medium;"\r
+ size=4>Notes</font> </th></tr>\r
+\r
+<tr>\r
+<td bgcolor="#E4E4E4" class="whs15">\r
+<p class="whs3">gcc 3.2</td>\r
+<td>ver=`/usr/bin/gcc --version | grep 'gcc (GCC) .*' | cut -b 11-13`</td>\r
+<td>- </td>\r
+<td>ver should be equal 3.2 <br>\r
+It is recommended to use native gcc on Linux RedHat 8.0</td></tr>\r
+\r
+<tr NOSAVE>\r
+<td bgcolor="#E4E4E4" class="whs15">\r
+<p class="whs3">tcl 8.3</td>\r
+<td NOSAVE>existence of TCLHOME <br>\r
+existence of tclsh8.3 <br>\r
+existence of wish8.3 <br>\r
+existence of libtcl8.3.so <br>\r
+existence of libtk8.3.so <br>\r
+existence of libtclx8.3.so <br>\r
+existence of libtkx8.3.so</td>\r
+<td>set TCLHOME if you have preinstalled version of tcl. <br>\r
+set LD_LIBRARY_PATH on a directory where libs can be found.</td>\r
+<td>It is recommended to use native tcl on Linux RedHat 8.0</td></tr>\r
+\r
+<tr>\r
+<td bgcolor="#E4E4E4" class="whs15">\r
+<p class="whs3">Cascade 4.0</td>\r
+<td>existence of CASROOT environment variable</td>\r
+<td>set CASROOT if you have preinstalled version of CASCADE</td>\r
+<td>Unfortunately we can't say anything exactly about CASCADE 4.0 and we \r
+ only check CASROOT environment variable. If you have problem with preinstalled \r
+ version of CASCADE reinstall it</td></tr>\r
+\r
+<tr>\r
+<td bgcolor="#E4E4E4" class="whs15">\r
+<p class="whs3">Python 2.2.1</td>\r
+<td>existense of PYTHONHOME <br>\r
+isPython=`which python` <br>\r
+ver=`python -V`</td>\r
+<td>set PYTHONHOME to root Python folder <br>\r
+set PATH on a directory where python can be found</td>\r
+<td>Python should exist and ver should be equal to 2.2.1 <br>\r
+It is recommended to use native Python on Linux RedHat 8.0</td></tr>\r
+\r
+<tr>\r
+<td bgcolor="#E4E4E4" class="whs15">\r
+<p class="whs3">Mesa 3.4.2</td>\r
+<td>existence of libGL.so.1.2.030402</td>\r
+<td>set LD_LIBRARY_PATH on a directory where libGL.so.1.2.030402 can be \r
+ found</td>\r
+<td>You have a possibility to build products (vtk & qt) with Mesa drivers \r
+ from the package supplied with this installation procedure or to use OpenGL \r
+ drivers installed on your computer locally. This check procedure concerns \r
+ only supplied Mesa driver.</td></tr>\r
+\r
+<tr>\r
+<td bgcolor="#E4E4E4" class="whs15">\r
+<p class="whs3">Swig 1.3.17</td>\r
+<td>isSwig=`which swig` <br>\r
+ver=`swig -version` <br>\r
+ver=`echo $ver | awk '{print $3}'`</td>\r
+<td>set PATH on a directory where swig can be found</td>\r
+<td>Swig should exist and ver should be equal to 1.3.17</td></tr>\r
+\r
+<tr>\r
+<td bgcolor="#E4E4E4" class="whs15">\r
+<p class="whs3">Qt 3.0.5</td>\r
+<td>existence of QTDIR <br>\r
+existence of libqt-mt.so.3.0.5</td>\r
+<td>set QTDIR if you have preinstalled version of qt</td>\r
+<td>We try to find libqt-mt.so.3.0.5 in ${QTDIR}/lib folder. <br>\r
+You should set MESA_HOME only if you have preinstalled version of Mesa \r
+ 3.4.2. <br>\r
+It is recommended to use native Qt on Linux RedHat 8.0</td></tr>\r
+\r
+<tr>\r
+<td bgcolor="#E4E4E4" class="whs15">\r
+<p class="whs3">Qwt 0.4.1</td>\r
+<td>existence of QWTHOME <br>\r
+existence of libqwt.so.0.4.1</td>\r
+<td>set QWTHOME if you have preinstalled version of qwt</td>\r
+<td>We try to find libqwt.so.0.4.1 in the ${QWTHOME}/lib folder. </td></tr>\r
+\r
+<tr>\r
+<td bgcolor="#E4E4E4" class="whs15">\r
+<p class="whs3">Hdf 5-1.4.4</td>\r
+<td>existence of HDF5HOME <br>\r
+existence of libhdf5.so.0.0.0 <br>\r
+existence of libhdf5.settings</td>\r
+<td>set HDF5HOME if you have preinstalled version of hdf</td>\r
+<td>We try to find libhdf5.so.0.0.0 and libhdf5.settings in ${HDF5HOME}/lib \r
+ folder. <br>\r
+File libhdf5.settings should contain the following entry: <br>\r
+HDF5 Version: 1.4.4</td></tr>\r
+\r
+<tr>\r
+<td bgcolor="#E4E4E4" class="whs15">\r
+<p class="whs3">Med 2.1.6</td>\r
+<td>existence of MED2HOME <br>\r
+existence of libmed.so.0.0.0</td>\r
+<td>set MED2HOME if you have preinstalled version of med</td>\r
+<td>Unfortunately we can't check version number. <br>\r
+We try to find libmed.so.0.0.0 in ${MED2HOME}/lib folder. <br>\r
+If you have problem with preinstalled version of med reinstall it.</td></tr>\r
+\r
+<tr>\r
+<td bgcolor="#E4E4E4" class="whs15">\r
+<p class="whs3">Vtk 4.2</td>\r
+<td>existence of VTKHOME <br>\r
+existence of libvtkCommon.so</td>\r
+<td>set VTKHOME if you have preinstalled version of vtk</td>\r
+<td>Unfortunately we can't check the version number. <br>\r
+We try to find libvtkCommon.so in ${VTKHOME}/lib/vtk folder. <br>\r
+If you have problem with preinstalled version of vtk reinstall it.</td></tr>\r
+\r
+<tr>\r
+<td bgcolor="#E4E4E4" class="whs15">\r
+<p class="whs3">OmniORB 3.0.5, <br>\r
+OmniORBpy 1.5, <br>\r
+OmniNotify 1.2</td>\r
+<td>existence of OMNIORBDIR <br>\r
+existence of libomniORB3.so.0.5 <br>\r
+existence of _omnipymodule.so.0.5 <br>\r
+existence of libCOSNotify3.so.0.5 <br>\r
+existence of notifd <br>\r
+existence of THIS_IS_omniORB_3_0_5 <br>\r
+existence of THIS_IS_omniNotify_1_2 <br>\r
+existence of THIS_IS_OMNIORBPY_1_5</td>\r
+<td>set OMNIORBDIR if you have preinstalled version of omni</td>\r
+<td>We try to find libomniORB3.so.0.5, _omnipymodule.so.0.5 and libCOSNotify3.so.0.5 \r
+ in ${OMNIORBDIR}/lib/i586_linux_2.0_glibc2.1 folder. <br>\r
+We try to find notifd in ${OMNIORBDIR}/bin/i586_linux_2.0_glibc2.1 folder. \r
+ <br>\r
+Additional checking - omni add special files THIS_IS_... <br>\r
+We try to find THIS_IS_omniORB_3_0_5 in ${OMNIORBDIR} folder. <br>\r
+We try to find THIS_IS_omniNotify_1_2 in ${OMNIORBDIR}/src/services/omniNotify. \r
+ <br>\r
+We try to find THIS_IS_OMNIORBPY_1_5 in ${OMNIORBDIR}/src/lib/omniORBpy \r
+ folder.</td></tr>\r
+\r
+<tr>\r
+<td bgcolor="#E4E4E4" class="whs15">\r
+<p class="whs3">Numeric 22.0</td>\r
+<td>existence of Numeric folder <br>\r
+existence of _numpy.so</td>\r
+<td>set PYTHONHOME if you have preinstalled version of python</td>\r
+<td>Unfortunately we can't check the version number. <br>\r
+We try to find Numeric folder in ${PYTHONHOME}/lib/python2.2/site-packages/Numeric \r
+ folder. <br>\r
+If you have problem with preinstalled version of numeric 22.0 reinstall \r
+ it.</td></tr>\r
+\r
+<tr>\r
+<td bgcolor="#E4E4E4" class="whs15">\r
+<p class="whs3">Sip 3.3.2</td>\r
+<td>existence of SIPDIR <br>\r
+existence of sip <br>\r
+existence of libsip.so.9.1.0</td>\r
+<td>set SIPDIR to directory where you have sip preinstalled</td>\r
+<td>We try to find sip and libsip.so.9.1.0 in $SIPDIR folder if you set \r
+ SIPDIR , otherwise searching is done using $PATH and $LD_LIBRARY_PATH \r
+ accordingly. <br>\r
+It is recommended to use native Sip on Linux RedHat 8.0</td></tr>\r
+\r
+<tr>\r
+<td bgcolor="#E4E4E4" class="whs15">\r
+<p class="whs3">PyQt 3.3.2</td>\r
+<td>existence of PYQTDIR <br>\r
+existence of libqtxmlcmodule.so.1.0.0</td>\r
+<td>set PYQTDIR to directory where you have sip preinstalled</td>\r
+<td>Unfortunately we can't check the version number. <br>\r
+We try to find libqtxmlcmodule.so.1.0.0 in $PYQTDIR folder if you set PYQTDIR, \r
+ otherwise searching is done using $LD_LIBRARY_PATH . <br>\r
+If you have problem with preinstalled version of PyQt 3.3.2 reinstall it. \r
+ <br>\r
+It is recommended to use native PyQt on Linux RedHat 8.0</td></tr>\r
+\r
+<tr>\r
+<td bgcolor="#E4E4E4" class="whs15">\r
+<p class="whs3">HappyDoc 2.1</td>\r
+<td>existence of happydoc <br>\r
+ver=`happydoc | grep "HappyDoc version 2.1"`</td>\r
+<td>set PYTHONHOME if you have preinstalled version of python</td>\r
+<td>We try to find happydoc in $PYTHONHOME/bin folder. <br>\r
+ver should not be empty. <br>\r
+This product is not obligatory. It was added only for your comfort.</td></tr>\r
+\r
+<tr>\r
+<td bgcolor="#E4E4E4" class="whs15">\r
+<p class="whs3">Doxygen 1.3-rc2</td>\r
+<td>existence of doxygen <br>\r
+existence of doxysearch <br>\r
+existence of doxytag <br>\r
+existence of doxywizard</td>\r
+<td>set QTDIR if you have preinstalled version of qt <br>\r
+set PATH on a directory where doxygen, doxysearch, doxytag and doxywizard \r
+ can be found</td>\r
+<td>Unfortunately we can't check the version number. <br>\r
+It's necessary to have compiled Qt in order to build doxywizard. <br>\r
+If you have problem with preinstalled version of doxygen 1.3-rc2 reinstall \r
+ it. <br>\r
+This product is not obligatory. It was added only for your comfort.</td></tr>\r
+\r
+<tr>\r
+<td bgcolor="#E4E4E4" class="whs15">\r
+<p class="whs3">Graphviz 1.9</td>\r
+<td>existance of dot</td>\r
+<td>add GraphViz's bin directory to the PATH environment variable</td>\r
+<td>Unfortunately we can't check the version number. <br>\r
+We try to find dot program in the $PATH</td></tr>\r
+\r
+<tr>\r
+<td bgcolor="#E4E4E4" class="whs15">\r
+<p class="whs3">SALOME binaries</td>\r
+<td>existence of SALOME_ROOT_DIR <br>\r
+existence of VERSION file <br>\r
+ver=`cat $SALOME_ROOT_DIR/bin/VERSION | awk -F: '{print $2}' | tr -d '[:space:]'`</td>\r
+<td>set SALOME_ROOT_DIR if you have preinstalled binaries of SALOME version \r
+ 1.2</td>\r
+<td>SALOME binaries should exist and ver should be equal to 1.2</td></tr>\r
+\r
+<tr>\r
+<td bgcolor="#E4E4E4" class="whs15">\r
+<p class="whs3">SALOME sources</td>\r
+<td>existence of SALOMEPRO_SRC <br>\r
+existence of VERSION file <br>\r
+ver=`cat $SALOMEPRO_SRC/bin/VERSION | awk -F: '{print $2}' | tr -d '[:space:]'`</td>\r
+<td>set SALOMEPRO_SRC if you have preinstalled sources of SALOME version \r
+ 1.2</td>\r
+<td>SALOME sources should exist and ver should be equal to 1.2</td></tr>\r
+</table>\r
+</div><p class="whs3"> </p>\r
+\r
+<p class="whs6"><img src="../note1.gif" x-maintain-ratio="TRUE" width="36px" height="38px" border="0" class="img_whs7">: For native products installation procedure sets proper environment \r
+ variables itself, and you do not need to set such variables like, e.g. \r
+ <b>TCLHOME</b> or <b>PYTHONHOME</b>. But if you have native products installed \r
+ to different from default directories (not <b>/usr/bin</b>, <b>/usr/lib</b>), \r
+ it is recommended to follow above description. </p>\r
+\r
+\r
+<!--(HR)============================================================-->\r
+<hr align="center" class="whs2">\r
+\r
+\r
+<h3 class="whs4"><a NAME=pick_up_env></a>Picking up the \r
+ <font style="color: #ff0000;"\r
+ color=#FF0000>environment</font></h3>\r
+\r
+<p class="whs8">Please, read carefully \r
+ the following information. This section describes how the installation \r
+ procedure collects environment. </p>\r
+\r
+<p class="whs8">After installing each \r
+ product shell script creates in the product root folder special environment \r
+ file with the name of the product but beginning from the dot, which includes \r
+ all necessary product settings. For example for VTK-4.2 the file is<b> \r
+ .VTK-4.2</b>. These files allows to pick up all environment settings which \r
+ are necessary to build and launch SALOME. When you install SALOME sources \r
+ and/or binaries, installation procedure looks through the target directory \r
+ to pick up all the settings files and creates two scripts: <b>.salomesh</b> \r
+ and <b>.salomecsh </b>for sh and csh correspondingly. Such approach helps \r
+ to save time when reinstalling products and you may not to care about \r
+ setting all environment variables manually. What you need is just to use \r
+ one of these scripts. You even may not to add this script in your profile. \r
+ Installation Wizard will do it for you if corresponding option is enabled \r
+ (<i>"Do you want to update your profile?"</i> check box for \r
+ Install Wizard and <tt>--update</tt> option for the script). </p>\r
+\r
+<p class="whs3">It also concerns those products, which \r
+ are not currently installed. For example, you install some SALOME binaries \r
+ to the directory where you have previously installed other products. \r
+ Installation procedure still tries to collect environment files from the \r
+ target directory if it finds the necessary products there. If some product \r
+ is not found in the target directory the corresponding section of .salomesh/.salomecsh \r
+ files will be skipped. However for native products (<b><i>gcc, tcl, \r
+ python, qt, sip, pyqt)</i></b> instal script also tries to find them in \r
+ the system directories. The corresponding section of <b>.salome*</b> files \r
+ will contain special description, for example <i>"#------ native \r
+ gcc is used ------"</i>. </p>\r
+\r
+<p class="whs3">You should take into account such behaviour \r
+ of the installation procedure. Install script doesn't know itself which \r
+ version of the product you want to use - native or preinstalled. You have \r
+ possibility to change the order of searching the products by using special \r
+ key: <i>"Prefer native products"</i> option for Wizard and <tt>--native</tt> \r
+ key for the install script. In this case installation procedure will try \r
+ to find products FIRST in your system folders and THEN in the target directory. \r
+ </p>\r
+\r
+<p class="whs3">Please, again bear in mind that described \r
+ above concerns only those products WHICH ARE NOT CURRENTLY INSTALLED. \r
+ </p>\r
+\r
+<p class="whs3">In any case you may edit <b>.salome*</b> \r
+ files after installation procedure finishes. </p>\r
+\r
+\r
+<!--(HR)============================================================-->\r
+<hr align="center" class="whs2">\r
+\r
+\r
+<p class="whs3"> </p>\r
+\r
+<p class="whs3"> </p>\r
+\r
+<p> </p>\r
+\r
+<p class="whs16">\r
+<a href="javascript:void(0);" onClick="var e; if (parseInt(navigator.appVersion)>=4){e=event;} if (parseInt(navigator.appVersion) >=2 && typeof(PopupMenu_Invoke) == 'function') PopupMenu_Invoke(e,'','About SALOME PRO architecture','about_salome_pro_architecture.htm','Introduction to SALOME PRO','introduction_to_salome_pro.htm','Running SALOME PRO','running_salome_pro.htm');return false;" title="Related Topics"><img src="../ss_btn_related_topics.gif" border=0 height=17 width=82 alt="Related Topics"></a></p>\r
+\r
+<p class="whs16"> </p>\r
+\r
+<p class="whs16"> </p>\r
+\r
+<p class="whs16"> </p>\r
+\r
+<p class="whs16"> </p>\r
+\r
+<p class="whs17"> </p>\r
+\r
+<script type="text/javascript" language="JavaScript" title="WebHelpRelatedTopics"><!--\r
+if (parseInt(navigator.appVersion) >= 3 && typeof (WritePopupMenuLayer) == "function")\r
+ WritePopupMenuLayer();\r
+//--></script><script type="text/javascript" language="javascript1.2">\r
+<!--\r
+if (window.writeIntopicBar)\r
+ writeIntopicBar(0);\r
+//-->\r
+</script>\r
+</body>\r
+\r
+</html>\r
--- /dev/null
+<!doctype HTML public "-//W3C//DTD HTML 4.0 Frameset//EN">\r
+\r
+<html>\r
+\r
+<!--(==============================================================)-->\r
+<!--(Document created with RoboEditor. )============================-->\r
+<!--(==============================================================)-->\r
+\r
+<head>\r
+\r
+<title>Introduction</title>\r
+\r
+<!--(Meta)==========================================================-->\r
+\r
+<meta http-equiv=content-type content="text/html; charset=windows-1252">\r
+<meta name=generator content="RoboHELP by eHelp Corporation - www.ehelp.com">\r
+<meta name=generator-major-version content=0.1>\r
+<meta name=generator-minor-version content=1>\r
+<meta name=filetype content=kadov>\r
+<meta name=filetype-version content=1>\r
+<meta name=page-count content=1>\r
+<meta name=layout-height content=780>\r
+<meta name=layout-width content=800>\r
+\r
+\r
+<!--(Links)=========================================================-->\r
+\r
+ <link rel='stylesheet' href='../default_ns.css'>\r
+<script type="text/javascript" language="JavaScript" title="WebHelpSplitCss">\r
+<!--\r
+if (navigator.appName !="Netscape")\r
+{ document.write("<link rel='stylesheet' href='../default.css'>");}\r
+//-->\r
+</script>\r
+<style type="text/css">\r
+<!--\r
+h1.whs1 {font-family: 'Times New Roman', serif;}\r
+img_whs2 {border-style: none; width: 765px; height: 280px; border-left-style: None; border-right-style: None; border-top-style: None; border-bottom-style: None; float: none;}\r
+h1.whs3 {text-align: justify;}\r
+p.whs4 {font-family: 'Times New Roman', serif; text-align: justify; text-indent: 48px;}\r
+p.whs5 {font-family: 'Times New Roman', serif; text-align: justify;}\r
+p.whs6 {font-family: 'Times New Roman', serif; font-weight: bold; text-align: justify;}\r
+ul.whs7 {list-style: disc;}\r
+-->\r
+</style>\r
+<script type="text/javascript" language="JavaScript" title="WebHelpInlineScript">\r
+<!--\r
+function reDo() {\r
+ if (innerWidth != origWidth || innerHeight != origHeight)\r
+ location.reload();\r
+}\r
+if ((parseInt(navigator.appVersion) == 4) && (navigator.appName == "Netscape")) {\r
+ origWidth = innerWidth;\r
+ origHeight = innerHeight;\r
+ onresize = reDo;\r
+}\r
+onerror = null; \r
+//-->\r
+</script>\r
+<style type="text/css">\r
+<!--\r
+ div.WebHelpPopupMenu {position:absolute; left:0px; top:0px; z-index:4; visibility:hidden;}\r
+-->\r
+</style>\r
+<script type="text/javascript" language="javascript1.2" src="../whmsg.js"></script>\r
+<script type="text/javascript" language="javascript" src="../whver.js"></script>\r
+<script type="text/javascript" language="javascript1.2" src="../whproxy.js"></script>\r
+<script type="text/javascript" language="javascript1.2" src="../whutils.js"></script>\r
+<script type="text/javascript" language="javascript1.2" src="../whtopic.js"></script>\r
+</head>\r
+\r
+<!--(Body)==========================================================-->\r
+\r
+\r
+<body>\r
+\r
+<script type="text/javascript" language="javascript1.2">\r
+<!--\r
+if (window.gbWhTopic)\r
+{\r
+ if (window.addTocInfo)\r
+ {\r
+ addTocInfo("Welcome to SALOME");\r
+addButton("show",BTN_TEXT,"Show","","","","",0,0,"","","");\r
+\r
+ }\r
+ if (window.writeBtnStyle)\r
+ writeBtnStyle();\r
+\r
+ if (window.writeIntopicBar)\r
+ writeIntopicBar(1);\r
+\r
+ if (window.setRelStartPage)\r
+ {\r
+ setRelStartPage("../kernel.html");\r
+\r
+ autoSync(0);\r
+ sendSyncInfo();\r
+ sendAveInfoOut();\r
+ }\r
+}\r
+else\r
+ document.location.reload();\r
+//-->\r
+</script>\r
+<h1 class="whs1"> <span \r
+ style="margin-right: -37px;"> <img src="../pics/application-splash.jpg" x-maintain-ratio="TRUE" width="765px" height="280px" border="0" class="img_whs2"></span></h1>\r
+\r
+<h1 class="whs3"><span style="font-family: 'Times New Roman', serif;">Introduction</span></h1>\r
+\r
+<p class="whs4">Welcome to SALOME software application! \r
+ Modern technological products (cars, structures, electrical or electronic \r
+ equipment) are getting with every year more and more complex and must \r
+ meet increasingly severe requirements in terms of quality and performance. \r
+ For example, for structures and their environment the demands to reduce \r
+ risks and optimize costs are extremely high. It requires particularly \r
+ refined simulations concerning structural behavior and robustness to ensure \r
+ high reliability.</p>\r
+\r
+<p class="whs5">The \r
+ numeric modeling of a physical problem, the development of solutions and \r
+ their integration into the design process are often handled in very specific \r
+ environments. SALOME represents a generic CAD-based application for digital \r
+ simulation with "high reactivity to market evolutions and customer \r
+ expectations". </p>\r
+\r
+<p class="whs5"> </p>\r
+\r
+<p class="whs6">SALOME:</p>\r
+\r
+<ul type="disc" class="whs7">\r
+ \r
+ <li class=kadov-p><p class="whs5"> eases \r
+ the inter-operability between CAD and Computation code (CAD-Computation \r
+ link)</p></li>\r
+ \r
+ <li class=kadov-p><p class="whs5"> eases \r
+ the coupling between computation codes, and the reuse of portions of code</p></li>\r
+ \r
+ <li class=kadov-p><p class="whs5"> provides \r
+ a generic, user-friendly and efficient user interface which contributes \r
+ to cost and development time <span style="font-family: 'Times New Roman', serif; text-align: justify;">reduction</span></p></li>\r
+ \r
+ <li class=kadov-p><p class="whs5"> shares \r
+ the creation of non critical developments (pre and post processors) in \r
+ the domain of numeric <span style="font-family: 'Times New Roman', serif; text-align: justify;">simulation</span></p></li>\r
+ \r
+ <li class=kadov-p><p class="whs5"> contributes \r
+ to the perpetuity of internal developments of industry</p></li>\r
+ \r
+ <li class=kadov-p><p class="whs5"> reduces \r
+ training costs to the time specifically spent in understanding the software \r
+ solution derived from the <span style="font-family: 'Times New Roman', serif; text-align: justify;">platform.</span></p></li>\r
+</ul>\r
+\r
+<script type="text/javascript" language="javascript1.2">\r
+<!--\r
+if (window.writeIntopicBar)\r
+ writeIntopicBar(0);\r
+//-->\r
+</script>\r
+</body>\r
+\r
+</html>\r
--- /dev/null
+<!doctype HTML public "-//W3C//DTD HTML 4.0 Frameset//EN">\r
+\r
+<html>\r
+\r
+<!--(==============================================================)-->\r
+<!--(Document created with RoboEditor. )============================-->\r
+<!--(==============================================================)-->\r
+\r
+<head>\r
+\r
+<title>Introduction to IAPP</title>\r
+\r
+<!--(Meta)==========================================================-->\r
+\r
+<meta http-equiv=content-type content="text/html; charset=windows-1252">\r
+<meta name=generator content="RoboHELP by eHelp Corporation - www.ehelp.com">\r
+<meta name=generator-major-version content=0.1>\r
+<meta name=generator-minor-version content=1>\r
+<meta name=filetype content=kadov>\r
+<meta name=filetype-version content=1>\r
+<meta name=page-count content=1>\r
+<meta name=layout-height content=603>\r
+<meta name=layout-width content=700>\r
+\r
+\r
+<!--(Links)=========================================================-->\r
+\r
+ <link rel='stylesheet' href='../default_ns.css'>\r
+<script type="text/javascript" language="JavaScript" title="WebHelpSplitCss">\r
+<!--\r
+if (navigator.appName !="Netscape")\r
+{ document.write("<link rel='stylesheet' href='../default.css'>");}\r
+//-->\r
+</script>\r
+<style type="text/css">\r
+<!--\r
+h1.whs1 {font-family: 'Times New Roman', serif;}\r
+p.whs2 {font-family: 'Times New Roman', serif;}\r
+ul.whs3 {list-style: disc;}\r
+p.whs4 {font-family: 'Times New Roman', serif; margin-left: 40px;}\r
+p.whs5 {margin-left: 40px; font-family: 'Times New Roman', serif;}\r
+p.whs6 {font-family: 'Times New Roman', serif; margin-left: 120px;}\r
+p.whs7 {font-family: 'Times New Roman', serif; margin-left: 0px;}\r
+-->\r
+</style>\r
+<script type="text/javascript" language="JavaScript">\r
+<!--\r
+if ((navigator.appName == "Netscape") && (parseInt(navigator.appVersion) == 4))\r
+{\r
+ var strNSS = "<style type='text/css'>";\r
+ strNSS += "p.whs7 {margin-left:1; }";\r
+ strNSS +="</style>";\r
+ document.write(strNSS);\r
+}\r
+//-->\r
+</script>\r
+<script type="text/javascript" language="JavaScript" title="BSSC Special Effects" src="../ehlpdhtm.js"></script><script type="text/javascript" language="JavaScript" title="WebHelpInlineScript">\r
+<!--\r
+function reDo() {\r
+ if (innerWidth != origWidth || innerHeight != origHeight)\r
+ location.reload();\r
+}\r
+if ((parseInt(navigator.appVersion) == 4) && (navigator.appName == "Netscape")) {\r
+ origWidth = innerWidth;\r
+ origHeight = innerHeight;\r
+ onresize = reDo;\r
+}\r
+onerror = null; \r
+//-->\r
+</script>\r
+<style type="text/css">\r
+<!--\r
+ div.WebHelpPopupMenu {position:absolute; left:0px; top:0px; z-index:4; visibility:hidden;}\r
+-->\r
+</style>\r
+<script type="text/javascript" language="javascript1.2" src="../whmsg.js"></script>\r
+<script type="text/javascript" language="javascript" src="../whver.js"></script>\r
+<script type="text/javascript" language="javascript1.2" src="../whproxy.js"></script>\r
+<script type="text/javascript" language="javascript1.2" src="../whutils.js"></script>\r
+<script type="text/javascript" language="javascript1.2" src="../whtopic.js"></script>\r
+</head>\r
+\r
+<!--(Body)==========================================================-->\r
+\r
+\r
+<body>\r
+\r
+<script type="text/javascript" language="javascript1.2">\r
+<!--\r
+if (window.gbWhTopic)\r
+{\r
+ if (window.addTocInfo)\r
+ {\r
+ addTocInfo("IAPP module\nIntroduction to IAPP");\r
+addButton("show",BTN_TEXT,"Show","","","","",0,0,"","","");\r
+\r
+ }\r
+ if (window.writeBtnStyle)\r
+ writeBtnStyle();\r
+\r
+ if (window.writeIntopicBar)\r
+ writeIntopicBar(1);\r
+\r
+ if (window.setRelStartPage)\r
+ {\r
+ setRelStartPage("../kernel.html");\r
+\r
+ autoSync(0);\r
+ sendSyncInfo();\r
+ sendAveInfoOut();\r
+ }\r
+}\r
+else\r
+ document.location.reload();\r
+//-->\r
+</script>\r
+<h1 class="whs1">Introduction to IAPP</h1>\r
+\r
+<p class="whs2"><span style="font-weight: bold;"><B>IAPP</B></span> \r
+ (Interface Applicative (fr.) = Application Interface (eng.)) component \r
+ represents \r
+ a common shell for all components, which can be integrated into the SALOME \r
+ platform.</p>\r
+\r
+<p class="whs2"> </p>\r
+\r
+<p class="whs2"><span style="font-weight: bold;"><B>IAPP \r
+ </B></span>component in SALOME platform provides:</p>\r
+\r
+<p class="whs2"> </p>\r
+\r
+<ul type="disc" class="whs3">\r
+ \r
+ <li class=kadov-p><p class="whs4">Common \r
+ desktop environment (<a href="salome_pro_desktop.htm">SALOME desktop</a>) \r
+ for all components</p></li>\r
+ \r
+ <li class=kadov-p><p class="whs4">Component \r
+ integration and management: uploading, switching, component menus/toolbars \r
+ handling </p></li>\r
+ \r
+ <li class=kadov-p><p class="whs4">Study \r
+ management (creation, saving, loading, editing studies)</p></li>\r
+ \r
+ <li class=kadov-p><p class="whs4">Multi-window \r
+ management in the framework of one study</p></li>\r
+ \r
+ <li class=kadov-p><p class="whs4">Management \r
+ of objects created or imported into the SALOME application (<a href="using_object_browser.htm">Object \r
+ Browser</a>, <a href="using_usecase_browser.htm">UseCase Browser</a>) \r
+ </p></li>\r
+ \r
+ <li class=kadov-p><p class="whs4">Integrated \r
+ Python interpreter </p></li>\r
+ \r
+ <li class=kadov-p><p class="whs4">Output \r
+ messages window</p></li>\r
+ \r
+ <li class=kadov-p><p class="whs4">Additional \r
+ tools : <a href="using_catalog_generator.htm">Catalogue Generator</a>, \r
+ <a href="using_registry.htm">Registry tool</a></p></li>\r
+ \r
+ <li class=kadov-p><p class="whs5">Four \r
+ standard viewers for data visualization:</p></li>\r
+</ul>\r
+\r
+<p class="whs6">- \r
+ VTK viewer,</p>\r
+\r
+<p class="whs6">- \r
+ OCC viewer,</p>\r
+\r
+<p class="whs6">- \r
+ Plot2d viewer,</p>\r
+\r
+<p class="whs6">- \r
+ Supervision viewer.</p>\r
+\r
+<p class="whs6"> </p>\r
+\r
+<p class="whs6"> </p>\r
+\r
+<p class="whs6"> </p>\r
+\r
+<a href="javascript:void(0);" onClick="var e; if (parseInt(navigator.appVersion)>=4){e=event;} if (parseInt(navigator.appVersion) >=2 && typeof(PopupMenu_Invoke) == 'function') PopupMenu_Invoke(e,'','Introduction to SALOME PRO','introduction_to_salome_pro.htm','SALOME PRO desktop','salome_pro_desktop.htm');return false;" title="Related Topics"><img src="../ss_btn_related_topics.gif" border=0 height=17 width=82 alt="Related Topics"></a><br> \r
+ \r
+\r
+<br> \r
+ \r
+\r
+<br> \r
+ \r
+\r
+<p class="whs7"> </p>\r
+\r
+<script type="text/javascript" language="JavaScript" title="WebHelpRelatedTopics"><!--\r
+if (parseInt(navigator.appVersion) >= 3 && typeof (WritePopupMenuLayer) == "function")\r
+ WritePopupMenuLayer();\r
+//--></script><script type="text/javascript" language="javascript1.2">\r
+<!--\r
+if (window.writeIntopicBar)\r
+ writeIntopicBar(0);\r
+//-->\r
+</script>\r
+</body>\r
+\r
+</html>\r
--- /dev/null
+<!doctype HTML public "-//W3C//DTD HTML 4.0 Frameset//EN">\r
+\r
+<html>\r
+\r
+<!--(==============================================================)-->\r
+<!--(Document created with RoboEditor. )============================-->\r
+<!--(==============================================================)-->\r
+\r
+<head>\r
+\r
+<title>Introduction to SALOME</title>\r
+\r
+<!--(Meta)==========================================================-->\r
+\r
+<meta http-equiv=content-type content="text/html; charset=windows-1252">\r
+<meta name=generator content="RoboHELP by eHelp Corporation - www.ehelp.com">\r
+<meta name=generator-major-version content=0.1>\r
+<meta name=generator-minor-version content=1>\r
+<meta name=filetype content=kadov>\r
+<meta name=filetype-version content=1>\r
+<meta name=page-count content=1>\r
+<meta name=layout-height content=1335>\r
+<meta name=layout-width content=744>\r
+\r
+\r
+<!--(Links)=========================================================-->\r
+\r
+ <link rel='stylesheet' href='../default_ns.css'>\r
+<script type="text/javascript" language="JavaScript" title="WebHelpSplitCss">\r
+<!--\r
+if (navigator.appName !="Netscape")\r
+{ document.write("<link rel='stylesheet' href='../default.css'>");}\r
+//-->\r
+</script>\r
+<style type="text/css">\r
+<!--\r
+h1.whs1 {font-family: 'Times New Roman', serif;}\r
+p.whs2 {font-family: 'Times New Roman', serif; margin-left: 0px; text-indent: 48px;}\r
+p.whs3 {font-family: 'Times New Roman', serif; text-align: justify; text-indent: 48px; font-weight: normal;}\r
+img_whs4 {border-style: none; border: none; width: 674px; height: 309px; float: none;}\r
+p.whs5 {text-indent: 48px;}\r
+p.whs6 {font-family: 'Times New Roman', serif;}\r
+p.whs7 {font-family: 'Times New Roman', serif; margin-left: 40px;}\r
+img_whs8 {border-style: none; border: none; width: 382px; height: 366px; float: none;}\r
+p.whs9 {font-family: 'Times New Roman', serif; margin-left: 0px;}\r
+ul.whs10 {list-style: disc;}\r
+-->\r
+</style>\r
+<script type="text/javascript" language="JavaScript">\r
+<!--\r
+if ((navigator.appName == "Netscape") && (parseInt(navigator.appVersion) == 4))\r
+{\r
+ var strNSS = "<style type='text/css'>";\r
+ strNSS += "p.whs2 {margin-left:1; }";\r
+ strNSS += "p.whs9 {margin-left:1; }";\r
+ strNSS +="</style>";\r
+ document.write(strNSS);\r
+}\r
+//-->\r
+</script>\r
+<script type="text/javascript" language="JavaScript" title="BSSC Special Effects" src="../ehlpdhtm.js"></script><script type="text/javascript" language="JavaScript" title="WebHelpInlineScript">\r
+<!--\r
+function reDo() {\r
+ if (innerWidth != origWidth || innerHeight != origHeight)\r
+ location.reload();\r
+}\r
+if ((parseInt(navigator.appVersion) == 4) && (navigator.appName == "Netscape")) {\r
+ origWidth = innerWidth;\r
+ origHeight = innerHeight;\r
+ onresize = reDo;\r
+}\r
+onerror = null; \r
+//-->\r
+</script>\r
+<style type="text/css">\r
+<!--\r
+ div.WebHelpPopupMenu {position:absolute; left:0px; top:0px; z-index:4; visibility:hidden;}\r
+-->\r
+</style>\r
+<script type="text/javascript" language="javascript1.2" src="../whmsg.js"></script>\r
+<script type="text/javascript" language="javascript" src="../whver.js"></script>\r
+<script type="text/javascript" language="javascript1.2" src="../whproxy.js"></script>\r
+<script type="text/javascript" language="javascript1.2" src="../whutils.js"></script>\r
+<script type="text/javascript" language="javascript1.2" src="../whtopic.js"></script>\r
+</head>\r
+\r
+<!--(Body)==========================================================-->\r
+\r
+\r
+<body>\r
+\r
+<script type="text/javascript" language="javascript1.2">\r
+<!--\r
+if (window.gbWhTopic)\r
+{\r
+ if (window.addTocInfo)\r
+ {\r
+ addTocInfo("About SALOME\nIntroduction to SALOME");\r
+addButton("show",BTN_TEXT,"Show","","","","",0,0,"","","");\r
+\r
+ }\r
+ if (window.writeBtnStyle)\r
+ writeBtnStyle();\r
+\r
+ if (window.writeIntopicBar)\r
+ writeIntopicBar(1);\r
+\r
+ if (window.setRelStartPage)\r
+ {\r
+ setRelStartPage("../kernel.html");\r
+\r
+ autoSync(0);\r
+ sendSyncInfo();\r
+ sendAveInfoOut();\r
+ }\r
+}\r
+else\r
+ document.location.reload();\r
+//-->\r
+</script>\r
+<h1 class="whs1">Introduction to SALOME \r
+ </h1>\r
+\r
+<p class="whs2"> <span \r
+ style="font-weight: bold;"><B>SALOME</B></span> \r
+ platform represents a generic open source platform for pre- and post-processing \r
+ in numeric simulations. This platform is made of reusable open-source \r
+ components, enabling <span style="text-align: justify;">to build your \r
+ own specific software or applications and integrate them. </span></p>\r
+\r
+<p class="whs3"> </p>\r
+\r
+<p class="whs3"><img src="../pics/sheme1.jpg" x-maintain-ratio="TRUE" width="674px" height="309px" border="0" class="img_whs4"></p>\r
+\r
+<p class="whs3"> </p>\r
+\r
+<p class="whs3"> <span \r
+ style="font-weight: bold;"><B>SALOME</B></span> \r
+ combines several software components, which are built in such a way that \r
+ it allows to integrate solvers and existing meshing algorithms along with \r
+ the specification of physical properties for a given domain. The originality \r
+ of this approach is that the various components must cooperate dynamically \r
+ and be configurable.</p>\r
+\r
+<p class="whs3"> </p>\r
+\r
+<p class="whs5"><span style="font-weight: bold;"><B>SALOME </B></span>platform \r
+ encapsulates the following modules: </p>\r
+\r
+<p class="whs6"> </p>\r
+\r
+<p class="whs7"><img src="../pics/sheme2.jpg" x-maintain-ratio="TRUE" width="382px" height="366px" border="0" class="img_whs8"></p>\r
+\r
+<p class="whs7"> </p>\r
+\r
+<p class="whs9">Every \r
+ component of SALOME platform has its own function:</p>\r
+\r
+<p class="whs9"> </p>\r
+\r
+<ul type="disc" class="whs10">\r
+ \r
+ <li class=kadov-p><p class="whs9"><span \r
+ style="font-weight: bold;"><B>KERNEL, STUDY, IAPP</B></span> : SALOME interface \r
+ </p></li>\r
+</ul>\r
+\r
+<p class="whs9"> </p>\r
+\r
+<ul type="disc" class="whs10">\r
+ \r
+ <li class=kadov-p><p class="whs9"><span \r
+ style="font-weight: bold;"><B>GEOM</B></span> : 3D \r
+ Modeling </p></li>\r
+</ul>\r
+\r
+<p class="whs9"> </p>\r
+\r
+<ul type="disc" class="whs10">\r
+ \r
+ <li class=kadov-p><p class="whs9"><span \r
+ style="font-weight: bold;"><B>SMESH</B></span> : Generation \r
+ of meshes</p></li>\r
+</ul>\r
+\r
+<p class="whs9"> </p>\r
+\r
+<ul type="disc" class="whs10">\r
+ \r
+ <li class=kadov-p><p class="whs9"><span \r
+ style="font-weight: bold;"><B>SUPERVISION</B></span> : Construction \r
+ of graphs and execution of calculations </p></li>\r
+</ul>\r
+\r
+<p class="whs9"> </p>\r
+\r
+<ul type="disc" class="whs10">\r
+ \r
+ <li class=kadov-p><p class="whs9"><span \r
+ style="font-weight: bold;"><B>VISU</B></span> : Post-processing \r
+ module for data visualization</p></li>\r
+</ul>\r
+\r
+<p class="whs9"> </p>\r
+\r
+<p class="whs9"> </p>\r
+\r
+<p class="whs9"> </p>\r
+\r
+<p class="whs9">\r
+<a href="javascript:void(0);" onClick="var e; if (parseInt(navigator.appVersion)>=4){e=event;} if (parseInt(navigator.appVersion) >=2 && typeof(PopupMenu_Invoke) == 'function') PopupMenu_Invoke(e,'','About SALOME PRO architecture','about_salome_pro_architecture.htm','Introduction to IAPP','introduction_to_iapp.htm');return false;" title="Related Topics"><img src="../ss_btn_related_topics.gif" border=0 height=17 width=82 alt="Related Topics"></a></p>\r
+\r
+<p class="whs9"> </p>\r
+\r
+<p class="whs9"> </p>\r
+\r
+<script type="text/javascript" language="JavaScript" title="WebHelpRelatedTopics"><!--\r
+if (parseInt(navigator.appVersion) >= 3 && typeof (WritePopupMenuLayer) == "function")\r
+ WritePopupMenuLayer();\r
+//--></script><script type="text/javascript" language="javascript1.2">\r
+<!--\r
+if (window.writeIntopicBar)\r
+ writeIntopicBar(0);\r
+//-->\r
+</script>\r
+</body>\r
+\r
+</html>\r
--- /dev/null
+<!doctype HTML public "-//W3C//DTD HTML 4.0 Frameset//EN">\r
+\r
+<html>\r
+\r
+<!--(==============================================================)-->\r
+<!--(Document created with RoboEditor. )============================-->\r
+<!--(==============================================================)-->\r
+\r
+<head>\r
+\r
+<title>Navigating topics</title>\r
+\r
+<!--(Meta)==========================================================-->\r
+\r
+<meta http-equiv=content-type content="text/html; charset=windows-1252">\r
+<meta name=date content="11 19, 2001 11:28:07 AM">\r
+<meta name=generator content="RoboHELP by eHelp Corporation - www.ehelp.com">\r
+<meta name=generator-major-version content=0.1>\r
+<meta name=generator-minor-version content=1>\r
+<meta name=filetype content=kadov>\r
+<meta name=filetype-version content=1>\r
+<meta name=page-count content=1>\r
+<meta name=layout-height content=546>\r
+<meta name=layout-width content=700>\r
+\r
+\r
+<!--(Links)=========================================================-->\r
+\r
+ <link rel='stylesheet' href='../default_ns.css'>\r
+<script type="text/javascript" language="JavaScript" title="WebHelpSplitCss">\r
+<!--\r
+if (navigator.appName !="Netscape")\r
+{ document.write("<link rel='stylesheet' href='../default.css'>");}\r
+//-->\r
+</script>\r
+<style type="text/css">\r
+<!--\r
+h1.whs1 {font-family: 'Times New Roman', serif;}\r
+p.whs2 {font-family: 'Times New Roman', serif;}\r
+-->\r
+</style>\r
+<script type="text/javascript" language="JavaScript" title="BSSC Special Effects" src="../ehlpdhtm.js"></script><script type="text/javascript" language="JavaScript" title="WebHelpInlineScript">\r
+<!--\r
+function reDo() {\r
+ if (innerWidth != origWidth || innerHeight != origHeight)\r
+ location.reload();\r
+}\r
+if ((parseInt(navigator.appVersion) == 4) && (navigator.appName == "Netscape")) {\r
+ origWidth = innerWidth;\r
+ origHeight = innerHeight;\r
+ onresize = reDo;\r
+}\r
+onerror = null; \r
+//-->\r
+</script>\r
+<style type="text/css">\r
+<!--\r
+ div.WebHelpPopupMenu {position:absolute; left:0px; top:0px; z-index:4; visibility:hidden;}\r
+-->\r
+</style>\r
+<script type="text/javascript" language="javascript1.2" src="../whmsg.js"></script>\r
+<script type="text/javascript" language="javascript" src="../whver.js"></script>\r
+<script type="text/javascript" language="javascript1.2" src="../whproxy.js"></script>\r
+<script type="text/javascript" language="javascript1.2" src="../whutils.js"></script>\r
+<script type="text/javascript" language="javascript1.2" src="../whtopic.js"></script>\r
+</head>\r
+\r
+<!--(Body)==========================================================-->\r
+\r
+\r
+<body>\r
+\r
+<script type="text/javascript" language="javascript1.2">\r
+<!--\r
+if (window.gbWhTopic)\r
+{\r
+ if (window.addTocInfo)\r
+ {\r
+ addTocInfo("Using this reference manual\nNavigating topics");\r
+addButton("show",BTN_TEXT,"Show","","","","",0,0,"","","");\r
+\r
+ }\r
+ if (window.writeBtnStyle)\r
+ writeBtnStyle();\r
+\r
+ if (window.writeIntopicBar)\r
+ writeIntopicBar(1);\r
+\r
+ if (window.setRelStartPage)\r
+ {\r
+ setRelStartPage("../kernel.html");\r
+\r
+ autoSync(0);\r
+ sendSyncInfo();\r
+ sendAveInfoOut();\r
+ }\r
+}\r
+else\r
+ document.location.reload();\r
+//-->\r
+</script>\r
+<h1 class="whs1">Navigating topics</h1>\r
+\r
+<p class="whs2">Topics in the SALOME \r
+ <span style="font-family: 'Times New Roman', serif;">Help system include \r
+ a variety of navigation components including:</span></p>\r
+\r
+<p class="whs2"> </p>\r
+\r
+<ul>\r
+ \r
+ <li class=kadov-p-CBULLETS><p class=BULLETS\r
+ style="font-weight: normal; font-family: 'Times New Roman', serif;"><span \r
+ style="font-weight: bold;"><B>Related Topics buttons:</B></span> When you click \r
+ a Related Topics button, a pop-up menu opens that displays a list of topics \r
+ you can go to. The topics are relevant to what you are currently reading \r
+ in the right-hand pane or they cross-reference related information that \r
+ you can go to. Click a topic from the pop-up and it opens in the right-hand \r
+ pane. </p></li>\r
+</ul>\r
+\r
+<p class=BULLETS\r
+ style="font-weight: normal; font-family: 'Times New Roman', serif;"> </p>\r
+\r
+<ul>\r
+ \r
+ <li class=kadov-p-CBULLETS><p class=BULLETS\r
+ style="font-weight: normal; font-family: 'Times New Roman', serif;"><span \r
+ style="font-weight: bold;"><B>Drop-down hotspots:</B></span> Many topics include \r
+ drop-down hotspots. This is clickable text (text links) that displays \r
+ more information below the hotspot. You only need to click the hotspots \r
+ you want to read. To close the text, click the hotspot again. </p></li>\r
+</ul>\r
+\r
+<p class=BULLETS\r
+ style="font-weight: normal; font-family: 'Times New Roman', serif;"> </p>\r
+\r
+<ul>\r
+ \r
+ <li class=kadov-p-CBULLETS><p class=BULLETS\r
+ style="font-weight: normal; font-family: 'Times New Roman', serif;"><span \r
+ style="font-weight: bold;"><B>Expanding hotspots:</B></span> Some topics include \r
+ expanding hotspots. This kind of hotspot is a text link that displays \r
+ information immediately following the text. You only have to click the \r
+ hotspots you want more information about. To close the text, click the \r
+ hotspot again. </p></li>\r
+</ul>\r
+\r
+<p class=BULLETS\r
+ style="font-weight: normal; font-family: 'Times New Roman', serif;"> </p>\r
+\r
+<ul>\r
+ \r
+ <li class=kadov-p-CBULLETS><p class=BULLETS\r
+ style="font-weight: normal; font-family: 'Times New Roman', serif;"><span \r
+ style="font-weight: bold;"><B>Text-only popups:</B></span> This kind of link \r
+ is text that displays a pop-up window when clicked. The popup window displays \r
+ brief information about a term or concept relevant to the topic you're \r
+ currently reading. When you finish viewing the information, you click \r
+ inside the pop-up window to close it. </p></li>\r
+</ul>\r
+\r
+<p class=BULLETS\r
+ style="font-weight: normal; font-family: 'Times New Roman', serif;"> </p>\r
+\r
+<ul>\r
+ \r
+ <li class=kadov-p-CBULLETS><p class=BULLETS\r
+ style="font-weight: normal; font-family: 'Times New Roman', serif;"><span \r
+ style="font-weight: bold;"><B>Popups:</B></span> When you click some links, the \r
+ destination topic opens in a popup inside the same window that's open. \r
+ It's like having two windows in one, only the focus is on the information \r
+ in the popup. When you finish reading the information in the popup, you \r
+ can close it from view or navigate to any of its links. </p></li>\r
+</ul>\r
+\r
+<p class="whs2"> </p>\r
+\r
+<p class="whs2">\r
+<a href="javascript:void(0);" onClick="var e; if (parseInt(navigator.appVersion)>=4){e=event;} if (parseInt(navigator.appVersion) >=2 && typeof(PopupMenu_Invoke) == 'function') PopupMenu_Invoke(e,'','About SALOME PRO help system','about_salome_pro_help_system.htm','Using left-hand tabs','using_left-hand_tabs.htm');return false;" title="Related Topics"><img src="../ss_btn_related_topics.gif" border=0 height=17 width=82 alt="Related Topics"></a></p>\r
+\r
+<script type="text/javascript" language="JavaScript" title="WebHelpRelatedTopics"><!--\r
+if (parseInt(navigator.appVersion) >= 3 && typeof (WritePopupMenuLayer) == "function")\r
+ WritePopupMenuLayer();\r
+//--></script><script type="text/javascript" language="javascript1.2">\r
+<!--\r
+if (window.writeIntopicBar)\r
+ writeIntopicBar(0);\r
+//-->\r
+</script>\r
+</body>\r
+\r
+</html>\r
--- /dev/null
+<!doctype HTML public "-//W3C//DTD HTML 4.0 Frameset//EN">\r
+\r
+<html>\r
+\r
+<!--(==============================================================)-->\r
+<!--(Document created with RoboEditor. )============================-->\r
+<!--(==============================================================)-->\r
+\r
+<head>\r
+\r
+<title>Opening studies</title>\r
+\r
+<!--(Meta)==========================================================-->\r
+\r
+<meta http-equiv=content-type content="text/html; charset=windows-1252">\r
+<meta name=generator content="RoboHELP by eHelp Corporation - www.ehelp.com">\r
+<meta name=generator-major-version content=0.1>\r
+<meta name=generator-minor-version content=1>\r
+<meta name=filetype content=kadov>\r
+<meta name=filetype-version content=1>\r
+<meta name=page-count content=1>\r
+<meta name=layout-height content=889>\r
+<meta name=layout-width content=700>\r
+\r
+\r
+<!--(Links)=========================================================-->\r
+\r
+ <link rel='stylesheet' href='../default_ns.css'>\r
+<script type="text/javascript" language="JavaScript" title="WebHelpSplitCss">\r
+<!--\r
+if (navigator.appName !="Netscape")\r
+{ document.write("<link rel='stylesheet' href='../default.css'>");}\r
+//-->\r
+</script>\r
+<style type="text/css">\r
+<!--\r
+h1.whs1 {text-align: justify;}\r
+p.whs2 {margin-left: 0px; text-align: justify;}\r
+img_whs3 {border-style: none; border: none; width: 30px; height: 30px; float: none;}\r
+p.whs4 {font-style: italic; color: #ff0000; margin-left: 0px; text-align: justify;}\r
+p.whs5 {font-style: italic; text-align: justify; color: #000000; font-family: 'Arial Black', sans-serif;}\r
+p.whs6 {font-style: italic; color: #ff0000; text-align: justify;}\r
+p.whs7 {font-style: italic; color: #ff0000; margin-left: 40px; text-align: justify;}\r
+img_whs8 {border-style: none; border: none; width: 25px; height: 28px; float: none;}\r
+p.whs9 {margin-left: 0px; font-style: italic; color: #ff0000; text-align: justify;}\r
+p.whs10 {margin-left: 40px; text-align: justify;}\r
+img_whs11 {border-style: none; border: none; width: 329px; height: 209px; float: none;}\r
+p.whs12 {color:#ff0000; margin-left:0px; background-image:url(../texture_horiz_ltbluebubbles.jpg); text-align:justify; }\r
+img_whs13 {border-style: none; border: none; float: none; width: 35px; height: 37px;}\r
+p.whs14 {color: #ff0000; margin-left: 0px; text-align: justify;}\r
+p.whs15 {margin-left: 0px; font-weight: bold; text-align: justify;}\r
+-->\r
+</style>\r
+<script type="text/javascript" language="JavaScript">\r
+<!--\r
+if ((navigator.appName == "Netscape") && (parseInt(navigator.appVersion) == 4))\r
+{\r
+ var strNSS = "<style type='text/css'>";\r
+ strNSS += "p.whs2 {margin-left:1; }";\r
+ strNSS += "p.whs4 {margin-left:1; }";\r
+ strNSS += "p.whs9 {margin-left:1; }";\r
+ strNSS += "p.whs12 {margin-left:1; }";\r
+ strNSS += "p.whs14 {margin-left:1; }";\r
+ strNSS += "p.whs15 {margin-left:1; }";\r
+ strNSS +="</style>";\r
+ document.write(strNSS);\r
+}\r
+//-->\r
+</script>\r
+<script type="text/javascript" language="JavaScript" title="BSSC Special Effects" src="../ehlpdhtm.js"></script><script type="text/javascript" language="JavaScript" title="WebHelpInlineScript">\r
+<!--\r
+function reDo() {\r
+ if (innerWidth != origWidth || innerHeight != origHeight)\r
+ location.reload();\r
+}\r
+if ((parseInt(navigator.appVersion) == 4) && (navigator.appName == "Netscape")) {\r
+ origWidth = innerWidth;\r
+ origHeight = innerHeight;\r
+ onresize = reDo;\r
+}\r
+onerror = null; \r
+//-->\r
+</script>\r
+<style type="text/css">\r
+<!--\r
+ div.WebHelpPopupMenu {position:absolute; left:0px; top:0px; z-index:4; visibility:hidden;}\r
+-->\r
+</style>\r
+<script type="text/javascript" language="javascript1.2" src="../whmsg.js"></script>\r
+<script type="text/javascript" language="javascript" src="../whver.js"></script>\r
+<script type="text/javascript" language="javascript1.2" src="../whproxy.js"></script>\r
+<script type="text/javascript" language="javascript1.2" src="../whutils.js"></script>\r
+<script type="text/javascript" language="javascript1.2" src="../whtopic.js"></script>\r
+</head>\r
+\r
+<!--(Body)==========================================================-->\r
+\r
+\r
+<body>\r
+\r
+<script type="text/javascript" language="javascript1.2">\r
+<!--\r
+if (window.gbWhTopic)\r
+{\r
+ if (window.addTocInfo)\r
+ {\r
+ addTocInfo("IAPP module\nStudy management\nOpening studies");\r
+addButton("show",BTN_TEXT,"Show","","","","",0,0,"","","");\r
+\r
+ }\r
+ if (window.writeBtnStyle)\r
+ writeBtnStyle();\r
+\r
+ if (window.writeIntopicBar)\r
+ writeIntopicBar(1);\r
+\r
+ if (window.setRelStartPage)\r
+ {\r
+ setRelStartPage("../kernel.html");\r
+\r
+ autoSync(0);\r
+ sendSyncInfo();\r
+ sendAveInfoOut();\r
+ }\r
+}\r
+else\r
+ document.location.reload();\r
+//-->\r
+</script>\r
+<h1 class="whs1">Opening studies</h1>\r
+\r
+<p class="whs2"><img src="../i_blue.jpg" x-maintain-ratio="TRUE" width="30px" height="30px" border="0" class="img_whs3">In <span \r
+ style="font-weight: bold;"><B>SALOME</B></span> all studies are stored in a special \r
+ format *.hdf. </p>\r
+\r
+<p class="whs4"> </p>\r
+\r
+<p class="whs5">To open an existing \r
+ study:</p>\r
+\r
+<p class="whs6"> </p>\r
+\r
+<p class="whs7"><span style="font-style: normal; color: #000000;"><font color=black >In \r
+ the main toolbar click </font></span><img src="../pics/open.jpg" x-maintain-ratio="TRUE" width="25px" height="28px" border="0" class="img_whs8"> <span style="font-style: normal; color: #000000;"><font color=black >or \r
+ from the main menu select </font></span><span style="font-style: normal;\r
+ color: #000000;\r
+ font-weight: bold;"><font color=black ><B>File \r
+ > Open</B></font></span><span style="font-style: normal; color: #000000;"><font color=black > option. \r
+ From a standard Search File dialog box choose the required *.hdf file \r
+ and click </font></span><span style="font-style: normal;\r
+ color: #000000;\r
+ font-weight: bold;"><font color=black ><B>Open</B></font></span><span style="font-style: normal; color: #000000;"><font color=black > \r
+ button.</font></span></p>\r
+\r
+<p class="whs7"> </p>\r
+\r
+<p class="whs9"><span style="color: #000000; font-family: 'Arial Black', sans-serif;"><font color=black >To \r
+ load an unloaded study (<a href="saving_a_study.htm">see also</a>):</font></span> \r
+ </p>\r
+\r
+<p class="whs2"> </p>\r
+\r
+<p class="whs10">From the main menu select \r
+ <span style="font-weight: bold;"><B>File > Load</B></span> option. In the \r
+ following dialog box select one of the studies, which has been previously \r
+ created and unloaded and click <span style="font-weight: bold;"><B>OK</B></span> \r
+ button:</p>\r
+\r
+<p class="whs10"> </p>\r
+\r
+<p class="whs10"><img src="../pics/load.jpg" x-maintain-ratio="TRUE" width="329px" height="209px" border="0" class="img_whs11"></p>\r
+\r
+<p class="whs4"> </p>\r
+\r
+<p class="whs12"><span style="color: #000000;"><font color=black ><img src="../tip1.gif" x-maintain-ratio="TRUE" x-save-file="TRUE" x-save-method="compute-relative" width="35px" height="37px" border="0" class="img_whs13"> After opening an existing study, you will see its structure \r
+ in the <a href="using_object_browser.htm">Object Browser</a>. It will \r
+ contain the objects created with the help of different components during \r
+ the previous study session. If you right-click on one of the objects and \r
+ from the associated pop-up menu choose </font></span><span style="color: #000000; font-weight: bold;"><font color=black ><B>Open \r
+ with</B></font></span><span style="color: #000000;"><font color=black > option, which will automatically \r
+ launch the component corresponding to this object. </font></span></p>\r
+\r
+<p class="whs14"> </p>\r
+\r
+<p class="whs2"> </p>\r
+\r
+<p class="whs2"> </p>\r
+\r
+<p class="whs2"> </p>\r
+\r
+<p class="whs15">\r
+<a href="javascript:void(0);" onClick="var e; if (parseInt(navigator.appVersion)>=4){e=event;} if (parseInt(navigator.appVersion) >=2 && typeof(PopupMenu_Invoke) == 'function') PopupMenu_Invoke(e,'','Creating a new study','creating_a_new_study.htm','Displaying studies','displaying_studies.htm','Introduction to IAPP','introduction_to_iapp.htm','SALOME PRO desktop','salome_pro_desktop.htm','Saving and closing studies','saving_a_study.htm');return false;" title="Related Topics"><img src="../ss_btn_related_topics.gif" border=0 height=17 width=82 alt="Related Topics"></a></p>\r
+\r
+<p class="whs15"> </p>\r
+\r
+<p class="whs15"> </p>\r
+\r
+<p class="whs15"> </p>\r
+\r
+<p class="whs15"> </p>\r
+\r
+<p class="whs15"> </p>\r
+\r
+<p class="whs15"> </p>\r
+\r
+<script type="text/javascript" language="JavaScript" title="WebHelpRelatedTopics"><!--\r
+if (parseInt(navigator.appVersion) >= 3 && typeof (WritePopupMenuLayer) == "function")\r
+ WritePopupMenuLayer();\r
+//--></script><script type="text/javascript" language="javascript1.2">\r
+<!--\r
+if (window.writeIntopicBar)\r
+ writeIntopicBar(0);\r
+//-->\r
+</script>\r
+</body>\r
+\r
+</html>\r
--- /dev/null
+<!doctype HTML public "-//W3C//DTD HTML 4.0 Frameset//EN">\r
+\r
+<html>\r
+\r
+<head>\r
+<title>Installation Wizard</title>\r
+<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">\r
+<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">\r
+<link rel="stylesheet" href="../default_ns.css"><script type="text/javascript" language="JavaScript" title="WebHelpSplitCss">\r
+<!--\r
+if (navigator.appName !="Netscape")\r
+{ document.write("<link rel='stylesheet' href='../default.css'>");}\r
+//-->\r
+</script>\r
+<style>\r
+<!--\r
+body { }\r
+-->\r
+</style><style type="text/css">\r
+<!--\r
+h1.whs1 { font-size:24pt; }\r
+hr.whs2 { float:aligncenter; }\r
+p.whs3 { background-color:#ffffff; }\r
+table.whs4 { x-cell-content-align:top; width:100%; border-spacing:0px; border-left-width:0px; border-left-color:#c0c0c0; border-left-style:Solid; border-top-width:0px; border-top-color:#c0c0c0; border-top-style:Solid; border-right-width:0px; border-right-color:#c0c0c0; border-right-style:Solid; border-bottom-width:0px; border-bottom-color:#c0c0c0; border-bottom-style:Solid; }\r
+col.whs5 { width:18.383%; }\r
+col.whs6 { width:81.617%; }\r
+tr.whs7 { x-cell-content-align:top; }\r
+td.whs8 { width:18.383%; padding-right:10px; padding-left:10px; border-left-color:#c0c0c0; border-top-color:#c0c0c0; border-top-style:Solid; border-bottom-color:#c0c0c0; border-bottom-width:1px; border-bottom-style:Solid; border-right-color:#c0c0c0; border-right-width:1px; border-right-style:Solid; border-left-width:1px; border-left-style:Solid; border-top-width:1px; }\r
+p.whs9 { font-weight:bold; }\r
+td.whs10 { width:81.617%; padding-right:10px; padding-left:10px; border-top-color:#c0c0c0; border-top-style:Solid; border-right-color:#c0c0c0; border-right-style:Solid; border-bottom-color:#c0c0c0; border-bottom-width:1px; border-bottom-style:Solid; border-top-width:1px; border-right-width:1px; }\r
+td.whs11 { width:18.383%; padding-right:10px; padding-left:10px; border-left-color:#c0c0c0; border-bottom-color:#c0c0c0; border-bottom-width:1px; border-bottom-style:Solid; border-right-color:#c0c0c0; border-right-width:1px; border-right-style:Solid; border-left-width:1px; border-left-style:Solid; }\r
+td.whs12 { width:81.617%; padding-right:10px; padding-left:10px; border-right-color:#c0c0c0; border-right-style:Solid; border-bottom-color:#c0c0c0; border-bottom-width:1px; border-bottom-style:Solid; border-right-width:1px; }\r
+td.whs13 { width:81.617%; padding-right:10px; padding-left:10px; border-right-style:Solid; border-right-color:#c0c0c0; border-bottom-color:#c0c0c0; border-bottom-width:1px; border-bottom-style:Solid; border-right-width:1px; }\r
+td.whs14 { width:18.383%; padding-right:10px; padding-left:10px; border-left-color:#c0c0c0; border-bottom-color:#c0c0c0; border-bottom-style:Solid; border-right-color:#c0c0c0; border-right-width:1px; border-right-style:Solid; border-left-width:1px; border-left-style:Solid; border-bottom-width:1px; }\r
+td.whs15 { width:81.617%; padding-right:10px; padding-left:10px; border-right-color:#c0c0c0; border-right-style:Solid; border-bottom-color:#c0c0c0; border-bottom-style:Solid; border-bottom-width:1px; border-right-width:1px; }\r
+p.whs16 { text-align:center; }\r
+img_whs17 { border:none; width:565px; height:525px; float:none; border-style:none; }\r
+p.whs18 { background-image:url('../texture_horiz_ltbluebubbles.jpg'); }\r
+img_whs19 { border:none; width:36px; height:38px; float:none; border-style:none; }\r
+img_whs20 { border:none; width:565px; height:525px; float:none; border-style:none; }\r
+img_whs21 { border:none; width:35px; height:37px; float:none; border-style:none; }\r
+table.whs22 { width:100%; border-left-style:Solid; border-left-width:1px; border-right-style:Solid; border-right-width:1px; border-top-style:Solid; border-top-width:1px; border-bottom-style:Solid; border-bottom-width:1px; border-left-color:#c0c0c0; border-right-color:#c0c0c0; border-top-color:#c0c0c0; border-bottom-color:#c0c0c0; }\r
+th.whs23 { border-left-color:#c0c0c0; border-left-width:1px; border-left-style:Solid; border-top-color:#c0c0c0; border-top-width:1px; border-top-style:Solid; border-right-color:#c0c0c0; border-right-width:1px; border-right-style:Solid; border-bottom-color:#c0c0c0; border-bottom-width:1px; border-bottom-style:Solid; }\r
+p.whs24 { font-size:12pt; }\r
+td.whs25 { border-left-color:#c0c0c0; border-left-width:1px; border-left-style:Solid; border-top-color:#c0c0c0; border-top-width:1px; border-top-style:Solid; border-right-color:#c0c0c0; border-right-width:1px; border-right-style:Solid; border-bottom-color:#c0c0c0; border-bottom-width:1px; border-bottom-style:Solid; }\r
+td.whs26 { x-cell-content-align:top; border-left-color:#c0c0c0; border-left-width:1px; border-left-style:Solid; border-top-color:#c0c0c0; border-top-width:1px; border-top-style:Solid; border-right-color:#c0c0c0; border-right-width:1px; border-right-style:Solid; border-bottom-color:#c0c0c0; border-bottom-width:1px; border-bottom-style:Solid; }\r
+p.whs27 { margin-right:2px; }\r
+img_whs28 { border:none; border-style:none; width:36px; height:38px; float:none; }\r
+-->\r
+</style><script type="text/javascript" language="JavaScript" title="WebHelpInlineScript">\r
+<!--\r
+function reDo() {\r
+ if (innerWidth != origWidth || innerHeight != origHeight)\r
+ location.reload();\r
+}\r
+if ((parseInt(navigator.appVersion) == 4) && (navigator.appName == "Netscape")) {\r
+ origWidth = innerWidth;\r
+ origHeight = innerHeight;\r
+ onresize = reDo;\r
+}\r
+onerror = null; \r
+//-->\r
+</script>\r
+<style type="text/css">\r
+<!--\r
+div.WebHelpPopupMenu { position:absolute; left:0px; top:0px; z-index:4; visibility:hidden; }\r
+-->\r
+</style><script type="text/javascript" language="javascript1.2" src="../whmsg.js"></script>\r
+<script type="text/javascript" language="javascript" src="../whver.js"></script>\r
+<script type="text/javascript" language="javascript1.2" src="../whproxy.js"></script>\r
+<script type="text/javascript" language="javascript1.2" src="../whutils.js"></script>\r
+<script type="text/javascript" language="javascript1.2" src="../whtopic.js"></script>\r
+</head>\r
+<body><script type="text/javascript" language="javascript1.2">\r
+<!--\r
+if (window.gbWhTopic)\r
+{\r
+ if (window.addTocInfo)\r
+ {\r
+ addTocInfo("About SALOME\nInstalling SALOME");\r
+addButton("show",BTN_TEXT,"Show","","","","",0,0,"","","");\r
+\r
+ }\r
+ if (window.writeBtnStyle)\r
+ writeBtnStyle();\r
+\r
+ if (window.writeIntopicBar)\r
+ writeIntopicBar(1);\r
+\r
+ if (window.setRelStartPage)\r
+ {\r
+ setRelStartPage("../kernel.html");\r
+\r
+ autoSync(1);\r
+ sendSyncInfo();\r
+ sendAveInfoOut();\r
+ }\r
+}\r
+else\r
+ if (window.gbIE4)\r
+ document.location.reload();\r
+//-->\r
+</script>\r
+<h1 class="whs1">Installing SALOME</h1>\r
+\r
+\r
+<hr class="whs2">\r
+\r
+\r
+<ul>\r
+ \r
+ <li class=kadov-p\r
+ class=kadov-p><a href="#install_from_wizard">Installing products \r
+ with the Installation Wizard</a></li>\r
+ \r
+ <li class=kadov-p\r
+ class=kadov-p><a href="#check_version_proc">Notes on check products \r
+ version procedure</a></li>\r
+ \r
+ <li class=kadov-p\r
+ class=kadov-p><a href="#pick_up_env">Pick up the environment</a></li>\r
+ \r
+ <li class=kadov-p\r
+ class=kadov-p><a href="#xml_files">Modifying XML configuration \r
+ file</a></li>\r
+ \r
+ <li class=kadov-p><p class="whs3"><a href="#new_products">Implementing \r
+ installation scripts for the new products</a></p></li>\r
+</ul>\r
+\r
+\r
+<hr class="whs2">\r
+\r
+\r
+<h3><a name=install_from_wizard></a>Installing products with the <font \r
+ style="color: #ff0000;"\r
+ color=#FF0000>Installation Wizard</font></h3>\r
+\r
+<p>You can run the Installation Wizard in two modes. It's root directory \r
+ contains python script runInstall.py: </p>\r
+\r
+<p><b style="font-weight: bold;">[ python ] runInstall [ -g | b ] [ -f \r
+ <xml-file> ] [ -t <target-dir> ] [ -tmp <tmp-dir> ]</b> \r
+ </p>\r
+\r
+<p> </p>\r
+\r
+<table x-use-null-cells cellspacing="0" width="100%" class="whs4">\r
+<script language='JavaScript'><!--\r
+if ((navigator.appName == "Netscape") && (parseInt(navigator.appVersion) == 4)) document.write("</table><table x-use-null-cells cellspacing='0' width='100%' border='1' bordercolor='silver' bordercolorlight='silver' bordercolordark='silver'>");\r
+//--></script>\r
+<col class="whs5">\r
+<col class="whs6">\r
+\r
+<tr valign="top" class="whs7">\r
+<td width="18.383%" class="whs8">\r
+<p class="whs9"><b style="font-weight: bold;">-g</b></td>\r
+<td width="81.617%" class="whs10">\r
+<p>Runs the Installation Wizard in the GUI mode. In this case only <xml-file> \r
+ key is taken into account. This option is used by default. </td></tr>\r
+\r
+<tr valign="top" class="whs7">\r
+<td width="18.383%" class="whs11">\r
+<p><b style="font-weight: bold;">-b</b></td>\r
+<td width="81.617%" class="whs12">\r
+<p>Runs the Installation Wizard in the batch mode. </td></tr>\r
+\r
+<tr valign="top" class="whs7">\r
+<td width="18.383%" class="whs11">\r
+<p><b style="font-weight: bold;">-f <xml-file></b></td>\r
+<td width="81.617%" class="whs12">\r
+<p>The configuration file to be used by the Installation Wizard. \r
+ If this parameter is missed then the script tries to define the <i>Red \r
+ Hat </i>version and uses corresponding xml file. For example, for the \r
+ <i>Red Hat 8.0</i> <b>config_RedHat8_0.xml</b> file is supposed \r
+ to be used by default. If the appropriate file is not found, <b>config.xml</b> \r
+ is used by default. </td></tr>\r
+\r
+<tr valign="top" class="whs7">\r
+<td width="18.383%" class="whs11">\r
+<p> <b>-t <target-dir></b></td>\r
+<td width="81.617%" class="whs12">\r
+<p>The target directory, SALOME products to be installed to. If used, overloads \r
+ target directory, given in the configuration xml file. </td></tr>\r
+\r
+<tr valign="top" class="whs7">\r
+<td colspan="1" rowspan="1" width="18.383%" class="whs11">\r
+<p><b style="font-weight: bold;">-tmp <tmp-dir></b></td>\r
+<td colspan="1" rowspan="1" width="81.617%" class="whs13">\r
+<p>The directory, which is used to contain temporary files. If used, \r
+ overloads temporary directory, given in the configuration xml file.</td></tr>\r
+\r
+<tr valign="top" class="whs7">\r
+<td colspan="1" rowspan="1" width="18.383%" class="whs14">\r
+<p><b style="font-weight: bold;">-h</b></td>\r
+<td colspan="1" rowspan="1" width="81.617%" class="whs15">\r
+<p>Prints this help information. </td></tr>\r
+<script language='JavaScript'><!--\r
+if ((navigator.appName == "Netscape") && (parseInt(navigator.appVersion) == 4)) document.write("</table></table><table>");\r
+//--></script>\r
+</table>\r
+\r
+<p> \r
+ <b><br>\r
+ </b></p>\r
+\r
+<p>So, to run the Installation Wizard in the GUI mode, just type <b>runInstall</b>. \r
+ </p>\r
+\r
+<p> </p>\r
+\r
+<p>The installation procedure can support some different Linux platforms \r
+ (currently it provides only configuration scripts for <i>RedHat-8.0</i>) \r
+ and various number of products. The using of configuration xml files gives \r
+ flexible way to modify the list of products to be installed by the Installation \r
+ Wizard without changing program's source code. Just create your own configuration \r
+ file and implement installation scripts for products you want to be provided \r
+ by Wizard. See <a href="#xml_files">modifying XML configuration file</a> \r
+ and <a href="#new_products">implementing installation scripts for the \r
+ new products</a> for more information. </p>\r
+\r
+<p>The <font style="color: #ff0000;"\r
+ color=#FF0000>Installation Wizard</font> was built with using \r
+ of the <b><i>Qt </i></b>library. The program contains several pages. \r
+ To navigate between pages use <i>"Next"</i> and <i>"Back"</i> \r
+ buttons in the lower part of the wizard window. <i>"Cancel"</i> \r
+ button closes dialog window and quits the installation procedure. To invoke \r
+ this help information click <i>"Help"</i> button. </p>\r
+\r
+<p>Skip the first <i>"Introduction"</i> page by pressing <i>"Next"</i> \r
+ button. </p>\r
+\r
+<p>In the second page you are proposed to enter the target directory where \r
+ all selected products will be installed to. You can also press <i>"Browse..."</i> \r
+ button and choose the folder for installation using standard <b><i>Qt</i></b> \r
+ browse directory dialog box. <br>\r
+If the directory you want to install products does not exist you will be \r
+ prompted to confirm directory creation. If you type wrong directory path, \r
+ or if you have no permission for the directory you use, the corresponding \r
+ message box will raise. </p>\r
+\r
+<p>The Installation Wizard has two modes of the installation: basic and \r
+ advanced. In the basic mode it is necessary just to enter target directory. \r
+ If you want to use advanced mode, click <i>"More..."</i> button. \r
+ </p>\r
+\r
+<p>In the advanced mode you have the possibility to select products to \r
+ be installed (see <a href="#ProductPage">Fig.1</a> ). Each product has \r
+ several options of installation: you have a possibility to use native \r
+ products, install already precompiled binaries, build product from the \r
+ sources or not installed at all. Possible options and default choice are \r
+ provided by the configuration file. You can mark the products, you want \r
+ to install, by clicking the corresponding radiobuttons in the list view \r
+ in the left part of the page. Note that some products can be installed \r
+ only together with other products (or these prerequisite products should \r
+ be already installed on your computer). The installation procedure has \r
+ a special feature to automatically mark these products in the list view. \r
+ For example, in order to install <b><i>pyqt</i></b> it's necessary to \r
+ have <b><i>gcc, python</i></b>,<b><i> qt</i></b> and <b><i>sip</i></b> \r
+ installed. Therefore all these products will be marked when you check \r
+ on <b><i>pyqt</i></b>. This feature can be switched off by clicking <i>"Auto \r
+ set prerequisites products"</i> checkbox. <br>\r
+Special button in the right part of the page - <i>"Unselect All" \r
+ </i>- allows to reset quickly all products to the <i>"not install"</i> \r
+ state. <br>\r
+If you want to use native Linux Red Hat 8.0 products (these are gcc, tcl, \r
+ Python, Qt, Sip and PyQt), select <i>"use native" </i>option. \r
+ </p>\r
+\r
+<p>The box at the right side of the page displays the information about \r
+ currently highlighted product: name, version, short description (if provided), \r
+ required disk space, temporary files disk space, list of prerequisites \r
+ and user choice. </p>\r
+\r
+<a name=ProductPage></a>\r
+\r
+<p align="center" class="whs16"> </p>\r
+\r
+<p align="center" class="whs16"><span style="font-style: italic;"><I><img src="../pics/productpage.png" x-maintain-ratio="TRUE" width="565px" height="525px" border="0" class="img_whs17"></I></span> \r
+ </p>\r
+\r
+<p align="center" class="whs16"><b style="font-weight: bold;">Figure 1:</b> "Installation \r
+ settings" page in the advanced mode</p>\r
+\r
+<p align="center" class="whs16"> </p>\r
+\r
+<p>The <i>"Total disk space required:"</i> field displays how \r
+ much disk space on the hard drive is required for installation of selected \r
+ products. </p>\r
+\r
+<p> </p>\r
+\r
+ \r
+\r
+<p class="whs18"><b \r
+ style="font-weight: bold;"><img src="../note1.gif" x-maintain-ratio="TRUE" width="36px" height="38px" border="0" class="img_whs19"> </b>Please, take into account \r
+ that displayed amount of required disk space is approximate and may differ \r
+ when you install products on your hard drive. </p>\r
+\r
+<p> </p>\r
+\r
+<p>The installation procedure uses a special directory to store temporary \r
+ files. The <i>"Space for temporary files:"</i> field shows the \r
+ information about required disk space on the hard drive for extracting \r
+ and compiling of the selected products. You can change the default directory \r
+ - just type path to the folder you want to use or click on the corresponding \r
+ <i>"Browse..."</i> button. </p>\r
+\r
+<p> </p>\r
+\r
+<p>The installation procedure also checks the available disk space on the \r
+ selected directories according to the products selected. If there is no \r
+ enough disk space on your hard drive you will see the corresponding error \r
+ message box. </p>\r
+\r
+<p> </p>\r
+\r
+<p class="whs18"><span><b \r
+ style="font-weight: bold;"><img src="../note1.gif" x-maintain-ratio="TRUE" width="36px" height="38px" border="0" class="img_whs19"></span> </b>Unfortunately, the \r
+ configure procedure has a very annoying bug under Linux platform. The \r
+ directory should be obligatory entered without spaces. For example, the \r
+ configure procedure for <b><i>gcc</i></b> won't work if you pass the following \r
+ parameter: <i>--prefix="/New Folder 1"</i>. <b>Therefore you \r
+ are strongly recommended not to use directory names containing spaces.</b> \r
+ </p>\r
+\r
+<p> </p>\r
+\r
+<p>To proceed further click <i>"Next"</i> button. At this moment \r
+ program will make some tests to check installation settings: if there \r
+ is enough disk space on the hard drive, if native products are preinstalled, \r
+ dependencies (prerequisites) for each product you have selected to be \r
+ installed. If any test fails you will see corresponding warning message \r
+ box. Otherwise wizard will follow to the next page: </p>\r
+\r
+<p> </p>\r
+\r
+<p align="center" class="whs16"><a name=ChoicePage></a><br>\r
+<img src="../pics/choicepage.png" x-maintain-ratio="TRUE" width="565px" height="525px" border="0" class="img_whs17"> </p>\r
+\r
+<p align="center" class="whs16"><b style="font-weight: bold;">Figure 2:</b> "Check \r
+ your choice" page</p>\r
+\r
+<p align="center" class="whs16"> </p>\r
+\r
+<p>This page summarizes the installation settings you've made on the previous \r
+ pages. You can check again your choice to change it if necessary. </p>\r
+\r
+ \r
+\r
+<p>When you are sure that everything is OK, press <i>"Next"</i> \r
+ button to follow to the <a href="#ProgressPage">next page</a>. </p>\r
+\r
+<p> </p>\r
+\r
+<a name=ProgressPage></a>\r
+\r
+<p align="center" class="whs16"><img src="../pics/progresspage.png" x-maintain-ratio="TRUE" width="565px" height="525px" border="0" class="img_whs20"> </p>\r
+\r
+<p align="center" class="whs16"><b style="font-weight: bold;">Figure 3:</b> "Installation \r
+ progress" page</p>\r
+\r
+<p align="center" class="whs16"> </p>\r
+\r
+<p>To start installation of the selected products click <i>"Start"</i> \r
+ button. It launches the shell installation script and you will be able \r
+ to see the output of the script in the topmost dialog's frame. In case \r
+ of any installation problems (for example, you have accidentally removed \r
+ the temporary directory) the script will ask you: <i>"Would you like \r
+ to continue : (Y,N) ?"</i>. You can answer this question by typing \r
+ [Y] or [N] in the middle text edit control frame. </p>\r
+\r
+<p> </p>\r
+\r
+ \r
+\r
+<p class="whs18"><b \r
+ style="font-weight: bold;"><img src="../tip1.gif" x-maintain-ratio="TRUE" width="35px" height="37px" border="0" class="img_whs21"></b> press [Enter] when you finish \r
+ typing data. </p>\r
+\r
+<p> </p>\r
+\r
+<p>The <i>"Installation Status"</i> frame window shows you the \r
+ progress of installation. It contains a list of all selected products \r
+ with brief descriptions. "<font style="color: #ff0000;"\r
+ color=#FF0000>Waiting</font>" \r
+ description means that installation of this product have not started yet. \r
+ Currently installing product is marked as "<font style="color: #ff9900;"\r
+ color=#FF9900>Processing</font>". \r
+ All installed products have "<font style="color: #33ff33;"\r
+ color=#33FF33>Completed</font>" \r
+ description. </p>\r
+\r
+<p>You can abort installation and close the installation procedure using \r
+ <i>"Cancel"</i> button. It sends the signal "SIGTERM" \r
+ to the shell script. The script has a signal handler and will try to clear \r
+ all temporary files. The process of removing temporary files can take \r
+ some time, so the installation wizard will wait 3 seconds before closing. \r
+ </p>\r
+\r
+<p> </p>\r
+\r
+<p>At the end of installation (all selected products have been installed \r
+ successfully) you can go back to the previous pages to start a new installation \r
+ or click <i>"Next"</i> button to go the Readme page: </p>\r
+\r
+<p align="center" class="whs16"><a name=readmepage></a><br>\r
+<img src="../pics/readmepage.png" x-maintain-ratio="TRUE" width="565px" height="525px" border="0" class="img_whs20"></p>\r
+\r
+<p align="center" class="whs16"><b style="font-weight: bold;">Figure 4:</b> "Finish \r
+ installation" page</p>\r
+\r
+<p align="center" class="whs16"> </p>\r
+\r
+<p>In this page you can read important information about the Instalation \r
+ Wizard itself and some hints: how to run and test SALOME or how to build \r
+ SALOME from the sources. This is the contents of the README file which \r
+ you can find in the root directory of the Installation Wizard. </p>\r
+\r
+ \r
+\r
+<p>You can also launch SALOME Desktop from this page by clicking <i>"Launch \r
+ SALOME" </i>button. </p>\r
+\r
+<p>During the process of installation the script creates some environment \r
+ files to simplify procedure of launching SALOME. These shell scripts set \r
+ all necessary environment variables for all products you have installed. \r
+ To learn how installation scripts collects the environment, see <a \r
+ href="#pick_up_env"> here</a>. These files are: <b>salome.csh</b> + <b>salome.sh</b> \r
+ in the <span style="font-style: italic;"><I><span style="font-weight: bold;"><B>KERNEL \r
+ module</B></span></I></span><b><i> sources</i></b> and <span style="font-style: italic;"><I><span \r
+ style="font-weight: bold;"><B>KERNEL</B></span></I></span><b><i> module binaries</i></b> \r
+ root directories and <b>env_products.csh</b> + <b>env_products.sh </b>in \r
+ the target directory. </p>\r
+\r
+\r
+<hr class="whs2">\r
+\r
+\r
+<h3><a name=check_version_proc></a>Notes on<font style="color: #ff0000;"\r
+ color=#FF0000> check products \r
+ version</font> procedure</h3>\r
+\r
+<p>Unfortunately under Linux platform there is no exact algorithm to identify \r
+ the product's version. The table below contains the information relating \r
+ to checking preinstalled products for the Linux.RedHat 8.0 platform <br>\r
+ </p>\r
+\r
+<table nosave x-use-null-cells width="100%" class="whs22">\r
+\r
+<tr nosave>\r
+<th nosave class="whs23">\r
+<p class="whs24">Product </th>\r
+<th nosave class="whs23">\r
+<p class="whs24">Algorithm of checking </th>\r
+<th nosave class="whs23">\r
+<p class="whs24">Preliminary steps before launching <br>\r
+of installation procedure </th>\r
+<th nosave class="whs23">\r
+<p class="whs24">Notes </th></tr>\r
+\r
+<tr>\r
+<td class="whs25">\r
+<p>gcc 3.2</td>\r
+<td class="whs25">\r
+<p>ver=`/usr/bin/gcc --version | grep 'gcc (GCC) .*' | cut -b 11-13`</td>\r
+<td class="whs25">\r
+<p>- </td>\r
+<td class="whs25">\r
+<p>ver should be equal 3.2 <br>\r
+It is recommended to use native gcc on Linux RedHat 8.0</td></tr>\r
+\r
+<tr nosave>\r
+<td class="whs25">\r
+<p>tcl 8.3</td>\r
+<td nosave class="whs25">\r
+<p>existence of TCLHOME <br>\r
+existence of tclsh8.3 <br>\r
+existence of wish8.3 <br>\r
+existence of libtcl8.3.so <br>\r
+existence of libtk8.3.so <br>\r
+existence of libtclx8.3.so <br>\r
+existence of libtkx8.3.so</td>\r
+<td class="whs25">\r
+<p>set TCLHOME if you have preinstalled version of tcl. <br>\r
+set LD_LIBRARY_PATH on a directory where libs can be found.</td>\r
+<td class="whs25">\r
+<p>It is recommended to use native tcl on Linux RedHat 8.0</td></tr>\r
+\r
+<tr>\r
+<td valign="top" class="whs26">\r
+<p>boost 1.30.2</td>\r
+<td valign="top" class="whs26">\r
+<p>ver=`egrep 'BOOST_VERSION [0-9]+' ${BOOSTDIR}/boost/version.hpp | sed \r
+ 's/.*BOOST_VERSION \([0-9]\+\)/\1/g'`</td>\r
+<td valign="top" class="whs26">\r
+<p>set BOOSTDIR if you have preinstalled version of boost</td>\r
+<td valign="top" class="whs26">\r
+<p>It is impossible to use native BOOST and to install BOOST from binaries.</td></tr>\r
+\r
+<tr>\r
+<td class="whs25">\r
+<p>Cascade 5.1.2</td>\r
+<td class="whs25">\r
+<p>existence of CASROOT environment variable</td>\r
+<td class="whs25">\r
+<p>set CASROOT if you have preinstalled version of CASCADE</td>\r
+<td class="whs25">\r
+<p>Unfortunately we can't say anything exactly about CASCADE 5.1.2 and \r
+ we only check CASROOT environment variable. If you have problem with preinstalled \r
+ version of CASCADE reinstall it</td></tr>\r
+\r
+<tr>\r
+<td class="whs25">\r
+<p>Python 2.2.1</td>\r
+<td class="whs25">\r
+<p>existence of PYTHONHOME <br>\r
+isPython=`which python` <br>\r
+ver=`python -V`</td>\r
+<td class="whs25">\r
+<p>set PYTHONHOME to root Python folder <br>\r
+set PATH on a directory where python can be found</td>\r
+<td class="whs25">\r
+<p>Python should exist and ver should be equal to 2.2.1 <br>\r
+It is recommended to use native Python on Linux RedHat 8.0</td></tr>\r
+\r
+<tr>\r
+<td class="whs25">\r
+<p>Mesa 3.4.2</td>\r
+<td class="whs25">\r
+<p>existence of libGL.so.1.2.030402</td>\r
+<td class="whs25">\r
+<p>set LD_LIBRARY_PATH on a directory where libGL.so.1.2.030402 can be \r
+ found</td>\r
+<td class="whs25">\r
+<p>You have a possibility to build products (vtk & qt) with Mesa drivers \r
+ from the package supplied with this installation procedure or to use OpenGL \r
+ drivers installed on your computer locally. This check procedure concerns \r
+ only supplied Mesa driver.</td></tr>\r
+\r
+<tr>\r
+<td class="whs25">\r
+<p>Swig 1.3.17</td>\r
+<td class="whs25">\r
+<p>isSwig=`which swig` <br>\r
+ver=`swig -version` <br>\r
+ver=`echo $ver | awk '{print $3}'`</td>\r
+<td class="whs25">\r
+<p>set PATH on a directory where swig can be found</td>\r
+<td class="whs25">\r
+<p>Swig should exist and ver should be equal to 1.3.17</td></tr>\r
+\r
+<tr>\r
+<td class="whs25">\r
+<p>Qt 3.0.5</td>\r
+<td class="whs25">\r
+<p>existence of QTDIR <br>\r
+existence of libqt-mt.so.3.0.5</td>\r
+<td class="whs25">\r
+<p>set QTDIR if you have preinstalled version of qt</td>\r
+<td class="whs25">\r
+<p>We try to find libqt-mt.so.3.0.5 in ${QTDIR}/lib folder. <br>\r
+You should set MESA_HOME only if you have preinstalled version of Mesa \r
+ 3.4.2. <br>\r
+It is recommended to use native Qt on Linux RedHat 8.0</td></tr>\r
+\r
+<tr>\r
+<td class="whs25">\r
+<p>Qwt 0.4.1</td>\r
+<td class="whs25">\r
+<p>existence of QWTHOME <br>\r
+existence of libqwt.so.0.4.1</td>\r
+<td class="whs25">\r
+<p>set QWTHOME if you have preinstalled version of qwt</td>\r
+<td class="whs25">\r
+<p>We try to find libqwt.so.0.4.1 in the ${QWTHOME}/lib folder. </td></tr>\r
+\r
+<tr>\r
+<td class="whs25">\r
+<p>Hdf 5-1.4.4</td>\r
+<td class="whs25">\r
+<p>existence of HDF5HOME <br>\r
+existence of libhdf5.so.0.0.0 <br>\r
+existence of libhdf5.settings</td>\r
+<td class="whs25">\r
+<p>set HDF5HOME if you have preinstalled version of hdf</td>\r
+<td class="whs25">\r
+<p>We try to find libhdf5.so.0.0.0 and libhdf5.settings in ${HDF5HOME}/lib \r
+ folder. <br>\r
+File libhdf5.settings should contain the following entry: <br>\r
+HDF5 Version: 1.4.4</td></tr>\r
+\r
+<tr>\r
+<td class="whs25">\r
+<p>Med 2.1.6</td>\r
+<td class="whs25">\r
+<p>existence of MED2HOME <br>\r
+existence of libmed.so.0.0.0</td>\r
+<td class="whs25">\r
+<p>set MED2HOME if you have preinstalled version of med</td>\r
+<td class="whs25">\r
+<p>Unfortunately we can't check version number. <br>\r
+We try to find libmed.so.0.0.0 in ${MED2HOME}/lib folder. <br>\r
+If you have problem with preinstalled version of med reinstall it.</td></tr>\r
+\r
+<tr>\r
+<td class="whs25">\r
+<p>Vtk 4.2</td>\r
+<td class="whs25">\r
+<p>existence of VTKHOME <br>\r
+existence of libvtkCommon.so</td>\r
+<td class="whs25">\r
+<p>set VTKHOME if you have preinstalled version of vtk</td>\r
+<td class="whs25">\r
+<p>Unfortunately we can't check the version number. <br>\r
+We try to find libvtkCommon.so in ${VTKHOME}/lib/vtk folder. <br>\r
+If you have problem with preinstalled version of vtk reinstall it.</td></tr>\r
+\r
+<tr>\r
+<td valign="top" class="whs26">\r
+<p>Netgen 4.3</td>\r
+<td valign="top" class="whs26">\r
+<p>existence of NETGENROOT</td>\r
+<td valign="top" class="whs26">\r
+<p>set NETGENROOT if you have preinstalled version of Netgen.</td>\r
+<td valign="top" class="whs26">\r
+<p>Unfortunarely we can't find anything about netgen version.<br>\r
+We just check if NETGENROOT environment varible is set.</td></tr>\r
+\r
+<tr>\r
+<td class="whs25">\r
+<p>OmniORB 3.0.5, <br>\r
+OmniORBpy 1.5, <br>\r
+OmniNotify 1.2</td>\r
+<td class="whs25">\r
+<p>existence of OMNIORBDIR <br>\r
+existence of libomniORB3.so.0.5 <br>\r
+existence of _omnipymodule.so.0.5 <br>\r
+existence of libCOSNotify3.so.0.5 <br>\r
+existence of notifd <br>\r
+existence of THIS_IS_omniORB_3_0_5 <br>\r
+existence of THIS_IS_omniNotify_1_2 <br>\r
+existence of THIS_IS_OMNIORBPY_1_5</td>\r
+<td class="whs25">\r
+<p>set OMNIORBDIR if you have preinstalled version of omni</td>\r
+<td class="whs25">\r
+<p>We try to find libomniORB3.so.0.5, _omnipymodule.so.0.5 and libCOSNotify3.so.0.5 \r
+ in ${OMNIORBDIR}/lib/i586_linux_2.0_glibc2.1 folder. <br>\r
+We try to find notifd in ${OMNIORBDIR}/bin/i586_linux_2.0_glibc2.1 folder. \r
+ <br>\r
+Additional checking - omni add special files THIS_IS_... <br>\r
+We try to find THIS_IS_omniORB_3_0_5 in ${OMNIORBDIR} folder. <br>\r
+We try to find THIS_IS_omniNotify_1_2 in ${OMNIORBDIR}/src/services/omniNotify. \r
+ <br>\r
+We try to find THIS_IS_OMNIORBPY_1_5 in ${OMNIORBDIR}/src/lib/omniORBpy \r
+ folder.</td></tr>\r
+\r
+<tr>\r
+<td class="whs25">\r
+<p>Numeric 22.0</td>\r
+<td class="whs25">\r
+<p>existence of Numeric folder <br>\r
+existence of _numpy.so</td>\r
+<td class="whs25">\r
+<p>set PYTHONHOME if you have preinstalled version of python</td>\r
+<td class="whs25">\r
+<p>Unfortunately we can't check the version number. <br>\r
+We try to find Numeric folder in ${PYTHONHOME}/lib/python2.2/site-packages/Numeric \r
+ folder. <br>\r
+If you have problem with preinstalled version of numeric 22.0 reinstall \r
+ it.</td></tr>\r
+\r
+<tr>\r
+<td class="whs25">\r
+<p>Sip 3.3.2</td>\r
+<td class="whs25">\r
+<p>existence of SIPDIR <br>\r
+existence of sip <br>\r
+existence of libsip.so.9.1.0</td>\r
+<td class="whs25">\r
+<p>set SIPDIR to directory where you have sip preinstalled</td>\r
+<td class="whs25">\r
+<p>We try to find sip and libsip.so.9.1.0 in $SIPDIR folder if you set \r
+ SIPDIR , otherwise searching is done using $PATH and $LD_LIBRARY_PATH \r
+ accordingly. <br>\r
+It is recommended to use native Sip on Linux RedHat 8.0</td></tr>\r
+\r
+<tr>\r
+<td class="whs25">\r
+<p>PyQt 3.3.2</td>\r
+<td class="whs25">\r
+<p>existence of PYQTDIR <br>\r
+existence of libqtxmlcmodule.so.1.0.0</td>\r
+<td class="whs25">\r
+<p>set PYQTDIR to directory where you have sip preinstalled</td>\r
+<td class="whs25">\r
+<p>Unfortunately we can't check the version number. <br>\r
+We try to find libqtxmlcmodule.so.1.0.0 in $PYQTDIR folder if you set PYQTDIR, \r
+ otherwise searching is done using $LD_LIBRARY_PATH . <br>\r
+If you have problem with preinstalled version of PyQt 3.3.2 reinstall it. \r
+ <br>\r
+It is recommended to use native PyQt on Linux RedHat 8.0</td></tr>\r
+\r
+<tr>\r
+<td class="whs25">\r
+<p>HappyDoc 2.1</td>\r
+<td class="whs25">\r
+<p>existence of happydoc <br>\r
+ver=`happydoc | grep "HappyDoc version 2.1"`</td>\r
+<td class="whs25">\r
+<p>set PYTHONHOME if you have preinstalled version of python</td>\r
+<td class="whs25">\r
+<p>We try to find happydoc in $PYTHONHOME/bin folder. <br>\r
+ver should not be empty. <br>\r
+This product is not obligatory. It was added only for your comfort.</td></tr>\r
+\r
+<tr>\r
+<td class="whs25">\r
+<p class="whs27">Doxygen 1.3-rc2</td>\r
+<td class="whs25">\r
+<p>existence of doxygen <br>\r
+existence of doxysearch <br>\r
+existence of doxytag <br>\r
+existence of doxywizard</td>\r
+<td class="whs25">\r
+<p>set QTDIR if you have preinstalled version of qt <br>\r
+set PATH on a directory where doxygen, doxysearch, doxytag and doxywizard \r
+ can be found</td>\r
+<td class="whs25">\r
+<p>Unfortunately we can't check the version number. <br>\r
+It's necessary to have compiled Qt in order to build doxywizard. <br>\r
+If you have problem with preinstalled version of doxygen 1.3-rc2 reinstall \r
+ it. <br>\r
+This product is not obligatory. It was added only for your comfort.</td></tr>\r
+\r
+<tr>\r
+<td class="whs25">\r
+<p>Graphviz 1.9</td>\r
+<td class="whs25">\r
+<p>existence of dot</td>\r
+<td class="whs25">\r
+<p>add GraphViz's bin directory to the PATH environment variable</td>\r
+<td class="whs25">\r
+<p>Unfortunately we can't check the version number. <br>\r
+We try to find dot program in the $PATH</td></tr>\r
+\r
+<tr>\r
+<td class="whs25">\r
+<p>MODULE binaries<br>\r
+(MODULE=KERNEL,</p>\r
+<p>GEOM, ...)</td>\r
+<td class="whs25">\r
+<p>existence of MODULE_ROOT_DIR <br>\r
+existence of VERSION file <br>\r
+ver=`cat $MODULE_ROOT_DIR/bin/salome/VERSION | awk -F: '{print $2}' | tr \r
+ -d '[:space:]'`</td>\r
+<td class="whs25">\r
+<p>set MODULE_ROOT_DIR if you have preinstalled binaries of MODULE version \r
+ 1.4.x</td>\r
+<td class="whs25">\r
+<p>MODULE binaries should exist and ver should be equal to 1.4.x</td></tr>\r
+\r
+<tr>\r
+<td class="whs25">\r
+<p>MODULE sources<br>\r
+(MODULE=KERNEL,</p>\r
+<p>GEOM, ...)</td>\r
+<td class="whs25">\r
+<p>existence of MODULE_SRC_DIR <br>\r
+existence of VERSION file <br>\r
+ver=`cat $MODULE_SRC/bin/VERSION | awk -F: '{print $2}' | tr -d '[:space:]'`</td>\r
+<td class="whs25">\r
+<p>set MODULE_SRC_DIR if you have preinstalled sources of MODULE version \r
+ 1.4.x</td>\r
+<td class="whs25">\r
+<p>MODULE sources should exist and ver should be equal to 1.4.x</td></tr>\r
+</table>\r
+\r
+<p> </p>\r
+\r
+<p class="whs18"><b \r
+ style="font-weight: bold;"><img src="../note1.gif" x-maintain-ratio="TRUE" width="36px" height="38px" border="0" class="img_whs19"></b> For native products installation \r
+ procedure sets proper environment variables itself, and you do not need \r
+ to set such variables like, e.g. <b>TCLHOME</b> or <b>PYTHONHOME</b>. \r
+ <br>\r
+If you have native products installed to different from default directories \r
+ (not <b>/usr/bin</b>, <b>/usr/lib</b>...), it is recommended to follow \r
+ above description. Or you should set properly $PATH and $LD_LIBRARY_PATH \r
+ variables <b><font style="color: #ff0000;"\r
+ color=#FF0000>before</font></b> starting Installation \r
+ Wizard. Otherwise installation script will fail to find preinstalled products. \r
+ </p>\r
+\r
+\r
+<hr class="whs2">\r
+\r
+\r
+<h3><a name=pick_up_env></a>Pick up the <font style="color: #ff0000;"\r
+ color=#FF0000>environment</font></h3>\r
+\r
+<p>Please, read carefully the following information. This section describes \r
+ how the installation procedure collects environment. </p>\r
+\r
+<p>After installing each product shell script creates in the product root \r
+ folder special environment file. The name of the file is generated from \r
+ the name of product by the following scheme: <b>env_<product_name>.sh.</b> \r
+ This file includes all necessary product settings. For example for Vtk \r
+ the file is <b>env_Vtk.sh</b>. Environment files allows to pick up all \r
+ environment settings which are necessary to build and launch SALOME. When \r
+ installing SALOME sources and/or binaries, installation procedure picks \r
+ up all the settings files and generate two scripts: <b>salome.sh</b> and \r
+ <b>salome.csh </b>for sh and csh correspondingly. Such approach helps \r
+ to save time when reinstalling products and you may not to care about \r
+ setting all environment variables manually to build/launch SALOME. What \r
+ you need is just to use one of these scripts. </p>\r
+\r
+<p>This concerns also those products which are not currently installed. \r
+ For example, you install some SALOME binaries to the directory where you \r
+ have previously installed other products. Installation procedure \r
+ still tries to collect environment files from the target directory if \r
+ it find necessary products there. If some product is not found in the \r
+ target directory the corresponding section of <b>salome.sh/salome.csh</b> \r
+ files will be skipped. <br>\r
+For native products (<i><b>gcc, tcl, python, qt, sip, pyqt </b>for RedHat-8.0<b>)</b></i> \r
+ instal script tries to find them using <b>$PATH</b> / <b>$LD_LIBRARY_PATH</b> \r
+ variables and then in the system default directories (<b>/usr/bin, /usr/lib</b> \r
+ etc., depending on the product). </p>\r
+\r
+<p>In any case you may edit <b>salome.*</b> files after installation procedure \r
+ finishes, as you want. </p>\r
+\r
+\r
+<hr class="whs2">\r
+\r
+\r
+<h3><a name=xml_files></a>Modifying <font style="color: #ff0000;"\r
+ color=#FF0000>XML</font> configuration \r
+ <font style="color: #ff0000;"\r
+ color=#FF0000>file</font></h3>\r
+\r
+<p>You can create your own configuration. Installation Wizard then can \r
+ take it as command line argument to provide list of products you want \r
+ to install with it. The list of products and some another settings for \r
+ the Installation Wizard are provided in xml file. The default file which \r
+ Installation Wizard looks for if no command line arguments ar given, is \r
+ <b>config.xml</b>. This section describes the format of configuration \r
+ file. <br>\r
+Xml tags are in bold blue, optional sections/tags are in brackets. </p>\r
+\r
+<p> </p>\r
+\r
+<p><b style="font-weight: bold;"><font style="color: #000099;"\r
+ color=#000099><document></font></b> \r
+ <font style="color: #000000;"\r
+ color=#000000><b><br>\r
+ </b>[</font><b><font style="color: #000099;"\r
+ color=#000099><config</font></b><font \r
+ style="color: #000000;"\r
+ color=#000000> [version=<install_wizard_version>]</font> <font \r
+ style="color: #000000;"\r
+ color=#000000><br>\r
+ \r
+ [caption=<install_wizard_caption>]</font> <font style="color: #000000;"\r
+ color=#000000><br>\r
+ \r
+ [copyright=<install_wizard_copyright>]</font> <font style="color: #000000;"\r
+ color=#000000><br>\r
+ \r
+ [license=<install_wizard_license_info>]</font> <font style="color: #000000;"\r
+ color=#000000><br>\r
+ \r
+ [os=<target_paltform>]</font><b><font style="color: #000099;"\r
+ color=#000099>/></font></b><font \r
+ style="color: #000000;"\r
+ color=#000000>]</font> <font style="color: #000000;"\r
+ color=#000000><b><br>\r
+ </b>[</font><b><font style="color: #000099;"\r
+ color=#000099><path</font></b><font \r
+ style="color: #000000;"\r
+ color=#000000> [targetdir=<target_directory>]</font> <font style="color: #000000;"\r
+ color=#000000><br>\r
+ \r
+ [tempdir=<temp_directory>]</font><b><font style="color: #000099;"\r
+ color=#000099>/></font></b><font \r
+ style="color: #000000;"\r
+ color=#000000>]</font> <font style="color: #000000;"\r
+ color=#000000><br>\r
+ [</font><b><font style="color: #000099;"\r
+ color=#000099><product</font></b><font \r
+ style="color: #000000;"\r
+ color=#000000> name=<product_name></font> <font style="color: #000000;"\r
+ color=#000000><br>\r
+ \r
+ version=<product_version></font> <br>\r
+ \r
+ [description=<product_description>]<font \r
+ style="color: #000000;"\r
+ color=#000000><br>\r
+ \r
+ install=<installation_mode></font> <font style="color: #000000;"\r
+ color=#000000><br>\r
+ \r
+ supported=<supported_installation_modes></font> <font style="color: #000000;"\r
+ color=#000000><br>\r
+ \r
+ disable=<disable_flag><br>\r
+ \r
+ [pickupenv=<pickup_env_flag>]</font><font style="color: #000000;"\r
+ color=#000000><br>\r
+ \r
+ dependancies=<list_of_prerequisites></font> <font style="color: #000000;"\r
+ color=#000000><br>\r
+ \r
+ installdiskspace=<install_disk_space></font> <font style="color: #000000;"\r
+ color=#000000><br>\r
+ \r
+ temporarydiskspace=<tmp_disk_space></font> <font style="color: #000000;"\r
+ color=#000000><br>\r
+ \r
+ script=<installation_script_name></font><font style="color: #000099;"\r
+ color=#000099>/<b>></b></font><font \r
+ style="color: #000000;"\r
+ color=#000000>]</font> <font style="color: #000000;"\r
+ color=#000000><br>\r
+ [</font><b><font style="color: #000099;"\r
+ color=#000099><product</font></b><font \r
+ style="color: #000000;"\r
+ color=#000000> ... </font><font style="color: #000099;"\r
+ color=#000099>/<b>></b></font><font \r
+ style="color: #000000;"\r
+ color=#000000>]</font> <font style="color: #000000;"\r
+ color=#000000><br>\r
+ <b> .</b></font><b><font style="color: #000099;"\r
+ color=#000099>..</font></b> \r
+ <b><font style="color: #000099;"\r
+ color=#000099><br>\r
+</document></font></b> </p>\r
+\r
+<h4><font style="color: #000000;"\r
+ color=#000000><config> section</font></h4>\r
+\r
+<p><font style="color: #000000;"\r
+ color=#000000>This is optional section - contains general information \r
+ Installation Wizard itself.</font> </p>\r
+\r
+<ul>\r
+ \r
+ <li style="/*begin!kadov{{*/ color: #000000; /*}}end!kadov*/ "\r
+ class=kadov-p><p><font style="color: #000000;"\r
+ color=#000000><b style="font-weight: bold;">version</b>: \r
+ Installation Wizard's version number;</font></p></li>\r
+ \r
+ <li style="/*begin!kadov{{*/ color: #000000; /*}}end!kadov*/ "\r
+ class=kadov-p><p><font style="color: #000000;"\r
+ color=#000000><b style="font-weight: bold;">caption</b>: \r
+ Installation Wizard's main window title - if this string contains '%1' \r
+ text - the title will contain in this place version number (see above);</font></p></li>\r
+ \r
+ <li style="/*begin!kadov{{*/ color: #000000; /*}}end!kadov*/ "\r
+ class=kadov-p><p><font style="color: #000000;"\r
+ color=#000000><b style="font-weight: bold;">copyright</b>: \r
+ Installation Wizard's copyright information (appears on the first page \r
+ of program);</font></p></li>\r
+ \r
+ <li style="/*begin!kadov{{*/ color: #000000; /*}}end!kadov*/ "\r
+ class=kadov-p><p><font style="color: #000000;"\r
+ color=#000000><b style="font-weight: bold;">license</b>: \r
+ Installation Wizard's license information (appears on the first page of \r
+ program);</font></p></li>\r
+ \r
+ <li class=kadov-p><p><b style="font-weight: bold;">os</b>: Contains \r
+ directory name (relative from ./Products/BINARIES) where Installation \r
+ Wizard should search precompiled binaries packages. If this tag is skipped, \r
+ binaries are implied to be in the ./Products/BINARIES directory.</p></li>\r
+</ul>\r
+\r
+<p> </p>\r
+\r
+<p><b style="font-weight: bold;"><path> section</b></p>\r
+\r
+<p> </p>\r
+\r
+<p>This is optional section - contains default directories. </p>\r
+\r
+<p> </p>\r
+\r
+<ul>\r
+ \r
+ <li style="/*begin!kadov{{*/ color: #000000; /*}}end!kadov*/ "\r
+ class=kadov-p><p><font style="color: #000000;"\r
+ color=#000000><b style="font-weight: bold;">targetdir</b>: \r
+ Starting target directory - path to the directory where products should \r
+ be installed;</font></p></li>\r
+ \r
+ <li class=kadov-p><p><b style="font-weight: bold;">tempdir</b>: Starting \r
+ temp directory - path to the directory for the temporary files.</p></li>\r
+</ul>\r
+\r
+<p> </p>\r
+\r
+<p><b style="font-weight: bold;"><product> section</b></p>\r
+\r
+<p> </p>\r
+\r
+<p>This section describes product to be installed with the Installation \r
+ Wizard. All tags are obligatory. Products appears in the products tree \r
+ and are installed in the order they are described in the configuration \r
+ file. It is recommended to insert native products at the top of the list \r
+ before all other products. </p>\r
+\r
+ <br>\r
+\r
+<ul>\r
+ \r
+ <li class=kadov-p\r
+ style="/*begin!kadov{{*/ color: #000000; /*}}end!kadov*/ "\r
+ class=kadov-p><font style="color: #000000;"\r
+ color=#000000><b style="font-weight: bold;">name</b>: \r
+ Name of the product;</font></li>\r
+ \r
+ <li class=kadov-p\r
+ style="/*begin!kadov{{*/ color: #000000; /*}}end!kadov*/ "\r
+ class=kadov-p><font style="color: #000000;"\r
+ color=#000000><b style="font-weight: bold;">version</b>: \r
+ Version of the product;</font></li>\r
+ \r
+ <li class=kadov-p\r
+ style="/*begin!kadov{{*/ color: #000000; /*}}end!kadov*/ "\r
+ class=kadov-p><font style="color: #000000;"\r
+ color=#000000><span style="font-weight: bold;"><B>description</B></span>: \r
+ Description of the product (optional);</font></li>\r
+ \r
+ <li class=kadov-p\r
+ style="/*begin!kadov{{*/ color: #000000; /*}}end!kadov*/ "\r
+ class=kadov-p><font style="color: #000000;"\r
+ color=#000000><b style="font-weight: bold;">supported</b>: \r
+ Supported modes of installation, should contain one or more of the following \r
+ options, separated by comma: <i>install sources</i>, <i>install binaries</i>, \r
+ <i>use native</i>. Installation script should contain corresponding functions \r
+ for each of supported installation modes;</font></li>\r
+ \r
+ <li class=kadov-p\r
+ style="/*begin!kadov{{*/ color: #000000; /*}}end!kadov*/ "\r
+ class=kadov-p><font style="color: #000000;"\r
+ color=#000000><b style="font-weight: bold;">install</b>: \r
+ Default (starting) installation mode;</font></li>\r
+ \r
+ <li class=kadov-p\r
+ style="/*begin!kadov{{*/ color: #000000; /*}}end!kadov*/ "\r
+ class=kadov-p><font style="color: #000000;"\r
+ color=#000000><b style="font-weight: bold;">disable</b>: \r
+ If this flag has 'true' value, corresponding product will not appear in \r
+ the list of products tree and will not be installed;</font></li>\r
+ \r
+ <li class=kadov-p\r
+ class=kadov-p><b style="font-weight: bold;">pickupenv</b>: This \r
+ flag points that pickup environment procedure should be performed for \r
+ this module. If this flag equal to <b>true</b>, salome.sh and salome.csh \r
+ files will be created in the product's installation directory. This \r
+ is optional key, default value is <b>false.</b></li>\r
+ \r
+ <li class=kadov-p\r
+ style="/*begin!kadov{{*/ color: #000000; /*}}end!kadov*/ "\r
+ class=kadov-p><font style="color: #000000;"\r
+ color=#000000><b style="font-weight: bold;">dependancies</b>: \r
+ list of prerequisite products, which are necessary to build this product, \r
+ separated by comma;</font></li>\r
+ \r
+ <li class=kadov-p\r
+ style="/*begin!kadov{{*/ color: #000000; /*}}end!kadov*/ "\r
+ class=kadov-p><font style="color: #000000;"\r
+ color=#000000><b style="font-weight: bold;">installdiskspace</b>: \r
+ Total amount space (integer, in Kbytes), which product occupies on the \r
+ hard drive after the installation;</font></li>\r
+ \r
+ <li class=kadov-p\r
+ style="/*begin!kadov{{*/ color: #000000; /*}}end!kadov*/ "\r
+ class=kadov-p><font style="color: #000000;"\r
+ color=#000000><b style="font-weight: bold;">temporarydiskspace</b>: \r
+ Disk space (integer, in Kbytes) for the temporary files, which is necessary \r
+ to build the product from the sources;</font></li>\r
+ \r
+ <li class=kadov-p\r
+ class=kadov-p><b style="font-weight: bold;">script</b>: Installation \r
+ script name. This script is in charge of installation of the product. \r
+ It is called when necessary from the main program. See <a href="#new_products">next \r
+ section</a> for more information.</li>\r
+</ul>\r
+\r
+ \r
+\r
+<p class="whs18"><span \r
+ style="font-weight: bold;"><B><img src="../note1.gif" x-maintain-ratio="TRUE" width="36px" height="38px" border="0" class="img_whs19"></B></span> If you add new products \r
+ to be installed with Installation Wizard, you should also provide installation \r
+ script for this product. See next section for more details. </p>\r
+\r
+\r
+<hr class="whs2">\r
+\r
+\r
+<h3><a name=new_products></a>Implementing <font style="color: #ff0000;"\r
+ color=#FF0000>installation \r
+ scripts</font> for the new products</h3>\r
+\r
+<p>When you want some product to be installed with the Installation Wizard, \r
+ you should add it's description it <a href="#xml_files">in the configuration \r
+ file</a> and create bash installation script, following described in this \r
+ section rules. <br>\r
+There are some obligatory functions to be provided in this installation \r
+ script. These functions are automatically called by master installation \r
+ script or/and GUI shell when it is necessary.<br>\r
+File <b>common.sh</b> contains some service functions which can be used \r
+ in your installation script, like <b>make_env()</b>,<b> make_dir()</b>, \r
+ <b>try_existing()</b>, <b>sort_path()</b>,<b> find_in_path()</b>, etc. \r
+ </p>\r
+\r
+ <br>\r
+\r
+<ul>\r
+ \r
+ <li class=kadov-p\r
+ class=kadov-p><b style="font-weight: bold;">check_version()</b>: \r
+ This function allows to check the version of the product already installed \r
+ on the computer. It should try to find product (native or preinstalled \r
+ in the target directory) and check it version. This helps to avoid unnecessary \r
+ reinstallation. This is internal function and is not called</li>\r
+ \r
+ <li class=kadov-p\r
+ class=kadov-p><b style="font-weight: bold;"><font style="color: #000000;"\r
+ color=#000000>try_native()</font></b><font \r
+ style="color: #000099;"\r
+ color=#000099>: </font><font style="color: #000000;"\r
+ color=#000000>This function is called when \r
+ <i>'use native' </i>installation mode is selected by the user. The function \r
+ should try to find native version of the product and define possibility \r
+ of it usage. Should create environment for the product in the temporary \r
+ directory (see also description of <b>print_env(</b>) function). If you \r
+ do not provide native mode installation, you can omit this function.</font></li>\r
+ \r
+ <li class=kadov-p\r
+ style="/*begin!kadov{{*/ color: #000000; /*}}end!kadov*/ "\r
+ class=kadov-p><font style="color: #000000;"\r
+ color=#000000><b style="font-weight: bold;">install_source()</b>: \r
+ This function is called when <i>'install sources</i>' installation mode \r
+ is selected by the user. The function is responsible for the building \r
+ of the product from the sources package. Should create environment for \r
+ the product in the temporary directory (see also description of <b>print_env(</b>) \r
+ function). If you do not provide sources mode installation, you can omit \r
+ this function</font></li>\r
+ \r
+ <li class=kadov-p\r
+ style="/*begin!kadov{{*/ color: #000000; /*}}end!kadov*/ "\r
+ class=kadov-p><font style="color: #000000;"\r
+ color=#000000><b style="font-weight: bold;">install_binary()</b>: \r
+ This function is called when <i>'install binaries'</i> installation mode \r
+ is selected by the user. The function is responsible for the extracting \r
+ of the product from the binaries package. Should create environment for \r
+ the product in the temporary directory (see also description of <b>print_env(</b>) \r
+ function). If you do not provide binaries mode installation, you can omit \r
+ this function.</font></li>\r
+ \r
+ <li class=kadov-p\r
+ class=kadov-p><b style="font-weight: bold;">try_preinstalled()</b>: \r
+ <font style="color: #000000;"\r
+ color=#000000>This function is called when<i> 'not install'</i> \r
+ installation mode is selected by the user. In this case script should \r
+ inspect target directory to try to find already preinstalled product, \r
+ pick up and check environment from there. See <a href="#pick_up_env">here</a> \r
+ for more details.</font></li>\r
+ \r
+ <li class=kadov-p\r
+ class=kadov-p><font style="color: #000000;"\r
+ color=#000000><b style="font-weight: bold;">print_env()</b>: \r
+ This function is in charge of creation environment script. It should create \r
+ file with name </font><b>env_<product_name>.sh</b> in the temporary \r
+ directory and then copy it into the product installation directory. The \r
+ file should contain all necessary environment variables settings for the \r
+ product. It will be collected during the 'pick-up-environment' procedure.</li>\r
+ \r
+ <li class=kadov-p\r
+ class=kadov-p><b style="font-weight: bold;">pickup-env()</b>: This \r
+ procedure corresponds <b>pickupenv</b> tag of the configuration xml file \r
+ (see previous section). Should call <b>make_env</b> procedure to perform \r
+ pick-up environment procedure for the product.</li>\r
+</ul>\r
+\r
+ \r
+\r
+<p><font style="color: #000000;"\r
+ color=#000000>The calling signature of the product installation \r
+ script is following:</font> <b><font style="color: #000000;"\r
+ color=#000000><br>\r
+<product_script_name> <function_name> <temp_folder> <products_directory> \r
+ <target_directory> <dependancies> <product_name></font></b> \r
+ </p>\r
+\r
+<p><font style="color: #000000;"\r
+ color=#000000>where</font> <font style="color: #000000;"\r
+ color=#000000><b><br>\r
+<product_script_name></b> - installation script name (described in \r
+ configuration xml file);</font> <font style="color: #000000;"\r
+ color=#000000><b><br>\r
+<function_name></b> - the name of function, corresponding to the \r
+ selected installation mode: <i>try_native, install_source, install_binary</i> \r
+ or <i>try_preinstalled</i>;</font> <font style="color: #000000;"\r
+ color=#000000><b><br>\r
+<temp_folder></b> - temporary files directory;</font> <font style="color: #000000;"\r
+ color=#000000><b><br>\r
+<products_directory></b> - directory where the sources/binaries package \r
+ can be found. You should provide sources package in the <i><Install_Wizard_root_directory>/Products/SOURCES</i> \r
+ directory and binaries package in the <i><InstallWizard_root_directory>/Products/BINARIES/<os_version></i>, \r
+ where <os_version> is target platform description, which appears \r
+ in the corresponding section of the <a href="#xml_files">configuration \r
+ xml file</a>.</font> <font style="color: #000000;"\r
+ color=#000000><b><br>\r
+<target_directory></b> - root target directory where product should \r
+ be installed to;</font> <font style="color: #000000;"\r
+ color=#000000><b><br>\r
+<dependancies></b> - single-quoted list of prerequisite products, \r
+ separated by space;</font> <font style="color: #000000;"\r
+ color=#000000><b><br>\r
+<product_name> </b>- product name itself.</font> </p>\r
+\r
+<p> </p>\r
+\r
+<p class="whs18"><i><img src="../pics/exemple.gif" x-maintain-ratio="TRUE" width="36px" height="38px" border="0" class="img_whs28">med-2.1.6.sh install_binary /tmp/work ./Products/BINARIES/RedHat8.0 \r
+ /usr/salome 'gcc Hdf' med</i> </p>\r
+\r
+<p class="whs18"><font \r
+ style="color: #000000;"\r
+ color=#000000>Copy created script into the <i><Install_Wizard_root_directory>/config_files</i> \r
+ sub-directory where all installation scripts are stored. Installation \r
+ Wizard will automatically search and call your script during the installation \r
+ procedure.</font> </p>\r
+\r
+\r
+<hr class="whs2">\r
+\r
+\r
+ \r
+\r
+<br> \r
+ \r
+\r
+<script type="text/javascript" language="javascript1.2">\r
+<!--\r
+if (window.writeIntopicBar)\r
+ writeIntopicBar(0);\r
+//-->\r
+</script>\r
+</body>\r
+</html>\r
--- /dev/null
+<!doctype HTML public "-//W3C//DTD HTML 4.0 Frameset//EN">\r
+\r
+<html>\r
+\r
+<!--(==============================================================)-->\r
+<!--(Document created with RoboEditor. )============================-->\r
+<!--(==============================================================)-->\r
+\r
+<head>\r
+\r
+<title>Running SALOME</title>\r
+\r
+<!--(Meta)==========================================================-->\r
+\r
+<meta http-equiv=content-type content="text/html; charset=windows-1252">\r
+<meta name=generator content="RoboHELP by eHelp Corporation - www.ehelp.com">\r
+<meta name=generator-major-version content=0.1>\r
+<meta name=generator-minor-version content=1>\r
+<meta name=filetype content=kadov>\r
+<meta name=filetype-version content=1>\r
+<meta name=page-count content=1>\r
+<meta name=layout-height content=1118>\r
+<meta name=layout-width content=707>\r
+\r
+\r
+<!--(Links)=========================================================-->\r
+\r
+ <link rel='stylesheet' href='../default_ns.css'>\r
+<script type="text/javascript" language="JavaScript" title="WebHelpSplitCss">\r
+<!--\r
+if (navigator.appName !="Netscape")\r
+{ document.write("<link rel='stylesheet' href='../default.css'>");}\r
+//-->\r
+</script>\r
+<style type="text/css">\r
+<!--\r
+h1.whs1 {font-family: 'Times New Roman', serif;}\r
+p.whs2 {margin-left: 0px; font-style: italic; color: #000000; font-family: 'Arial Black', sans-serif;}\r
+p.whs3 {font-family: 'Times New Roman', serif; margin-left: 0px;}\r
+p.whs4 {font-family: 'Times New Roman', serif; margin-left: 40px; font-style: normal; color: #000000;}\r
+p.whs5 {font-family: 'Times New Roman', serif; color: #ff0000; font-style: italic; margin-left: 40px;}\r
+p.whs6 {font-family: 'Times New Roman', serif; margin-left: 40px; color: #000000; font-style: normal;}\r
+p.whs7 {font-family:'Courier New' , monospace; margin-left:0px; background-image:url(../texture_horiz_ltbluebubbles.jpg); }\r
+img_whs8 {border-style: none; border: none; width: 35px; height: 37px; float: none;}\r
+p.whs9 {margin-left: 0px;}\r
+p.whs10 {margin-left: 40px;}\r
+p.whs11 {margin-left: 40px; font-style: normal; color: #000000; font-weight: normal; font-family: 'Times New Roman', serif;}\r
+ul.whs12 {list-style: disc;}\r
+table.whs13 {x-cell-content-align: top; width: 96.029%; border-spacing: 0px; border-left-style: Solid; border-left-width: 1px; border-right-style: Solid; border-right-width: 1px; border-top-style: Solid; border-top-width: 1px; border-bottom-style: Solid; border-bottom-width: 1px; border-left-color: #c0c0c0; border-right-color: #c0c0c0; border-top-color: #c0c0c0; border-bottom-color: #c0c0c0; border-spacing: 0px;}\r
+col.whs14 {width: 214px;}\r
+col.whs15 {width: 390px;}\r
+tr.whs16 {x-cell-content-align: top; height: 41px;}\r
+td.whs17 {width: 214px; padding-right: 10px; padding-left: 10px; background-color: #400080; border-left-color: #c0c0c0; border-top-color: #c0c0c0; border-top-style: Solid; border-bottom-color: #c0c0c0; border-bottom-width: 1px; border-bottom-style: Solid; border-right-color: #c0c0c0; border-right-width: 1px; border-right-style: Solid; border-left-width: 1px; border-left-style: Solid; border-top-width: 1px;}\r
+p.whs18 {color: #ffffff;}\r
+td.whs19 {width: 390px; padding-right: 10px; padding-left: 10px; background-color: #400080; border-top-color: #c0c0c0; border-top-style: Solid; border-right-color: #c0c0c0; border-right-style: Solid; border-bottom-color: #c0c0c0; border-bottom-width: 1px; border-bottom-style: Solid; border-top-width: 1px; border-right-width: 1px;}\r
+td.whs20 {width: 214px; padding-right: 10px; padding-left: 10px; border-left-color: #c0c0c0; border-bottom-color: #c0c0c0; border-bottom-width: 1px; border-bottom-style: Solid; border-right-color: #c0c0c0; border-right-width: 1px; border-right-style: Solid; border-left-width: 1px; border-left-style: Solid;}\r
+td.whs21 {width: 390px; padding-right: 10px; padding-left: 10px; border-right-color: #c0c0c0; border-right-style: Solid; border-bottom-color: #c0c0c0; border-bottom-width: 1px; border-bottom-style: Solid; border-right-width: 1px;}\r
+td.whs22 {width: 214px; padding-right: 10px; padding-left: 10px; border-left-color: #c0c0c0; border-bottom-color: #c0c0c0; border-bottom-style: Solid; border-right-color: #c0c0c0; border-right-width: 1px; border-right-style: Solid; border-left-width: 1px; border-left-style: Solid; border-bottom-width: 1px;}\r
+td.whs23 {width: 390px; padding-right: 10px; padding-left: 10px; border-right-color: #c0c0c0; border-right-style: Solid; border-bottom-color: #c0c0c0; border-bottom-style: Solid; border-bottom-width: 1px; border-right-width: 1px;}\r
+td.whs24 {width: 214px; padding-right: 10px; padding-left: 10px; border-left-style: Solid; border-left-width: 1px; border-left-color: #c0c0c0; border-right-style: Solid; border-right-width: 1px; border-right-color: #c0c0c0; border-bottom-width: 1px; border-bottom-style: Solid; border-bottom-color: #c0c0c0;}\r
+td.whs25 {width: 390px; padding-right: 10px; padding-left: 10px; border-right-width: 1px; border-right-style: Solid; border-right-color: #c0c0c0; border-bottom-width: 1px; border-bottom-style: Solid; border-bottom-color: #c0c0c0;}\r
+td.whs26 {width: 214px; padding-right: 10px; padding-left: 10px; border-left-color: #c0c0c0; border-left-width: 1px; border-left-style: Solid; border-right-color: #c0c0c0; border-right-width: 1px; border-right-style: Solid; border-bottom-color: #c0c0c0; border-bottom-style: Solid; border-bottom-width: 1px;}\r
+td.whs27 {width: 390px; padding-right: 10px; padding-left: 10px; border-right-color: #c0c0c0; border-right-style: Solid; border-right-width: 1px; border-bottom-color: #c0c0c0; border-bottom-style: Solid; border-bottom-width: 1px;}\r
+p.whs28 {font-weight:bold; margin-left:0px; font-family:'Courier New' , monospace; background-image:url(../texture_horiz_ltbluebubbles.jpg); }\r
+p.whs29 {font-family: 'Times New Roman', serif; margin-left: 80px;}\r
+p.whs30 {font-family: 'Courier New', monospace; margin-left: 0px;}\r
+-->\r
+</style>\r
+<script type="text/javascript" language="JavaScript">\r
+<!--\r
+if ((navigator.appName == "Netscape") && (parseInt(navigator.appVersion) == 4))\r
+{\r
+ var strNSS = "<style type='text/css'>";\r
+ strNSS += "p.whs2 {margin-left:1; }";\r
+ strNSS += "p.whs3 {margin-left:1; }";\r
+ strNSS += "p.whs7 {margin-left:1; }";\r
+ strNSS += "p.whs9 {margin-left:1; }";\r
+ strNSS += "p.whs28 {margin-left:1; }";\r
+ strNSS += "p.whs30 {margin-left:1; }";\r
+ strNSS +="</style>";\r
+ document.write(strNSS);\r
+}\r
+//-->\r
+</script>\r
+<script type="text/javascript" language="JavaScript" title="BSSC Special Effects" src="../ehlpdhtm.js"></script><script type="text/javascript" language="JavaScript" title="WebHelpInlineScript">\r
+<!--\r
+function reDo() {\r
+ if (innerWidth != origWidth || innerHeight != origHeight)\r
+ location.reload();\r
+}\r
+if ((parseInt(navigator.appVersion) == 4) && (navigator.appName == "Netscape")) {\r
+ origWidth = innerWidth;\r
+ origHeight = innerHeight;\r
+ onresize = reDo;\r
+}\r
+onerror = null; \r
+//-->\r
+</script>\r
+<style type="text/css">\r
+<!--\r
+ div.WebHelpPopupMenu {position:absolute; left:0px; top:0px; z-index:4; visibility:hidden;}\r
+-->\r
+</style>\r
+<script type="text/javascript" language="javascript1.2" src="../whmsg.js"></script>\r
+<script type="text/javascript" language="javascript" src="../whver.js"></script>\r
+<script type="text/javascript" language="javascript1.2" src="../whproxy.js"></script>\r
+<script type="text/javascript" language="javascript1.2" src="../whutils.js"></script>\r
+<script type="text/javascript" language="javascript1.2" src="../whtopic.js"></script>\r
+</head>\r
+\r
+<!--(Body)==========================================================-->\r
+\r
+\r
+<body>\r
+\r
+<script type="text/javascript" language="javascript1.2">\r
+<!--\r
+if (window.gbWhTopic)\r
+{\r
+ if (window.addTocInfo)\r
+ {\r
+ addTocInfo("About SALOME\nRunning SALOME");\r
+addButton("show",BTN_TEXT,"Show","","","","",0,0,"","","");\r
+\r
+ }\r
+ if (window.writeBtnStyle)\r
+ writeBtnStyle();\r
+\r
+ if (window.writeIntopicBar)\r
+ writeIntopicBar(1);\r
+\r
+ if (window.setRelStartPage)\r
+ {\r
+ setRelStartPage("../kernel.html");\r
+\r
+ autoSync(0);\r
+ sendSyncInfo();\r
+ sendAveInfoOut();\r
+ }\r
+}\r
+else\r
+ document.location.reload();\r
+//-->\r
+</script>\r
+<h1 class="whs1">Running SALOME</h1>\r
+\r
+<p class="whs2">To launch SALOME:</p>\r
+\r
+<p class="whs3"> </p>\r
+\r
+<p class="whs4">1. Install the SALOME package into a definite \r
+ directory (ex. <span style="font-weight: bold;"><B>SALOME</B></span>) on your \r
+ hard disk. It is preferable if you use the <a href="installing_salome_pro.htm">special \r
+ installation procedure</a> allowing to install the SALOME \r
+ platform and all corresponding applications. </p>\r
+\r
+<p class="whs5"> </p>\r
+\r
+<p class="whs6">2.<span style="font-family: 'Courier New', monospace;"> \r
+ </span>The installation shell script will create a special file: <b>env.csh</b> \r
+ (CShell file) in your <b><i><span style="font-style: normal; font-weight: bold;"><B>SALOME</B></span><span \r
+ style="font-weight: normal; font-style: normal;"> </span></i></b>directory. \r
+ This file contains all environment variables necessary for launching SALOME \r
+ platform with other application products provided with SALOME installation \r
+ package. You have a possibility to add one of them into your profile if \r
+ you enter in the command console the following:</p>\r
+\r
+<p class="whs6"> </p>\r
+\r
+<p class="whs6"><span style="font-family: 'Courier New', monospace;">source \r
+ env.csh </span></p>\r
+\r
+<p class="whs6"> </p>\r
+\r
+<p class="whs7"><img src="../tip1.gif" x-maintain-ratio="TRUE" width="35px" height="37px" border="0" class="img_whs8"> <span style="font-family: 'Times New Roman', serif;">During \r
+ the installation procedure you have a possibility <a href="installing_salome_pro.htm#profile">to \r
+ set your profile automatically.</a> </span> </p>\r
+\r
+<p class="whs9"> </p>\r
+\r
+<p> </p>\r
+\r
+<p class="whs10">3. Launch SALOME platform, using the following \r
+ Python script located in the <span style="font-weight: bold;"><B>SALOME/KERNEL/bin/salome</B></span> \r
+ directory:</p>\r
+\r
+<p class="whs11"> </p>\r
+\r
+<ul type="disc" class="whs12">\r
+ \r
+ <li class=kadov-p><p class="whs10"><span style="font-weight: bold;"><B>runSalome.py</B></span> \r
+ [command line options]</p></li>\r
+</ul>\r
+\r
+<p class="whs10"> </p>\r
+\r
+<!--(Table)=========================================================-->\r
+<table x-use-null-cells resizable="no" cellspacing="0" width="96.029%" class="whs13">\r
+<script language='JavaScript'><!--\r
+if ((navigator.appName == "Netscape") && (parseInt(navigator.appVersion) == 4)) document.write("</table><table x-use-null-cells resizable='no' cellspacing='0' width='96.029%' border='1' bordercolor='silver' bordercolorlight='silver' bordercolordark='silver'>");\r
+//--></script>\r
+<col class="whs14">\r
+<col class="whs15">\r
+\r
+<tr valign="top" class="whs16">\r
+<td bgcolor="#400080" width="214px" class="whs17">\r
+<p class="whs18">Options</td>\r
+<td bgcolor="#400080" width="390px" class="whs19">\r
+<p class="whs18">Description</td></tr>\r
+\r
+<tr valign="top" class="whs16">\r
+<td width="214px" class="whs20">\r
+<p><span style="font-weight: bold;"><B>--help</B></span> <span style="font-style: italic;"><I>or</I></span> \r
+ <span style="font-weight: bold;"><B>-h</B></span> </td>\r
+<td width="390px" class="whs21">\r
+<p>print this help</p>\r
+<p> </td></tr>\r
+\r
+<tr valign="top" class="whs16">\r
+<td width="214px" class="whs20">\r
+<p><span style="font-weight: bold;"><B>--gui</B></span> <span style="font-style: italic;"><I>or</I></span> \r
+ <span style="font-weight: bold;"><B>-g</B></span> </td>\r
+<td width="390px" class="whs21">\r
+<p>launch with GUI</td></tr>\r
+\r
+<tr valign="top" class="whs16">\r
+<td width="214px" class="whs20">\r
+<p> <span style="font-weight: bold;"><B><a \r
+ name=batchmode></a>--terminal</B></span> <span style="font-style: italic;"><I>or \r
+ </I></span><span style="font-weight: bold;"><B>-t</B></span> </td>\r
+<td width="390px" class="whs21">\r
+<p>launch without GUI in batch mode</td></tr>\r
+\r
+<tr valign="top" class="whs16">\r
+<td colspan="1" rowspan="1" width="214px" class="whs20">\r
+<p><span style="font-weight: bold;"><B>--logger</B></span> <span style="font-style: italic;"><I>or</I></span> \r
+ <span style="font-weight: bold;"><B>-l</B></span> </td>\r
+<td colspan="1" rowspan="1" width="390px" class="whs21">\r
+<p>redirection of log messages into a definite file </td></tr>\r
+\r
+<tr valign="top" class="whs16">\r
+<td colspan="1" rowspan="1" width="214px" class="whs20">\r
+<p><span style="font-weight: bold;"><B>--xterm</B></span> <span style="font-style: italic;"><I>or</I></span> \r
+ <span style="font-weight: bold;"><B>-x</B></span> </td>\r
+<td colspan="1" rowspan="1" width="390px" class="whs21">\r
+<p>the servers open an xterm window and log messages are displayed in this \r
+ window</td></tr>\r
+\r
+<tr valign="top" class="whs16">\r
+<td colspan="1" rowspan="1" width="214px" class="whs20">\r
+<p><span style="font-weight: bold;"><B>--modules=module1,module2,...</B></span> \r
+ <span style="font-style: italic;"><I>or</I></span> <span style="font-weight: bold;"><B>-m=module1,module2,...</B></span></td>\r
+<td colspan="1" rowspan="1" width="390px" class="whs21">\r
+<p>list of SALOME modules which will be loaded into the module catalogue</td></tr>\r
+\r
+<tr valign="top" class="whs16">\r
+<td colspan="1" rowspan="1" width="214px" class="whs22">\r
+<p><span style="font-weight: bold;"><B>--containers=cpp,python,superv</B></span></p>\r
+<p><span style="font-style: italic;"><I>or</I></span> <span style="font-weight: bold;"><B>-c=cpp,python,superv</B></span></td>\r
+<td colspan="1" rowspan="1" width="390px" class="whs23">\r
+<p>launch of cpp, python and supervision containers</td></tr>\r
+\r
+<tr valign="top" class="whs16">\r
+<td colspan="1" rowspan="1" width="214px" class="whs24">\r
+<p><span style="font-weight: bold;"><B>--portkill</B></span> <span style="font-style: italic;"><I>or</I></span> \r
+ <span style="font-weight: bold;"><B>-p</B></span></td>\r
+<td colspan="1" rowspan="1" width="390px" class="whs25">\r
+<p>kill SALOME launched with the current port</td></tr>\r
+\r
+<tr valign="top" class="whs16">\r
+<td colspan="1" rowspan="1" width="214px" class="whs26">\r
+<p><span style="font-weight: bold;"><B>--killall</B></span> <span style="font-style: italic;"><I>or</I></span> \r
+ <span style="font-weight: bold;"><B>-k</B></span> </td>\r
+<td colspan="1" rowspan="1" width="390px" class="whs27">\r
+<p>kill SALOME</td></tr>\r
+<script language='JavaScript'><!--\r
+if ((navigator.appName == "Netscape") && (parseInt(navigator.appVersion) == 4)) document.write("</table></table><table>");\r
+//--></script>\r
+</table>\r
+\r
+<p class="whs10"> </p>\r
+\r
+<p class="whs28"><img src="../tip1.gif" x-maintain-ratio="TRUE" width="35px" height="37px" border="0" class="img_whs8"><span style="font-weight: normal; font-family: 'Times New Roman', serif;"> \r
+ If the </span><span style="font-family: 'Times New Roman', serif;">runSalome.py \r
+ </span><span style="font-family: 'Times New Roman', serif; font-weight: normal;">script \r
+ is launched without prompting any options, they will be taken by default \r
+ from the xml file </span><span style="font-family: 'Times New Roman', serif;">salome.launch</span><span \r
+ style="font-family: 'Times New Roman', serif; font-weight: normal;">, \r
+ which has been automatically created in your home directory: </span><span \r
+ style="font-family: 'Times New Roman', serif;">HOME/.salome/</span><span \r
+ style="font-family: 'Times New Roman', serif; font-weight: normal;">. \r
+ </span> </p>\r
+\r
+<p class="whs29"> </p>\r
+\r
+<p class="whs29"> </p>\r
+\r
+<p class="whs30">\r
+<a href="javascript:void(0);" onClick="var e; if (parseInt(navigator.appVersion)>=4){e=event;} if (parseInt(navigator.appVersion) >=2 && typeof(PopupMenu_Invoke) == 'function') PopupMenu_Invoke(e,'','About SALOME PRO architecture','about_salome_pro_architecture.htm','Installing SALOME PRO','installing_salome_pro.htm','Introduction to SALOME PRO','introduction_to_salome_pro.htm');return false;" title="Related Topics"><img src="../ss_btn_related_topics.gif" border=0 height=17 width=82 alt="Related Topics"></a></p>\r
+\r
+<p class="whs30"> </p>\r
+\r
+<p class="whs30"> </p>\r
+\r
+<p class="whs30"> </p>\r
+\r
+<script type="text/javascript" language="JavaScript" title="WebHelpRelatedTopics"><!--\r
+if (parseInt(navigator.appVersion) >= 3 && typeof (WritePopupMenuLayer) == "function")\r
+ WritePopupMenuLayer();\r
+//--></script><script type="text/javascript" language="javascript1.2">\r
+<!--\r
+if (window.writeIntopicBar)\r
+ writeIntopicBar(0);\r
+//-->\r
+</script>\r
+</body>\r
+\r
+</html>\r
--- /dev/null
+<!doctype HTML public "-//W3C//DTD HTML 4.0 Frameset//EN">\r
+\r
+<html>\r
+\r
+<!--(==============================================================)-->\r
+<!--(Document created with RoboEditor. )============================-->\r
+<!--(==============================================================)-->\r
+\r
+<head>\r
+\r
+<title>SALOME desktop</title>\r
+\r
+<!--(Meta)==========================================================-->\r
+\r
+<meta http-equiv=content-type content="text/html; charset=windows-1252">\r
+<meta name=generator content="RoboHELP by eHelp Corporation - www.ehelp.com">\r
+<meta name=generator-major-version content=0.1>\r
+<meta name=generator-minor-version content=1>\r
+<meta name=filetype content=kadov>\r
+<meta name=filetype-version content=1>\r
+<meta name=page-count content=1>\r
+<meta name=layout-height content=1822>\r
+<meta name=layout-width content=722>\r
+\r
+\r
+<!--(Links)=========================================================-->\r
+\r
+ <link rel='stylesheet' href='../default_ns.css'>\r
+<script type="text/javascript" language="JavaScript" title="WebHelpSplitCss">\r
+<!--\r
+if (navigator.appName !="Netscape")\r
+{ document.write("<link rel='stylesheet' href='../default.css'>");}\r
+//-->\r
+</script>\r
+<style type="text/css">\r
+<!--\r
+h1.whs1 {font-family: 'Times New Roman', serif;}\r
+p.whs2 {font-family: 'Times New Roman', serif;}\r
+img_whs3 {border-style: none; border: none; width: 700px; height: 489px; float: none;}\r
+p.whs4 {font-family: 'Times New Roman', serif; margin-left: 40px; font-weight: bold;}\r
+p.whs5 {font-family: 'Times New Roman', serif; margin-left: 40px;}\r
+p.whs6 {font-family:'Times New Roman' , serif; background-image:url(../texture_horiz_ltbluebubbles.jpg); }\r
+img_whs7 {border-style: none; border: none; float: none; width: 36px; height: 38px;}\r
+table.whs8 {float: alignleft; border-left-style: Outset; border-left-width: 1px; border-top-style: Outset; border-top-width: 1px; border-right-style: Outset; border-right-width: 1px; border-bottom-style: Outset; border-bottom-width: 1px; border-left-color: #c0c0c0; border-right-color: #c0c0c0; border-top-color: #c0c0c0; border-bottom-color: #c0c0c0; width: 83.333%; margin-left: 24px;}\r
+col.whs9 {width: 20%;}\r
+tr.whs10 {height: 174px;}\r
+td.whs11 {width: 20%; border-left-width: 1px; border-left-style: Inset; border-left-color: #808080; border-top-color: #808080; border-top-style: Inset; border-top-width: 1px; border-right-width: 1px; border-right-style: Inset; border-right-color: #808080; border-bottom-color: #808080; border-bottom-style: Inset; border-bottom-width: 1px; padding-right: 10px; padding-left: 10px; x-cell-content-align: top;}\r
+p.whs12 {font-weight: bold; font-size: 10pt; text-align: center;}\r
+img_whs13 {border-style: none; border: none; width: 25px; height: 26px; float: none;}\r
+p.whs14 {font-size: 10pt; font-weight: bold; text-align: center;}\r
+p.whs15 {text-align: center; font-weight: bold; font-size: 10pt;}\r
+p.whs16 {text-align: justify;}\r
+p.whs17 {background-image:url(../texture_horiz_ltbluebubbles.jpg); text-align:justify; }\r
+-->\r
+</style>\r
+<script type="text/javascript" language="JavaScript" title="BSSC Special Effects" src="../ehlpdhtm.js"></script><script type="text/javascript" language="JavaScript" title="WebHelpInlineScript">\r
+<!--\r
+function reDo() {\r
+ if (innerWidth != origWidth || innerHeight != origHeight)\r
+ location.reload();\r
+}\r
+if ((parseInt(navigator.appVersion) == 4) && (navigator.appName == "Netscape")) {\r
+ origWidth = innerWidth;\r
+ origHeight = innerHeight;\r
+ onresize = reDo;\r
+}\r
+onerror = null; \r
+//-->\r
+</script>\r
+<style type="text/css">\r
+<!--\r
+ div.WebHelpPopupMenu {position:absolute; left:0px; top:0px; z-index:4; visibility:hidden;}\r
+-->\r
+</style>\r
+<script type="text/javascript" language="javascript1.2" src="../whmsg.js"></script>\r
+<script type="text/javascript" language="javascript" src="../whver.js"></script>\r
+<script type="text/javascript" language="javascript1.2" src="../whproxy.js"></script>\r
+<script type="text/javascript" language="javascript1.2" src="../whutils.js"></script>\r
+<script type="text/javascript" language="javascript1.2" src="../whtopic.js"></script>\r
+</head>\r
+\r
+<!--(Body)==========================================================-->\r
+\r
+\r
+<body>\r
+\r
+<script type="text/javascript" language="javascript1.2">\r
+<!--\r
+if (window.gbWhTopic)\r
+{\r
+ if (window.addTocInfo)\r
+ {\r
+ addTocInfo("IAPP module\nSALOME desktop");\r
+addButton("show",BTN_TEXT,"Show","","","","",0,0,"","","");\r
+\r
+ }\r
+ if (window.writeBtnStyle)\r
+ writeBtnStyle();\r
+\r
+ if (window.writeIntopicBar)\r
+ writeIntopicBar(1);\r
+\r
+ if (window.setRelStartPage)\r
+ {\r
+ setRelStartPage("../kernel.html");\r
+\r
+ autoSync(0);\r
+ sendSyncInfo();\r
+ sendAveInfoOut();\r
+ }\r
+}\r
+else\r
+ document.location.reload();\r
+//-->\r
+</script>\r
+<h1 class="whs1">SALOME Desktop</h1>\r
+\r
+<p class="whs2">The main SALOME Desktop \r
+ consists of the following sections and toolbars:</p>\r
+\r
+<p class="whs2"> </p>\r
+\r
+<p class="whs2"><img src="../pics/desktop3.jpg" x-maintain-ratio="TRUE" width="700px" height="489px" border="0" class="img_whs3"></p>\r
+\r
+<p class="whs4">Basic parts of the SALOME Desktop:</p>\r
+\r
+<p class="whs5"> </p>\r
+\r
+<p class="whs2"><span style="font-weight: bold;"><B>Main \r
+ menu - </B></span>It's a set of context-sensitive menus, which will be updated \r
+ according the functionality of the loaded component. In general, these \r
+ menus contain all functional options of SALOME platform.</p>\r
+\r
+<p class="whs2"><span style="font-weight: bold;"><B>Standard \r
+ Toolbar - </B></span>This toolbar contains icons allowing creating/saving \r
+ studies, correcting mistakes, copying/pasting objects</p>\r
+\r
+<p class="whs2"><span style="font-weight: bold;"><B>Components \r
+ Toolbar - </B></span>This toolbar is destined for uploading components in \r
+ SALOME platform</p>\r
+\r
+<p class="whs2"><span style="font-weight: bold;"><B>Viewer \r
+ Toolbar - </B></span>It's a set of tools destined for visualization of the \r
+ presentations in the viewer. </p>\r
+\r
+<p class="whs2"> </p>\r
+\r
+<p class="whs6"><img src="../note1.gif" x-maintain-ratio="TRUE" width="36px" height="38px" border="0" class="img_whs7">These tools are context-sensitive. For different viewers combination \r
+ of these tools is different. </p>\r
+\r
+<p class="whs2"> </p>\r
+\r
+<!--(Table)=========================================================-->\r
+<div align=left><table x-use-null-cells width="83.333%" class="whs8">\r
+<script language='JavaScript'><!--\r
+if ((navigator.appName == "Netscape") && (parseInt(navigator.appVersion) == 4)) document.write("</table><table x-use-null-cells width='83.333%' border='1' bordercolor='gray' bordercolorlight='gray' bordercolordark='gray'>");\r
+//--></script>\r
+<col class="whs9">\r
+<col class="whs9">\r
+<col class="whs9">\r
+<col class="whs9">\r
+<col class="whs9">\r
+\r
+<tr class="whs10">\r
+<td valign="top" width="20%" class="whs11">\r
+<p align="center" class="whs12"><img src="../pics/dump.jpg" x-maintain-ratio="TRUE" width="25px" height="26px" border="0" class="img_whs13"></p>\r
+<p align="center" class="whs12">Camera dump</p>\r
+<p align="center" class="whs12">Saves images from the viewer in *.bmp, *.png, *.jpg, *.jpeg \r
+ files </td>\r
+<td valign="top" width="20%" class="whs11">\r
+<p align="center" class="whs12"><img src="../pics/trihedron.jpg" x-maintain-ratio="TRUE" width="25px" height="26px" border="0" class="img_whs13"></p>\r
+<p align="center" class="whs14">Shows/Hides Trihedron</td>\r
+<td valign="top" width="20%" class="whs11">\r
+<p align="center" class="whs12"><img src="../pics/fitall.jpg" x-maintain-ratio="TRUE" width="25px" height="26px" border="0" class="img_whs13"></p>\r
+<p align="center" class="whs12">Fits all displayed objects to the size of the window </td>\r
+<td valign="top" width="20%" class="whs11">\r
+<p align="center" class="whs12"><img src="../pics/fitrect.jpg" x-maintain-ratio="TRUE" width="25px" height="26px" border="0" class="img_whs13"></p>\r
+<p align="center" class="whs12">Fits within rectangle.</p>\r
+<p align="center" class="whs12"> Displays \r
+ in the whole window of the viewer outlined area of the presentation </p>\r
+<p align="center" class="whs12"> </td>\r
+<td valign="top" width="20%" class="whs11">\r
+<p align="center" class="whs12"><img src="../pics/zoom.jpg" x-maintain-ratio="TRUE" width="25px" height="26px" border="0" class="img_whs13"></p>\r
+<p align="center" class="whs12">Zooming of presentations</p>\r
+<p align="center" class="whs12"> </td></tr>\r
+\r
+<tr class="whs10">\r
+<td valign="top" width="20%" class="whs11">\r
+<p align="center" class="whs15"><img src="../pics/panning.jpg" x-maintain-ratio="TRUE" width="25px" height="26px" border="0" class="img_whs13"></p>\r
+<p align="center" class="whs15">Panning of presentations in the window</td>\r
+<td valign="top" width="20%" class="whs11">\r
+<p align="center" class="whs15"><img src="../pics/rotate.jpg" x-maintain-ratio="TRUE" width="25px" height="26px" border="0" class="img_whs13"></p>\r
+<p align="center" class="whs15">Rotation of presentations in 3d space</td>\r
+<td valign="top" width="20%" class="whs11">\r
+<p align="center" class="whs15"><img src="../pics/globalpanning.jpg" x-maintain-ratio="TRUE" width="25px" height="26px" border="0" class="img_whs13"></p>\r
+<p align="center" class="whs15">Global panning </td>\r
+<td valign="top" width="20%" class="whs11">\r
+<p align="center" class="whs15"><img src="../pics/frontv.jpg" x-maintain-ratio="TRUE" width="25px" height="26px" border="0" class="img_whs13"></p>\r
+<p align="center" class="whs15">Front view of presentations</td>\r
+<td valign="top" width="20%" class="whs11">\r
+<p align="center" class="whs15"><img src="../pics/backv.jpg" x-maintain-ratio="TRUE" width="25px" height="26px" border="0" class="img_whs13"></p>\r
+<p align="center" class="whs15">Back view of presentations</td></tr>\r
+\r
+<tr class="whs10">\r
+<td valign="top" width="20%" class="whs11">\r
+<p align="center" class="whs15"><img src="../pics/topv.jpg" x-maintain-ratio="TRUE" width="25px" height="26px" border="0" class="img_whs13"></p>\r
+<p align="center" class="whs15">Top view of presentations</td>\r
+<td valign="top" width="20%" class="whs11">\r
+<p align="center" class="whs15"><img src="../pics/bottomv.jpg" x-maintain-ratio="TRUE" width="25px" height="26px" border="0" class="img_whs13"></p>\r
+<p align="center" class="whs15">Bottom view of presentations</td>\r
+<td valign="top" width="20%" class="whs11">\r
+<p align="center" class="whs15"><img src="../pics/leftv.jpg" x-maintain-ratio="TRUE" width="25px" height="26px" border="0" class="img_whs13"></p>\r
+<p align="center" class="whs15">Left view of presentations</td>\r
+<td valign="top" width="20%" class="whs11">\r
+<p align="center" class="whs15"><img src="../pics/rightv.jpg" x-maintain-ratio="TRUE" width="25px" height="26px" border="0" class="img_whs13"></p>\r
+<p align="center" class="whs15">Right view of presentations</td>\r
+<td valign="top" width="20%" class="whs11">\r
+<p align="center" class="whs15"><img src="../pics/reset.jpg" x-maintain-ratio="TRUE" width="25px" height="26px" border="0" class="img_whs13"></p>\r
+<p align="center" class="whs15">Resets to initial position </td></tr>\r
+<script language='JavaScript'><!--\r
+if ((navigator.appName == "Netscape") && (parseInt(navigator.appVersion) == 4)) document.write("</table></table><table>");\r
+//--></script>\r
+</table>\r
+</div><p class="whs2"> </p>\r
+\r
+<p class="whs4">Parts of the \r
+ study window:</p>\r
+\r
+<p class="whs5"> </p>\r
+\r
+<p class="whs16"><span style="font-family: 'Times New Roman', serif;"><span \r
+ style="font-weight: bold;"><B>Object Browser / UseCase Browser - </B></span>Management \r
+ of objects created or imported into SALOME application</span></p>\r
+\r
+<p class="whs16"><span style="font-weight: bold;"><B>Viewer \r
+ - </B></span>This window is destined for visualization of presentations. In \r
+ SALOME the following viewers are integrated: VTK, OCC, Plot2d.<span style="font-family: 'Times New Roman', serif;"> \r
+ </span></p>\r
+\r
+<p class="whs16"><span style="font-weight: bold;"><B>Python \r
+ console</B></span> - Window for Python interpreter. This window functions \r
+ like a standard document: the pop-up menu invoked by right-click in this \r
+ window gives access to <span style="font-weight: bold;"><B>Copy/Paste/SelectAll/ClearAll \r
+ </B></span>options.</p>\r
+\r
+<p class="whs16"><span style="font-weight: bold;"><B>Output \r
+ messages - </B></span>This window displays all output messages produced by \r
+ SALOME during performance of operations. This window functions like a \r
+ standard document: the pop-up menu invoked by right-click in this window \r
+ gives access to <span style="font-weight: bold;"><B>Copy/SelectAll </B></span>options.</p>\r
+\r
+<p class="whs16"> </p>\r
+\r
+<p class="whs17"><img src="../note1.gif" x-maintain-ratio="TRUE" width="36px" height="38px" border="0" class="img_whs7"> For your convenience, the whole study window as well as all \r
+ its parts can be <span style="font-weight: bold;"><B>resized / minimized \r
+ / maximized</B></span>.</p>\r
+\r
+<p class="whs16"> </p>\r
+\r
+<p class="whs16"> </p>\r
+\r
+<p class="whs2"> </p>\r
+\r
+<p class="whs2">\r
+<a href="javascript:void(0);" onClick="var e; if (parseInt(navigator.appVersion)>=4){e=event;} if (parseInt(navigator.appVersion) >=2 && typeof(PopupMenu_Invoke) == 'function') PopupMenu_Invoke(e,'','Creating a new study','creating_a_new_study.htm','Displaying studies','displaying_studies.htm','Displaying/hiding toolbars','displaying_hiding_toolbars.htm','Editing studies','editing_studies.htm','Introduction to IAPP','introduction_to_iapp.htm','Saving and closing studies','saving_a_study.htm');return false;" title="Related Topics"><img src="../ss_btn_related_topics.gif" border=0 height=17 width=82 alt="Related Topics"></a></p>\r
+\r
+<p class="whs2"> </p>\r
+\r
+<p class="whs2"> </p>\r
+\r
+<p class="whs2"> </p>\r
+\r
+<p class="whs2"> </p>\r
+\r
+<script type="text/javascript" language="JavaScript" title="WebHelpRelatedTopics"><!--\r
+if (parseInt(navigator.appVersion) >= 3 && typeof (WritePopupMenuLayer) == "function")\r
+ WritePopupMenuLayer();\r
+//--></script><script type="text/javascript" language="javascript1.2">\r
+<!--\r
+if (window.writeIntopicBar)\r
+ writeIntopicBar(0);\r
+//-->\r
+</script>\r
+</body>\r
+\r
+</html>\r
--- /dev/null
+<!doctype HTML public "-//W3C//DTD HTML 4.0 Frameset//EN">\r
+\r
+<html>\r
+\r
+<!--(==============================================================)-->\r
+<!--(Document created with RoboEditor. )============================-->\r
+<!--(==============================================================)-->\r
+\r
+<head>\r
+\r
+<title>Saving a study</title>\r
+\r
+<!--(Meta)==========================================================-->\r
+\r
+<meta http-equiv=content-type content="text/html; charset=windows-1252">\r
+<meta name=generator content="RoboHELP by eHelp Corporation - www.ehelp.com">\r
+<meta name=generator-major-version content=0.1>\r
+<meta name=generator-minor-version content=1>\r
+<meta name=filetype content=kadov>\r
+<meta name=filetype-version content=1>\r
+<meta name=page-count content=1>\r
+<meta name=layout-height content=1302>\r
+<meta name=layout-width content=700>\r
+\r
+\r
+<!--(Links)=========================================================-->\r
+\r
+ <link rel='stylesheet' href='../default_ns.css'>\r
+<script type="text/javascript" language="JavaScript" title="WebHelpSplitCss">\r
+<!--\r
+if (navigator.appName !="Netscape")\r
+{ document.write("<link rel='stylesheet' href='../default.css'>");}\r
+//-->\r
+</script>\r
+<style type="text/css">\r
+<!--\r
+h1.whs1 {text-align: justify;}\r
+p.whs2 {text-align: justify;}\r
+img_whs3 {border-style: none; border: none; float: none; width: 30px; height: 30px;}\r
+p.whs4 {font-style: italic; color: #ff0000; text-align: justify;}\r
+ul.whs5 {list-style: disc;}\r
+p.whs6 {font-weight: bold; margin-left: 0px; text-align: justify;}\r
+p.whs7 {margin-left: 0px; text-align: justify;}\r
+p.whs8 {font-style: italic; text-align: justify; color: #000000; font-family: 'Arial Black', sans-serif;}\r
+p.whs9 {font-style: italic; color: #ff0000; margin-left: 40px; text-align: justify;}\r
+img_whs10 {border-style: none; border: none; width: 23px; height: 29px; float: none;}\r
+p.whs11 {margin-left:0px; background-image:url(../texture_horiz_ltbluebubbles.jpg); text-align:justify; }\r
+img_whs12 {border-style: none; border: none; float: none; width: 36px; height: 38px;}\r
+p.whs13 {margin-left: 0px; font-style: italic; text-align: justify; color: #000000; font-family: 'Arial Black', sans-serif;}\r
+p.whs14 {margin-left: 0px; font-style: italic; color: #ff0000; text-align: justify;}\r
+p.whs15 {margin-left: 40px; text-align: justify;}\r
+p.whs16 {font-style: italic; margin-left: 0px; text-align: justify; color: #000000; font-family: 'Arial Black', sans-serif;}\r
+p.whs17 {font-style: italic; color: #ff0000; margin-left: 0px; text-align: justify;}\r
+img_whs18 {border-style: none; border: none; width: 500px; height: 152px; float: none;}\r
+p.whs19 {margin-left: 0px; font-weight: bold; text-align: justify;}\r
+-->\r
+</style>\r
+<script type="text/javascript" language="JavaScript">\r
+<!--\r
+if ((navigator.appName == "Netscape") && (parseInt(navigator.appVersion) == 4))\r
+{\r
+ var strNSS = "<style type='text/css'>";\r
+ strNSS += "p.whs6 {margin-left:1; }";\r
+ strNSS += "p.whs7 {margin-left:1; }";\r
+ strNSS += "p.whs11 {margin-left:1; }";\r
+ strNSS += "p.whs13 {margin-left:1; }";\r
+ strNSS += "p.whs14 {margin-left:1; }";\r
+ strNSS += "p.whs16 {margin-left:1; }";\r
+ strNSS += "p.whs17 {margin-left:1; }";\r
+ strNSS += "p.whs19 {margin-left:1; }";\r
+ strNSS +="</style>";\r
+ document.write(strNSS);\r
+}\r
+//-->\r
+</script>\r
+<script type="text/javascript" language="JavaScript" title="BSSC Special Effects" src="../ehlpdhtm.js"></script><script type="text/javascript" language="JavaScript" title="WebHelpInlineScript">\r
+<!--\r
+function reDo() {\r
+ if (innerWidth != origWidth || innerHeight != origHeight)\r
+ location.reload();\r
+}\r
+if ((parseInt(navigator.appVersion) == 4) && (navigator.appName == "Netscape")) {\r
+ origWidth = innerWidth;\r
+ origHeight = innerHeight;\r
+ onresize = reDo;\r
+}\r
+onerror = null; \r
+//-->\r
+</script>\r
+<style type="text/css">\r
+<!--\r
+ div.WebHelpPopupMenu {position:absolute; left:0px; top:0px; z-index:4; visibility:hidden;}\r
+-->\r
+</style>\r
+<script type="text/javascript" language="javascript1.2" src="../whmsg.js"></script>\r
+<script type="text/javascript" language="javascript" src="../whver.js"></script>\r
+<script type="text/javascript" language="javascript1.2" src="../whproxy.js"></script>\r
+<script type="text/javascript" language="javascript1.2" src="../whutils.js"></script>\r
+<script type="text/javascript" language="javascript1.2" src="../whtopic.js"></script>\r
+</head>\r
+\r
+<!--(Body)==========================================================-->\r
+\r
+\r
+<body>\r
+\r
+<script type="text/javascript" language="javascript1.2">\r
+<!--\r
+if (window.gbWhTopic)\r
+{\r
+ if (window.addTocInfo)\r
+ {\r
+ addTocInfo("IAPP module\nStudy management\nSaving and closing studies");\r
+addButton("show",BTN_TEXT,"Show","","","","",0,0,"","","");\r
+\r
+ }\r
+ if (window.writeBtnStyle)\r
+ writeBtnStyle();\r
+\r
+ if (window.writeIntopicBar)\r
+ writeIntopicBar(1);\r
+\r
+ if (window.setRelStartPage)\r
+ {\r
+ setRelStartPage("../kernel.html");\r
+\r
+ autoSync(0);\r
+ sendSyncInfo();\r
+ sendAveInfoOut();\r
+ }\r
+}\r
+else\r
+ document.location.reload();\r
+//-->\r
+</script>\r
+<h1 class="whs1">Saving and closing studies</h1>\r
+\r
+<p class="whs2"><img src="../i_blue.jpg" x-maintain-ratio="TRUE" width="30px" height="30px" border="0" class="img_whs3">In <span style="font-weight: bold;"><B>SALOME \r
+ </B></span>a study can be saved in <span style="font-weight: bold;"><B>HDF</B></span> \r
+ (by default) or <span style="font-weight: bold;"><B>ASCII</B></span> files (<a href="setting_preferences.htm#ASCII">see also: Setting ASCII save option</a>).</p>\r
+\r
+<p class="whs2"> </p>\r
+\r
+<p class="whs2">You can also specify two \r
+ options of saving your study: </p>\r
+\r
+<p class="whs4"> </p>\r
+\r
+<ul type="disc" class="whs5">\r
+ \r
+ <li style="margin-left: -20px;"\r
+ class=kadov-p><p class="whs6">In one HDF file: \r
+ <span style="font-weight: normal;">in this case all components used during \r
+ this study session will write their data into one common HDF file. </span></p></li>\r
+ \r
+ <li style="margin-left: -20px;"\r
+ class=kadov-p><p class="whs7"><span \r
+ style="font-weight: bold;"><B>In multiple files </B></span>(<a href="setting_preferences.htm#MultiFile">see \r
+ also: Setting Multifile save option</a>)<span style="font-weight: bold;"> \r
+ <B></B></span>: in this case SALOME will create one base HDF file which will \r
+ store the main information about the saved study and several other special \r
+ files with particular extensions storing the data written by each component \r
+ which has been used during this study session. Opening of this study requires \r
+ that <span style="font-weight: bold;"><B>ALL</B></span> saved files should be \r
+ stored in the <span style="font-weight: bold;"><B>SAME</B></span> directory. \r
+ If you \r
+ would like to copy your saved study in another directory or machine, you \r
+ should copy all stored files. Otherwise, if you try to open this study, \r
+ some data will be lost and it will lead to invalid functioning of the \r
+ SALOME platform. </p></li>\r
+</ul>\r
+\r
+<p class="whs7"> </p>\r
+\r
+<p class="whs8">To save an existing \r
+ study :</p>\r
+\r
+<p class="whs4"> </p>\r
+\r
+<p class="whs9"><span style="font-style: normal; color: #000000;"><font color=black >In \r
+ the main toolbar click </font></span><img src="../pics/save.jpg" x-maintain-ratio="TRUE" width="23px" height="29px" border="0" class="img_whs10"> <span style="font-style: normal; color: #000000;"><font color=black >or \r
+ from the main menu select </font></span><span style="font-style: normal;\r
+ color: #000000;\r
+ font-weight: bold;"><font color=black ><B>File \r
+ > Save </B></font></span><span style="font-style: normal; color: #000000;"><font color=black >option. \r
+ Your study will be automatically updated. </font></span></p>\r
+\r
+<p class="whs9"> </p>\r
+\r
+<p class="whs11"><img src="../note1.gif" x-maintain-ratio="TRUE" width="36px" height="38px" border="0" class="img_whs12">If your study hasn't been \r
+ previously saved, this option will call the standard Search File dialog \r
+ box where you can enter the name for your study and save it. </p>\r
+\r
+<p class="whs9"> </p>\r
+\r
+<p class="whs13">To save a study with \r
+ a new name:</p>\r
+\r
+<p class="whs14"> </p>\r
+\r
+<p class="whs15">From the main menu select \r
+ <span style="font-weight: bold;"><B>File > Save as </B></span>option. In the \r
+ standard Search File dialog box enter a new name for your study and click \r
+ <span style="font-weight: bold;"><B>Save</B></span> button.</p>\r
+\r
+<p class="whs9"> </p>\r
+\r
+<p class="whs16">To close a study:</p>\r
+\r
+<p class="whs17"> </p>\r
+\r
+<p class="whs9"><span style="font-style: normal; color: #000000;"><font color=black >From \r
+ the main menu select </font></span><span style="font-weight: bold;\r
+ font-style: normal;\r
+ color: #000000;"><font color=black ><B>File > \r
+ Close</B></font></span><span style="font-weight: bold;"> <B></B></span><span style="font-style: normal; color: #000000;"><font color=black >option \r
+ or click on the cross in the upper right corner of the study window.</font></span></p>\r
+\r
+<p class="whs9"> </p>\r
+\r
+<p class="whs11"><img src="../note1.gif" x-maintain-ratio="TRUE" width="36px" height="38px" border="0" class="img_whs12">If your study hasn't been \r
+ previously saved, this option will call the following dialog box with \r
+ several options:</p>\r
+\r
+<p class="whs15"> </p>\r
+\r
+<p class="whs15"><img src="../pics/close.jpg" x-maintain-ratio="TRUE" width="500px" height="152px" border="0" class="img_whs18"></p>\r
+\r
+<p class="whs15"> </p>\r
+\r
+<p class="whs7"><span style="font-weight: bold;"><B>Unload \r
+ </B></span>option allows to unload your current study from the SALOME Desktop. \r
+ In the same working session you can reload \r
+ it again (<a href="opening_studies.htm">see: Opening studies</a>). But \r
+ if you quit the SALOME application, all changes in the unloaded study \r
+ will be LOST.</p>\r
+\r
+<p class="whs7"> </p>\r
+\r
+<p class="whs13">To close a definite \r
+ study window:</p>\r
+\r
+<p class="whs7"> </p>\r
+\r
+<p class="whs15">Click on the small cross \r
+ button in the right upper corner of the study window. If it is the last \r
+ study window this operation will result in closing of the whole study.</p>\r
+\r
+<p class="whs9"> </p>\r
+\r
+<p class="whs15"> </p>\r
+\r
+<p class="whs15"> </p>\r
+\r
+<p class="whs19">\r
+<a href="javascript:void(0);" onClick="var e; if (parseInt(navigator.appVersion)>=4){e=event;} if (parseInt(navigator.appVersion) >=2 && typeof(PopupMenu_Invoke) == 'function') PopupMenu_Invoke(e,'','Creating a new study','creating_a_new_study.htm','Displaying studies','displaying_studies.htm','Introduction to IAPP','introduction_to_iapp.htm','Opening studies','opening_studies.htm','SALOME PRO desktop','salome_pro_desktop.htm','Setting preferences','setting_preferences.htm');return false;" title="Related Topics"><img src="../ss_btn_related_topics.gif" border=0 height=17 width=82 alt="Related Topics"></a></p>\r
+\r
+<p class="whs19"> </p>\r
+\r
+<p class="whs19"> </p>\r
+\r
+<p class="whs19"> </p>\r
+\r
+<p class="whs19"> </p>\r
+\r
+<script type="text/javascript" language="JavaScript" title="WebHelpRelatedTopics"><!--\r
+if (parseInt(navigator.appVersion) >= 3 && typeof (WritePopupMenuLayer) == "function")\r
+ WritePopupMenuLayer();\r
+//--></script><script type="text/javascript" language="javascript1.2">\r
+<!--\r
+if (window.writeIntopicBar)\r
+ writeIntopicBar(0);\r
+//-->\r
+</script>\r
+</body>\r
+\r
+</html>\r
--- /dev/null
+<!doctype HTML public "-//W3C//DTD HTML 4.0 Frameset//EN">\r
+\r
+<html>\r
+\r
+<!--(==============================================================)-->\r
+<!--(Document created with RoboEditor. )============================-->\r
+<!--(==============================================================)-->\r
+\r
+<head>\r
+\r
+<title>Setting preferences</title>\r
+\r
+<!--(Meta)==========================================================-->\r
+\r
+<meta http-equiv=content-type content="text/html; charset=windows-1252">\r
+<meta name=generator content="RoboHELP by eHelp Corporation - www.ehelp.com">\r
+<meta name=generator-major-version content=0.1>\r
+<meta name=generator-minor-version content=1>\r
+<meta name=filetype content=kadov>\r
+<meta name=filetype-version content=1>\r
+<meta name=page-count content=1>\r
+<meta name=layout-height content=1336>\r
+<meta name=layout-width content=700>\r
+\r
+\r
+<!--(Links)=========================================================-->\r
+\r
+ <link rel='stylesheet' href='../default_ns.css'>\r
+<script type="text/javascript" language="JavaScript" title="WebHelpSplitCss">\r
+<!--\r
+if (navigator.appName !="Netscape")\r
+{ document.write("<link rel='stylesheet' href='../default.css'>");}\r
+//-->\r
+</script>\r
+<style type="text/css">\r
+<!--\r
+h1.whs1 {font-family: 'Times New Roman', serif;}\r
+p.whs2 {font-family: 'Times New Roman', serif;}\r
+p.whs3 {font-family: 'Times New Roman', serif; margin-left: 40px;}\r
+img_whs4 {border-style: none; border: none; width: 256px; height: 210px;}\r
+ul.whs5 {list-style: disc;}\r
+p.whs6 {font-family: 'Times New Roman', serif; margin-left: 0px; font-weight: bold;}\r
+p.whs7 {margin-left: 0px; font-weight: bold; font-family: 'Times New Roman', serif;}\r
+p.whs8 {font-family: 'Times New Roman', serif; margin-left: 80px;}\r
+p.whs9 {margin-left: 80px; font-family: 'Times New Roman', serif;}\r
+img_whs10 {border-style: none; border: none; width: 309px; height: 112px;}\r
+p.whs11 {font-family: 'Times New Roman', serif; font-weight: normal; margin-left: 120px;}\r
+p.whs12 {font-family: 'Times New Roman', serif; margin-left: 0px;}\r
+p.whs13 {font-family:'Times New Roman' , serif; margin-left:0px; background-image:url(../texture_horiz_ltbluebubbles.jpg); }\r
+img_whs14 {border-style: none; border: none; float: none; width: 36px; height: 38px;}\r
+-->\r
+</style>\r
+<script type="text/javascript" language="JavaScript">\r
+<!--\r
+if ((navigator.appName == "Netscape") && (parseInt(navigator.appVersion) == 4))\r
+{\r
+ var strNSS = "<style type='text/css'>";\r
+ strNSS += "p.whs6 {margin-left:1; }";\r
+ strNSS += "p.whs7 {margin-left:1; }";\r
+ strNSS += "p.whs12 {margin-left:1; }";\r
+ strNSS += "p.whs13 {margin-left:1; }";\r
+ strNSS +="</style>";\r
+ document.write(strNSS);\r
+}\r
+//-->\r
+</script>\r
+<script type="text/javascript" language="JavaScript" title="BSSC Special Effects" src="../ehlpdhtm.js"></script><script type="text/javascript" language="JavaScript" title="WebHelpInlineScript">\r
+<!--\r
+function reDo() {\r
+ if (innerWidth != origWidth || innerHeight != origHeight)\r
+ location.reload();\r
+}\r
+if ((parseInt(navigator.appVersion) == 4) && (navigator.appName == "Netscape")) {\r
+ origWidth = innerWidth;\r
+ origHeight = innerHeight;\r
+ onresize = reDo;\r
+}\r
+onerror = null; \r
+//-->\r
+</script>\r
+<style type="text/css">\r
+<!--\r
+ div.WebHelpPopupMenu {position:absolute; left:0px; top:0px; z-index:4; visibility:hidden;}\r
+-->\r
+</style>\r
+<script type="text/javascript" language="javascript1.2" src="../whmsg.js"></script>\r
+<script type="text/javascript" language="javascript" src="../whver.js"></script>\r
+<script type="text/javascript" language="javascript1.2" src="../whproxy.js"></script>\r
+<script type="text/javascript" language="javascript1.2" src="../whutils.js"></script>\r
+<script type="text/javascript" language="javascript1.2" src="../whtopic.js"></script>\r
+</head>\r
+\r
+<!--(Body)==========================================================-->\r
+\r
+\r
+<body>\r
+\r
+<script type="text/javascript" language="javascript1.2">\r
+<!--\r
+if (window.gbWhTopic)\r
+{\r
+ if (window.addTocInfo)\r
+ {\r
+ addTocInfo("IAPP module\nSetting preferences");\r
+addButton("show",BTN_TEXT,"Show","","","","",0,0,"","","");\r
+\r
+ }\r
+ if (window.writeBtnStyle)\r
+ writeBtnStyle();\r
+\r
+ if (window.writeIntopicBar)\r
+ writeIntopicBar(1);\r
+\r
+ if (window.setRelStartPage)\r
+ {\r
+ setRelStartPage("../kernel.html");\r
+\r
+ autoSync(0);\r
+ sendSyncInfo();\r
+ sendAveInfoOut();\r
+ }\r
+}\r
+else\r
+ document.location.reload();\r
+//-->\r
+</script>\r
+<h1 class="whs1">Setting preferences</h1>\r
+\r
+<p class="whs2">In <span style="font-weight: bold;"><B>SALOME \r
+ </B></span>you can set the preferences, which will be valid for the whole \r
+ study session.</p>\r
+\r
+<p class="whs2"> </p>\r
+\r
+<p class="whs2">In the main menu select \r
+ <span style="font-weight: bold;"><B>Preferences</B></span>, the following submenu \r
+ will appear:</p>\r
+\r
+<p class="whs2"> </p>\r
+\r
+<p class="whs3"> <img src="../image4.gif" width="256px" height="210px" border="0" class="img_whs4"></p>\r
+\r
+<p class="whs3"> </p>\r
+\r
+<ul type="disc" class="whs5">\r
+ \r
+ <li class=kadov-p><p class="whs6">Viewer background - \r
+ <span style="font-weight: normal;">this submenu allows to select background \r
+ color of a definite viewer (OCC, VTK, Plot2d).</span></p></li>\r
+ \r
+ <li class=kadov-p><p class="whs6"><a name="Default viewer"></a>Default \r
+ viewer<span style="font-weight: normal;"> - this submenu allows to set \r
+ the viewer, which will be open by default in a new study window.</span></p></li>\r
+ \r
+ <li class=kadov-p><p class="whs6">Trihedron size - <span \r
+ style="font-weight: normal;">this submenu allows to set the size of the \r
+ trihedron.</span></p></li>\r
+ \r
+ <li class=kadov-p><p class="whs6">Console Font - <span \r
+ style="font-weight: normal;">this submenu allows to set the font, which \r
+ will be used in the Python console and Output Messages windows.</span></p></li>\r
+ \r
+ <li class=kadov-p><p class="whs6"><a name=MultiFile></a>MultiFile \r
+ Save<span style="font-weight: normal;"> - if this submenu is marked, you \r
+ study will be saved in several HDF files (one file for the data created \r
+ by each component used during the study session).</span></p></li>\r
+ \r
+ <li class=kadov-p><p class="whs6"><a name=ASCII></a>ASCII \r
+ Save - <span style="font-weight: normal;">if this submenu is marked, you \r
+ study will be saved in ASCII format file (or files).</span></p></li>\r
+ \r
+ <li class=kadov-p><p class="whs6">Undo level -<span style="font-weight: normal;"> \r
+ here you can define the number of actions which can be undone.</span></p></li>\r
+ \r
+ <li class=kadov-p><p class="whs6"><span><B>External browser \r
+ - </B></span><span style="font-weight: normal;">this option allows you to \r
+ set an external browser (IE, Netscape) which will be used for viewing \r
+ SALOME reference manuals. By default, Mozilla is used.</span></p></li>\r
+ \r
+ <li class=kadov-p><p class="whs7"><a \r
+ name=Object_Browser></a>Object Browser<span style="font-weight: normal;"> \r
+ preferences:</span></p></li>\r
+</ul>\r
+\r
+<p class="whs8"> </p>\r
+\r
+<p class="whs9"><img src="../image7.gif" width="309px" height="112px" border="0" class="img_whs10"></p>\r
+\r
+<p class="whs11"> </p>\r
+\r
+<p class="whs8">- \r
+ Displays/hides <span style="font-weight: bold;"><B>Entry, IOR columns</B></span></p>\r
+\r
+<p class="whs8"><span \r
+ style="font-weight: bold;"><B>- </B></span>Displays/hides<span style="font-weight: bold;"><B> \r
+ Value column</B></span></p>\r
+\r
+<p class="whs8"><span \r
+ style="font-weight: bold;"><B>- </B></span>Displays/hides <span style="font-weight: bold;"><B>Interface \r
+ Applicative</B></span> (folder containing all study windows created within \r
+ the current study session),</p>\r
+\r
+<p class="whs8">- \r
+ <span style="font-weight: bold;"><B>Chronological sort of objects </B></span>displayed \r
+ in the Object Browser.</p>\r
+\r
+<p class="whs8"><span \r
+ style="font-weight: bold;"><B>- Show UseCase Browser - </B></span>displays/hides \r
+ UseCase Browser </p>\r
+\r
+<p class="whs8">- \r
+ <span style="font-weight: bold;"><B>No autosize columns - </B></span> This \r
+ item allows to disable/enable auto resizing of columns of the Object Browser \r
+ <span style="font-weight: bold;"><B> </B></span></p>\r
+\r
+<p class="whs8"> </p>\r
+\r
+<ul type="disc" class="whs5">\r
+ \r
+ <li class=kadov-p><p class="whs12"><span \r
+ style="font-weight: bold;"><B>Directories - </B></span>allows to create a custom \r
+ quick directory list.</p></li>\r
+ \r
+ <li class=kadov-p><p class="whs12"><span \r
+ style="font-weight: bold;"><B>Save</B></span> - Saves \r
+ the current preferences.</p></li>\r
+</ul>\r
+\r
+<p class="whs3">The \r
+ preferences, set during the current study session, are automatically saved \r
+ at the end of the session. So, next time you launch SALOME application, \r
+ these preferences will be restored.</p>\r
+\r
+<p class="whs3"> </p>\r
+\r
+<p class="whs13"><img src="../note1.gif" x-maintain-ratio="TRUE" width="36px" height="38px" border="0" class="img_whs14"> Depending on the currently loaded component, the <span style="font-weight: bold;"><B>Preferences \r
+ </B></span>menu may contain a submenu with the name of this component allowing \r
+ to set its own preferences.</p>\r
+\r
+<p class="whs12"> </p>\r
+\r
+<p class="whs12"> </p>\r
+\r
+<p class="whs12"> </p>\r
+\r
+<p class="whs12"> </p>\r
+\r
+<p class="whs6">\r
+<a href="javascript:void(0);" onClick="var e; if (parseInt(navigator.appVersion)>=4){e=event;} if (parseInt(navigator.appVersion) >=2 && typeof(PopupMenu_Invoke) == 'function') PopupMenu_Invoke(e,'','Introduction to IAPP','introduction_to_iapp.htm','SALOME PRO desktop','salome_pro_desktop.htm','Saving a study','saving_a_study.htm','Using Object Browser','using_object_browser.htm');return false;" title="Related Topics"><img src="../ss_btn_related_topics.gif" border=0 height=17 width=82 alt="Related Topics"></a></p>\r
+\r
+<p class="whs6"> </p>\r
+\r
+<p class="whs6"> </p>\r
+\r
+<p class="whs6"> </p>\r
+\r
+<p class="whs6"> </p>\r
+\r
+<p class="whs6"> </p>\r
+\r
+<script type="text/javascript" language="JavaScript" title="WebHelpRelatedTopics"><!--\r
+if (parseInt(navigator.appVersion) >= 3 && typeof (WritePopupMenuLayer) == "function")\r
+ WritePopupMenuLayer();\r
+//--></script><script type="text/javascript" language="javascript1.2">\r
+<!--\r
+if (window.writeIntopicBar)\r
+ writeIntopicBar(0);\r
+//-->\r
+</script>\r
+</body>\r
+\r
+</html>\r
--- /dev/null
+<!doctype HTML public "-//W3C//DTD HTML 4.0 Frameset//EN">\r
+\r
+<html>\r
+\r
+<!--(==============================================================)-->\r
+<!--(Document created with RoboEditor. )============================-->\r
+<!--(==============================================================)-->\r
+\r
+<head>\r
+\r
+<title>Using Catalog Generator</title>\r
+\r
+<!--(Meta)==========================================================-->\r
+\r
+<meta http-equiv=content-type content="text/html; charset=windows-1252">\r
+<meta name=generator content="RoboHELP by eHelp Corporation - www.ehelp.com">\r
+<meta name=generator-major-version content=0.1>\r
+<meta name=generator-minor-version content=1>\r
+<meta name=filetype content=kadov>\r
+<meta name=filetype-version content=1>\r
+<meta name=page-count content=1>\r
+<meta name=layout-height content=1314>\r
+<meta name=layout-width content=700>\r
+\r
+\r
+<!--(Links)=========================================================-->\r
+\r
+ <link rel='stylesheet' href='../default_ns.css'>\r
+<script type="text/javascript" language="JavaScript" title="WebHelpSplitCss">\r
+<!--\r
+if (navigator.appName !="Netscape")\r
+{ document.write("<link rel='stylesheet' href='../default.css'>");}\r
+//-->\r
+</script>\r
+<style type="text/css">\r
+<!--\r
+h1.whs1 {font-family: 'Times New Roman', serif;}\r
+p.whs2 {margin-left: 0px; text-align: justify;}\r
+img_whs3 {border-style: none; border: none; width: 30px; height: 30px; float: none;}\r
+p.whs4 {margin-left: 0px; text-indent: 48px; text-align: justify;}\r
+p.whs5 {text-align: justify;}\r
+p.whs6 {font-family: 'Times New Roman', serif;}\r
+p.whs7 {font-family: 'Times New Roman', serif; margin-left: 40px; font-style: normal; color: #000000;}\r
+p.whs8 {font-family: 'Times New Roman', serif; margin-left: 40px;}\r
+img_whs9 {border-style: none; border: none; width: 622px; height: 286px; float: none;}\r
+p.whs10 {font-family: 'Times New Roman', serif; margin-left: 0px;}\r
+ul.whs11 {list-style: disc;}\r
+p.whs12 {font-family:'Times New Roman' , serif; margin-left:0px; background-image:url(../texture_horiz_ltbluebubbles.jpg); }\r
+img_whs13 {border-style: none; border: none; float: none; width: 36px; height: 38px;}\r
+img_whs14 {border-style: none; border: none; width: 35px; height: 37px; float: none;}\r
+p.whs15 {font-family: 'Times New Roman', serif; margin-left: 0px; font-weight: bold;}\r
+-->\r
+</style>\r
+<script type="text/javascript" language="JavaScript">\r
+<!--\r
+if ((navigator.appName == "Netscape") && (parseInt(navigator.appVersion) == 4))\r
+{\r
+ var strNSS = "<style type='text/css'>";\r
+ strNSS += "p.whs2 {margin-left:1; }";\r
+ strNSS += "p.whs4 {margin-left:1; }";\r
+ strNSS += "p.whs10 {margin-left:1; }";\r
+ strNSS += "p.whs12 {margin-left:1; }";\r
+ strNSS += "p.whs15 {margin-left:1; }";\r
+ strNSS +="</style>";\r
+ document.write(strNSS);\r
+}\r
+//-->\r
+</script>\r
+<script type="text/javascript" language="JavaScript" title="BSSC Special Effects" src="../ehlpdhtm.js"></script><script type="text/javascript" language="JavaScript" title="WebHelpInlineScript">\r
+<!--\r
+function reDo() {\r
+ if (innerWidth != origWidth || innerHeight != origHeight)\r
+ location.reload();\r
+}\r
+if ((parseInt(navigator.appVersion) == 4) && (navigator.appName == "Netscape")) {\r
+ origWidth = innerWidth;\r
+ origHeight = innerHeight;\r
+ onresize = reDo;\r
+}\r
+onerror = null; \r
+//-->\r
+</script>\r
+<style type="text/css">\r
+<!--\r
+ div.WebHelpPopupMenu {position:absolute; left:0px; top:0px; z-index:4; visibility:hidden;}\r
+-->\r
+</style>\r
+<script type="text/javascript" language="javascript1.2" src="../whmsg.js"></script>\r
+<script type="text/javascript" language="javascript" src="../whver.js"></script>\r
+<script type="text/javascript" language="javascript1.2" src="../whproxy.js"></script>\r
+<script type="text/javascript" language="javascript1.2" src="../whutils.js"></script>\r
+<script type="text/javascript" language="javascript1.2" src="../whtopic.js"></script>\r
+</head>\r
+\r
+<!--(Body)==========================================================-->\r
+\r
+\r
+<body>\r
+\r
+<script type="text/javascript" language="javascript1.2">\r
+<!--\r
+if (window.gbWhTopic)\r
+{\r
+ if (window.addTocInfo)\r
+ {\r
+ addTocInfo("IAPP module\nUsing Catalog Generator");\r
+addButton("show",BTN_TEXT,"Show","","","","",0,0,"","","");\r
+\r
+ }\r
+ if (window.writeBtnStyle)\r
+ writeBtnStyle();\r
+\r
+ if (window.writeIntopicBar)\r
+ writeIntopicBar(1);\r
+\r
+ if (window.setRelStartPage)\r
+ {\r
+ setRelStartPage("../kernel.html");\r
+\r
+ autoSync(0);\r
+ sendSyncInfo();\r
+ sendAveInfoOut();\r
+ }\r
+}\r
+else\r
+ document.location.reload();\r
+//-->\r
+</script>\r
+<h1 class="whs1">Using Catalog Generator \r
+ (for advanced users)</h1>\r
+\r
+<p class="whs2"><img src="../i_blue.jpg" x-maintain-ratio="TRUE" width="30px" height="30px" border="0" class="img_whs3">SALOME \r
+ platform is an open platform for integration of your custom components, \r
+ which can used in the same way as typical modules provided in the standard \r
+ installed package. The <span style="font-weight: bold;"><B>Catalog Generator \r
+ </B></span>tool serves for implementation of the interface of your custom \r
+ component. It allows to generate from IDL description of your component \r
+ interface its xml description. The \r
+ component xml description allows SALOME application to know about the \r
+ component and its services and provides the possibility to call the component \r
+ services, for example, inside SUPERVISION module.</p>\r
+\r
+<p class="whs4">If you have a look at runSalome, runSalomeWithPort \r
+ scripts running SALOME application, which are stored in build/bin directory \r
+ you will see that SALOME_ModuleCatalog_Server is started with two xml \r
+ files as its input parameters: <span style="font-weight: bold;"><B>CatalogModuleGeneral.xml</B></span> \r
+ and <span style="font-weight: bold;"><B>CatalogModulePersonnel.xml</B></span>. \r
+ These two files store the descriptions of interfaces and services of all \r
+ components, provided with typical SALOME package. To add a new component \r
+ into SALOME platform you should either update one of these existing xml \r
+ files with generated xml description of your component or create a new \r
+ one.</p>\r
+\r
+<p class="whs5"> </p>\r
+\r
+<p class=TODO>To open the Catalog Generator:</p>\r
+\r
+<p class="whs6"> </p>\r
+\r
+<p class="whs7">From the main menu choose <span style="font-weight: bold;"><B>Tools \r
+ > Catalog Generato</B></span>r, the following dialog box will appear:</p>\r
+\r
+<p> </p>\r
+\r
+<p class="whs8"><img src="../pics/cataloggenerator.jpg" x-maintain-ratio="TRUE" width="622px" height="286px" border="0" class="img_whs9"></p>\r
+\r
+<p class="whs8"> </p>\r
+\r
+<p class="whs10"> </p>\r
+\r
+<p class="whs10">In \r
+ this dialog box you can specify:</p>\r
+\r
+<p class="whs10"> </p>\r
+\r
+<ul type="disc" class="whs11">\r
+ \r
+ <li class=kadov-p><p class="whs8">Name \r
+ and location of the IDL file describing the interface of your component</p></li>\r
+ \r
+ <li class=kadov-p><p class="whs8">Name \r
+ and location of an existing XML file, which will be updated with the interface \r
+ of you component or name and desired location of a new XML file, which \r
+ will be generated</p></li>\r
+ \r
+ <li class=kadov-p><p class="whs8">Name \r
+ of the author,</p></li>\r
+ \r
+ <li class=kadov-p><p class="whs8">Name \r
+ of the component,</p></li>\r
+ \r
+ <li class=kadov-p><p class="whs8">Type \r
+ of the component,</p></li>\r
+ \r
+ <li class=kadov-p><p class="whs8">Version,</p></li>\r
+ \r
+ <li class=kadov-p><p class="whs8">Capability \r
+ of multi study support</p></li>\r
+ \r
+ <li class=kadov-p><p class="whs8">Icon \r
+ of your component </p></li>\r
+</ul>\r
+\r
+<p class="whs8"> </p>\r
+\r
+<p class="whs12"><img src="../note1.gif" x-maintain-ratio="TRUE" width="36px" height="38px" border="0" class="img_whs13">If you have chosen to create a new xml file containing the \r
+ description of your component, don't forget to specify it as input parameter \r
+ for SALOME_ModuleCatalog_Server in the file, you are using as a running \r
+ script of SALOME platform (in runSalomeWithPort, for example).</p>\r
+\r
+<p class="whs10"> </p>\r
+\r
+<p class="whs10"> When \r
+ launching SALOME next time you will see your module alongside other components.</p>\r
+\r
+<p class="whs10"> </p>\r
+\r
+<p class="whs12"><img src="../tip1.gif" x-maintain-ratio="TRUE" width="35px" height="37px" border="0" class="img_whs14"> You can use the <span style="font-weight: bold;"><B>Catalog \r
+ Generator</B></span> tool, if you would like to <span style="font-weight: bold;"><B>test</B></span> \r
+ the functionality of your new component. After implementation of your \r
+ component interface, launch SUPERVISION module where you can try using \r
+ the services of your new component. (see also: Adding factory nodes)</p>\r
+\r
+<p class="whs10"> </p>\r
+\r
+<p class="whs10"> </p>\r
+\r
+<p class="whs10"> </p>\r
+\r
+<p class="whs15">\r
+<a href="javascript:void(0);" onClick="var e; if (parseInt(navigator.appVersion)>=4){e=event;} if (parseInt(navigator.appVersion) >=2 && typeof(PopupMenu_Invoke) == 'function') PopupMenu_Invoke(e,'','Introduction to IAPP','introduction_to_iapp.htm','SALOME PRO desktop','salome_pro_desktop.htm');return false;" title="Related Topics"><img src="../ss_btn_related_topics.gif" border=0 height=17 width=82 alt="Related Topics"></a></p>\r
+\r
+<p class="whs15"> </p>\r
+\r
+<p class="whs15"> </p>\r
+\r
+<script type="text/javascript" language="JavaScript" title="WebHelpRelatedTopics"><!--\r
+if (parseInt(navigator.appVersion) >= 3 && typeof (WritePopupMenuLayer) == "function")\r
+ WritePopupMenuLayer();\r
+//--></script><script type="text/javascript" language="javascript1.2">\r
+<!--\r
+if (window.writeIntopicBar)\r
+ writeIntopicBar(0);\r
+//-->\r
+</script>\r
+</body>\r
+\r
+</html>\r
--- /dev/null
+<!doctype HTML public "-//W3C//DTD HTML 4.0 Frameset//EN">\r
+\r
+<html>\r
+\r
+<!--(==============================================================)-->\r
+<!--(Document created with RoboEditor. )============================-->\r
+<!--(==============================================================)-->\r
+\r
+<head>\r
+\r
+<title>Using left-hand tabs</title>\r
+\r
+<!--(Meta)==========================================================-->\r
+\r
+<meta http-equiv=content-type content="text/html; charset=windows-1252">\r
+<meta name=date content="11 19, 2001 2:37:35 PM">\r
+<meta name=generator content="RoboHELP by eHelp Corporation - www.ehelp.com">\r
+<meta name=generator-major-version content=0.1>\r
+<meta name=generator-minor-version content=1>\r
+<meta name=filetype content=kadov>\r
+<meta name=filetype-version content=1>\r
+<meta name=page-count content=1>\r
+<meta name=layout-height content=527>\r
+<meta name=layout-width content=765>\r
+\r
+\r
+<!--(Links)=========================================================-->\r
+\r
+ <link rel='stylesheet' href='../default_ns.css'>\r
+<script type="text/javascript" language="JavaScript" title="WebHelpSplitCss">\r
+<!--\r
+if (navigator.appName !="Netscape")\r
+{ document.write("<link rel='stylesheet' href='../default.css'>");}\r
+//-->\r
+</script>\r
+<style type="text/css">\r
+<!--\r
+h1.whs1 {font-family: 'Times New Roman', serif;}\r
+p.whs2 {font-family: 'Times New Roman', serif;}\r
+-->\r
+</style>\r
+<script type="text/javascript" language="JavaScript" title="BSSC Special Effects" src="../ehlpdhtm.js"></script><script type="text/javascript" language="JavaScript" title="WebHelpInlineScript">\r
+<!--\r
+function reDo() {\r
+ if (innerWidth != origWidth || innerHeight != origHeight)\r
+ location.reload();\r
+}\r
+if ((parseInt(navigator.appVersion) == 4) && (navigator.appName == "Netscape")) {\r
+ origWidth = innerWidth;\r
+ origHeight = innerHeight;\r
+ onresize = reDo;\r
+}\r
+onerror = null; \r
+//-->\r
+</script>\r
+<style type="text/css">\r
+<!--\r
+ div.WebHelpPopupMenu {position:absolute; left:0px; top:0px; z-index:4; visibility:hidden;}\r
+-->\r
+</style>\r
+<script type="text/javascript" language="javascript1.2" src="../whmsg.js"></script>\r
+<script type="text/javascript" language="javascript" src="../whver.js"></script>\r
+<script type="text/javascript" language="javascript1.2" src="../whproxy.js"></script>\r
+<script type="text/javascript" language="javascript1.2" src="../whutils.js"></script>\r
+<script type="text/javascript" language="javascript1.2" src="../whtopic.js"></script>\r
+</head>\r
+\r
+<!--(Body)==========================================================-->\r
+\r
+\r
+<body>\r
+\r
+<script type="text/javascript" language="javascript1.2">\r
+<!--\r
+if (window.gbWhTopic)\r
+{\r
+ if (window.addTocInfo)\r
+ {\r
+ addTocInfo("Using this reference manual\nUsing left-hand tabs");\r
+addButton("show",BTN_TEXT,"Show","","","","",0,0,"","","");\r
+\r
+ }\r
+ if (window.writeBtnStyle)\r
+ writeBtnStyle();\r
+\r
+ if (window.writeIntopicBar)\r
+ writeIntopicBar(1);\r
+\r
+ if (window.setRelStartPage)\r
+ {\r
+ setRelStartPage("../kernel.html");\r
+\r
+ autoSync(0);\r
+ sendSyncInfo();\r
+ sendAveInfoOut();\r
+ }\r
+}\r
+else\r
+ document.location.reload();\r
+//-->\r
+</script>\r
+<h1 class="whs1">Using left-hand tabs</h1>\r
+\r
+<p class="whs2">SALOME Help system includes \r
+ the following left-hand tabs:</p>\r
+\r
+<p class="whs2"> </p>\r
+\r
+<ul>\r
+ \r
+ <li class=kadov-p-Cbullets><p CLASS=bullets\r
+ style="font-weight: normal; font-family: 'Times New Roman', serif;"><span \r
+ style="font-weight: bold;"><B>Contents:</B></span> The Contents tab displays \r
+ books and pages that represent the categories of information in the online \r
+ Help system. When you click a closed book, it opens to display its content \r
+ (sub-books and pages). When you click an open book, it closes. When you \r
+ click pages, you select topics to view in the right-hand pane of the HTML \r
+ Help viewer.</p></li>\r
+</ul>\r
+\r
+<p CLASS=bullets\r
+ style="font-weight: normal; font-family: 'Times New Roman', serif;"> </p>\r
+\r
+<ul>\r
+ \r
+ <li class=kadov-p-Cbullets><p CLASS=bullets\r
+ style="font-weight: normal; font-family: 'Times New Roman', serif;"><span \r
+ style="font-weight: bold;"><B>Index:</B></span> The Index tab displays a multi-level \r
+ list of keywords and keyword phrases. These terms are associated with \r
+ topics in the Help system and they are intended to direct you to specific \r
+ topics according to your way of working. To open a topic in the right-hand \r
+ pane associated with a keyword, select the keyword and then click <span \r
+ style="font-weight: bold;"><B>Display</B></span>. If the keyword is used with \r
+ more than one topic, a Topics Found dialog opens so you can select a specific \r
+ topic to view.</p></li>\r
+</ul>\r
+\r
+<p CLASS=bullets\r
+ style="font-weight: normal; font-family: 'Times New Roman', serif;"> </p>\r
+\r
+<ul>\r
+ \r
+ <li class=kadov-p-Cbullets><p CLASS=bullets\r
+ style="font-weight: normal; font-family: 'Times New Roman', serif;"><span \r
+ style="font-weight: bold;"><B>Search:</B></span> The Search tab enables you to \r
+ search for words in the Help system and locate topics containing those \r
+ words. Full-text searching looks through every word in the online Help \r
+ to find matches. When the search is completed, a list of topics is displayed \r
+ so you can select a specific topic to view.</p></li>\r
+</ul>\r
+\r
+<p CLASS=bullets\r
+ style="font-weight: normal; font-family: 'Times New Roman', serif;"> </p>\r
+\r
+<ul>\r
+ \r
+ <li class=kadov-p-Cbullets><p CLASS=bullets\r
+ style="font-weight: normal; font-family: 'Times New Roman', serif;"><span \r
+ style="font-weight: bold;"><B>Glossary:</B></span> The Glossary tab displays \r
+ a glossary providing a list of words, short phrases, and their definitions \r
+ related to SALOME. When you select a term from the list, its corresponding \r
+ definition is displayed in the lower pane.</p></li>\r
+</ul>\r
+\r
+<p class="whs2"> </p>\r
+\r
+<p class="whs2">\r
+<a href="javascript:void(0);" onClick="var e; if (parseInt(navigator.appVersion)>=4){e=event;} if (parseInt(navigator.appVersion) >=2 && typeof(PopupMenu_Invoke) == 'function') PopupMenu_Invoke(e,'','About SALOME PRO help system','about_salome_pro_help_system.htm','Navigating topics','navigating_topics.htm');return false;" title="Related Topics"><img src="../ss_btn_related_topics.gif" border=0 height=17 width=82 alt="Related Topics"></a></p>\r
+\r
+<p class="whs2"> </p>\r
+\r
+<p class="whs2"> </p>\r
+\r
+<p class="whs2"> </p>\r
+\r
+<script type="text/javascript" language="JavaScript" title="WebHelpRelatedTopics"><!--\r
+if (parseInt(navigator.appVersion) >= 3 && typeof (WritePopupMenuLayer) == "function")\r
+ WritePopupMenuLayer();\r
+//--></script><script type="text/javascript" language="javascript1.2">\r
+<!--\r
+if (window.writeIntopicBar)\r
+ writeIntopicBar(0);\r
+//-->\r
+</script>\r
+</body>\r
+\r
+</html>\r
--- /dev/null
+<!doctype HTML public "-//W3C//DTD HTML 4.0 Frameset//EN">\r
+\r
+<html>\r
+\r
+<!--(==============================================================)-->\r
+<!--(Document created with RoboEditor. )============================-->\r
+<!--(==============================================================)-->\r
+\r
+<head>\r
+\r
+<title>Using Object Browser</title>\r
+\r
+<!--(Meta)==========================================================-->\r
+\r
+<meta http-equiv=content-type content="text/html; charset=windows-1252">\r
+<meta name=generator content="RoboHELP by eHelp Corporation - www.ehelp.com">\r
+<meta name=generator-major-version content=0.1>\r
+<meta name=generator-minor-version content=1>\r
+<meta name=filetype content=kadov>\r
+<meta name=filetype-version content=1>\r
+<meta name=page-count content=1>\r
+<meta name=layout-height content=1308>\r
+<meta name=layout-width content=818>\r
+\r
+\r
+<!--(Links)=========================================================-->\r
+\r
+ <link rel='stylesheet' href='../default_ns.css'>\r
+<script type="text/javascript" language="JavaScript" title="WebHelpSplitCss">\r
+<!--\r
+if (navigator.appName !="Netscape")\r
+{ document.write("<link rel='stylesheet' href='../default.css'>");}\r
+//-->\r
+</script>\r
+<style type="text/css">\r
+<!--\r
+h1.whs1 {text-align: justify;}\r
+p.whs2 {text-align: justify;}\r
+img_whs3 {border-style: none; border: none; width: 30px; height: 30px; float: none;}\r
+ul.whs4 {list-style: disc;}\r
+p.whs5 {background-image:url(../texture_horiz_ltbluebubbles.jpg); text-align:justify; }\r
+img_whs6 {border-style: none; border: none; float: none; width: 36px; height: 38px;}\r
+img_whs7 {border-style: none; border: none; width: 796px; height: 313px; float: none;}\r
+p.whs8 {font-style: italic; color: #ff0000; text-align: justify;}\r
+p.whs9 {margin-left: 40px; text-align: justify;}\r
+p.whs10 {font-style: italic; color: #ff0000; margin-left: 40px; text-align: justify;}\r
+p.whs11 {margin-left: 0px; text-align: justify;}\r
+p.whs12 {margin-left: 0px; font-weight: bold; text-align: justify;}\r
+-->\r
+</style>\r
+<script type="text/javascript" language="JavaScript">\r
+<!--\r
+if ((navigator.appName == "Netscape") && (parseInt(navigator.appVersion) == 4))\r
+{\r
+ var strNSS = "<style type='text/css'>";\r
+ strNSS += "p.whs11 {margin-left:1; }";\r
+ strNSS += "p.whs12 {margin-left:1; }";\r
+ strNSS +="</style>";\r
+ document.write(strNSS);\r
+}\r
+//-->\r
+</script>\r
+<script type="text/javascript" language="JavaScript" title="BSSC Special Effects" src="../ehlpdhtm.js"></script><script type="text/javascript" language="JavaScript" title="WebHelpInlineScript">\r
+<!--\r
+function reDo() {\r
+ if (innerWidth != origWidth || innerHeight != origHeight)\r
+ location.reload();\r
+}\r
+if ((parseInt(navigator.appVersion) == 4) && (navigator.appName == "Netscape")) {\r
+ origWidth = innerWidth;\r
+ origHeight = innerHeight;\r
+ onresize = reDo;\r
+}\r
+onerror = null; \r
+//-->\r
+</script>\r
+<style type="text/css">\r
+<!--\r
+ div.WebHelpPopupMenu {position:absolute; left:0px; top:0px; z-index:4; visibility:hidden;}\r
+-->\r
+</style>\r
+<script type="text/javascript" language="javascript1.2" src="../whmsg.js"></script>\r
+<script type="text/javascript" language="javascript" src="../whver.js"></script>\r
+<script type="text/javascript" language="javascript1.2" src="../whproxy.js"></script>\r
+<script type="text/javascript" language="javascript1.2" src="../whutils.js"></script>\r
+<script type="text/javascript" language="javascript1.2" src="../whtopic.js"></script>\r
+</head>\r
+\r
+<!--(Body)==========================================================-->\r
+\r
+\r
+<body>\r
+\r
+<script type="text/javascript" language="javascript1.2">\r
+<!--\r
+if (window.gbWhTopic)\r
+{\r
+ if (window.addTocInfo)\r
+ {\r
+ addTocInfo("IAPP module\nUsing Object Browser");\r
+addButton("show",BTN_TEXT,"Show","","","","",0,0,"","","");\r
+\r
+ }\r
+ if (window.writeBtnStyle)\r
+ writeBtnStyle();\r
+\r
+ if (window.writeIntopicBar)\r
+ writeIntopicBar(1);\r
+\r
+ if (window.setRelStartPage)\r
+ {\r
+ setRelStartPage("../kernel.html");\r
+\r
+ autoSync(0);\r
+ sendSyncInfo();\r
+ sendAveInfoOut();\r
+ }\r
+}\r
+else\r
+ document.location.reload();\r
+//-->\r
+</script>\r
+<h1 class="whs1">Using Object Browser</h1>\r
+\r
+<p class="whs2"><img src="../i_blue.jpg" x-maintain-ratio="TRUE" width="30px" height="30px" border="0" class="img_whs3"> The <span style="font-weight: bold;"><B>Object \r
+ Browser</B></span> in SALOME is destined for displaying the structure of the \r
+ current study in a tree-like form. It contains: </p>\r
+\r
+<p class="whs2"> </p>\r
+\r
+<ul type="disc" class="whs4">\r
+ \r
+ <li class=kadov-p><p class="whs2">components, loaded \r
+ during the current session</p></li>\r
+ \r
+ <li class=kadov-p><p class="whs2">objects with the \r
+ help of different components (The \r
+ objects created with the help of a definite component are located in the \r
+ folder having the name of this component.)</p></li>\r
+ \r
+ <li class=kadov-p><p class="whs2">references to different \r
+ objects (they are highlighted by red color).</p></li>\r
+</ul>\r
+\r
+<p class="whs2"> </p>\r
+\r
+<p class="whs5"><img src="../note1.gif" x-maintain-ratio="TRUE" width="36px" height="38px" border="0" class="img_whs6">The <span style="font-weight: bold;"><B>Object Browser </B></span>is \r
+ destined for getting quick access to different objects created during \r
+ SALOME session. All pop-up menu associated with the objects displayed \r
+ in the Object Browser are context-sensitive. So it depends on a definite \r
+ currently loaded SALOME component what options you will see in the pop-up \r
+ menu, if you right-click on definite object in the Object Browser.</p>\r
+\r
+<p class="whs2"> </p>\r
+\r
+<p class="whs2">The Object Browser may contain supplementary \r
+ attributes of the objects displayed in additional columns. By default, \r
+ these columns are not displayed - displaying/hiding these columns is possible \r
+ through <a href="setting_preferences.htm#Object_Browser">setting study \r
+ preferences</a>. </p>\r
+\r
+<p class="whs2"> </p>\r
+\r
+<ul type="disc" class="whs4">\r
+ \r
+ <li class=kadov-p><p class="whs2"><span style="font-weight: bold;"><B>Entry</B></span> \r
+ - Identification \r
+ index of the object in the structure of the study</p></li>\r
+ \r
+ <li class=kadov-p><p class="whs2"><span style="font-weight: bold;"><B>IOR</B></span> \r
+ - Interoperable \r
+ Object Reference</p></li>\r
+ \r
+ <li class=kadov-p><p class="whs2"><span style="font-weight: bold;"><B>Reference \r
+ entry</B></span> - \r
+ Identification \r
+ index of the references to the objects</p></li>\r
+</ul>\r
+\r
+<p class="whs2"> </p>\r
+\r
+<p class="whs5"><img src="../note1.gif" x-maintain-ratio="TRUE" width="36px" height="38px" border="0" class="img_whs6"> The attributes <span style="font-weight: bold;"><B>Entry, IOR, \r
+ Reference entry</B></span> are \r
+ only for debugging purposes in the framework of SALOME application.</p>\r
+\r
+<p class="whs2"> </p>\r
+\r
+<ul type="disc" class="whs4">\r
+ \r
+ <li class=kadov-p><p class="whs2"><span style="font-weight: bold;"><B>Value</B></span> \r
+ - Displays \r
+ the value of the first object attribute </p></li>\r
+</ul>\r
+\r
+<p class="whs2"> </p>\r
+\r
+<p class="whs2"> <img src="../pics/objbrowser2.jpg" x-maintain-ratio="TRUE" width="796px" height="313px" border="0" class="img_whs7"></p>\r
+\r
+<p class="whs2"> </p>\r
+\r
+<p class="whs2">In the Object Browser you can apply to \r
+ the objects an <span style="font-weight: bold;"><B>ascending</B></span> or <span \r
+ style="font-weight: bold;"><B>descending</B></span> <span style="font-weight: bold;"><B>sorting</B></span> \r
+ according to one definite attribute.</p>\r
+\r
+<p class="whs2"> </p>\r
+\r
+<p class=TODO>To sort the objects by one of the attributes:</p>\r
+\r
+<p class="whs8"> </p>\r
+\r
+<p class="whs9">Click on the column \r
+ of this attribute. An arrow down shows that the sorting is descending, \r
+ an arrow up - ascending.</p>\r
+\r
+<p class="whs10"> </p>\r
+\r
+<p class="whs10"> </p>\r
+\r
+<p class="whs10"> </p>\r
+\r
+<p class="whs11"> </p>\r
+\r
+<p class="whs12">\r
+<a href="javascript:void(0);" onClick="var e; if (parseInt(navigator.appVersion)>=4){e=event;} if (parseInt(navigator.appVersion) >=2 && typeof(PopupMenu_Invoke) == 'function') PopupMenu_Invoke(e,'','Introduction to IAPP','introduction_to_iapp.htm','SALOME PRO desktop','salome_pro_desktop.htm','Setting preferences','setting_preferences.htm');return false;" title="Related Topics"><img src="../ss_btn_related_topics.gif" border=0 height=17 width=82 alt="Related Topics"></a></p>\r
+\r
+<p class="whs12"> </p>\r
+\r
+<p class="whs12"> </p>\r
+\r
+<p class="whs11"> </p>\r
+\r
+<script type="text/javascript" language="JavaScript" title="WebHelpRelatedTopics"><!--\r
+if (parseInt(navigator.appVersion) >= 3 && typeof (WritePopupMenuLayer) == "function")\r
+ WritePopupMenuLayer();\r
+//--></script><script type="text/javascript" language="javascript1.2">\r
+<!--\r
+if (window.writeIntopicBar)\r
+ writeIntopicBar(0);\r
+//-->\r
+</script>\r
+</body>\r
+\r
+</html>\r
--- /dev/null
+<!doctype HTML public "-//W3C//DTD HTML 4.0 Frameset//EN">\r
+\r
+<html>\r
+\r
+<!--(==============================================================)-->\r
+<!--(Document created with RoboEditor. )============================-->\r
+<!--(==============================================================)-->\r
+\r
+<head>\r
+\r
+<title>Using Registry tool</title>\r
+\r
+<!--(Meta)==========================================================-->\r
+\r
+<meta http-equiv=content-type content="text/html; charset=windows-1252">\r
+<meta name=generator content="RoboHELP by eHelp Corporation - www.ehelp.com">\r
+<meta name=generator-major-version content=0.1>\r
+<meta name=generator-minor-version content=1>\r
+<meta name=filetype content=kadov>\r
+<meta name=filetype-version content=1>\r
+<meta name=page-count content=1>\r
+<meta name=layout-height content=1328>\r
+<meta name=layout-width content=700>\r
+\r
+\r
+<!--(Links)=========================================================-->\r
+\r
+ <link rel='stylesheet' href='../default_ns.css'>\r
+<script type="text/javascript" language="JavaScript" title="WebHelpSplitCss">\r
+<!--\r
+if (navigator.appName !="Netscape")\r
+{ document.write("<link rel='stylesheet' href='../default.css'>");}\r
+//-->\r
+</script>\r
+<style type="text/css">\r
+<!--\r
+h1.whs1 {text-align: justify;}\r
+p.whs2 {text-align: justify;}\r
+p.whs3 {margin-left: 40px; text-align: justify;}\r
+p.whs4 {font-style: italic; color: #ff0000; margin-left: 40px; text-align: justify;}\r
+img_whs5 {border-style: none; border: none; width: 636px; height: 257px; float: none;}\r
+p.whs6 {margin-left: 0px; text-align: justify;}\r
+img_whs7 {border-style: none; border: none; width: 414px; height: 251px; float: none;}\r
+p.whs8 {margin-left: 0px; font-weight: bold; text-align: justify;}\r
+-->\r
+</style>\r
+<script type="text/javascript" language="JavaScript">\r
+<!--\r
+if ((navigator.appName == "Netscape") && (parseInt(navigator.appVersion) == 4))\r
+{\r
+ var strNSS = "<style type='text/css'>";\r
+ strNSS += "p.whs6 {margin-left:1; }";\r
+ strNSS += "p.whs8 {margin-left:1; }";\r
+ strNSS +="</style>";\r
+ document.write(strNSS);\r
+}\r
+//-->\r
+</script>\r
+<script type="text/javascript" language="JavaScript" title="BSSC Special Effects" src="../ehlpdhtm.js"></script><script type="text/javascript" language="JavaScript" title="WebHelpInlineScript">\r
+<!--\r
+function reDo() {\r
+ if (innerWidth != origWidth || innerHeight != origHeight)\r
+ location.reload();\r
+}\r
+if ((parseInt(navigator.appVersion) == 4) && (navigator.appName == "Netscape")) {\r
+ origWidth = innerWidth;\r
+ origHeight = innerHeight;\r
+ onresize = reDo;\r
+}\r
+onerror = null; \r
+//-->\r
+</script>\r
+<style type="text/css">\r
+<!--\r
+ div.WebHelpPopupMenu {position:absolute; left:0px; top:0px; z-index:4; visibility:hidden;}\r
+-->\r
+</style>\r
+<script type="text/javascript" language="javascript1.2" src="../whmsg.js"></script>\r
+<script type="text/javascript" language="javascript" src="../whver.js"></script>\r
+<script type="text/javascript" language="javascript1.2" src="../whproxy.js"></script>\r
+<script type="text/javascript" language="javascript1.2" src="../whutils.js"></script>\r
+<script type="text/javascript" language="javascript1.2" src="../whtopic.js"></script>\r
+</head>\r
+\r
+<!--(Body)==========================================================-->\r
+\r
+\r
+<body>\r
+\r
+<script type="text/javascript" language="javascript1.2">\r
+<!--\r
+if (window.gbWhTopic)\r
+{\r
+ if (window.addTocInfo)\r
+ {\r
+ addTocInfo("IAPP module\nUsing Registry tool");\r
+addButton("show",BTN_TEXT,"Show","","","","",0,0,"","","");\r
+\r
+ }\r
+ if (window.writeBtnStyle)\r
+ writeBtnStyle();\r
+\r
+ if (window.writeIntopicBar)\r
+ writeIntopicBar(1);\r
+\r
+ if (window.setRelStartPage)\r
+ {\r
+ setRelStartPage("../kernel.html");\r
+\r
+ autoSync(0);\r
+ sendSyncInfo();\r
+ sendAveInfoOut();\r
+ }\r
+}\r
+else\r
+ document.location.reload();\r
+//-->\r
+</script>\r
+<h1 class="whs1">Using Registry tool</h1>\r
+\r
+<p class="whs2"><span style="font-weight: bold;"><B>Registry</B></span> \r
+ tool is in the SALOME platform is destined for providing information about \r
+ the processes (components), which have ever been launched in the current \r
+ study session. </p>\r
+\r
+<p class="whs2"> </p>\r
+\r
+<p class="whs2"> </p>\r
+\r
+<p class=TODO>To view the Registry:</p>\r
+\r
+<p class="whs2"> </p>\r
+\r
+<p class="whs3">From the main menu choose \r
+ <span style="font-weight: bold;"><B>Tools > Registry</B></span>, the following \r
+ dialog box will appear:</p>\r
+\r
+<p class="whs4"> </p>\r
+\r
+<p class="whs3"><img src="../pics/registry.jpg" x-maintain-ratio="TRUE" width="636px" height="257px" border="0" class="img_whs5"></p>\r
+\r
+<p class="whs3"> </p>\r
+\r
+<p class="whs6"><span style="font-weight: bold;"><B>Running</B></span> \r
+ tab of this dialog box displays a list of the currently started processes \r
+ (components) with supplementary information on each of them divided into \r
+ columns:</p>\r
+\r
+<p class="whs6"> </p>\r
+\r
+<p class="whs3">- <span style="font-weight: bold;"><B>Component: \r
+ </B></span>name of the started component</p>\r
+\r
+<p class="whs3">- <span style="font-weight: bold;"><B>PID: \r
+ </B></span>process identification number</p>\r
+\r
+<p class="whs3">- <span style="font-weight: bold;"><B>User \r
+ Name: </B></span>name of the user launching the component</p>\r
+\r
+<p class="whs3">- <span style="font-weight: bold;"><B>Machine: \r
+ </B></span>name of the machine, on which the process has been started</p>\r
+\r
+<p class="whs3">- <span style="font-weight: bold;"><B>begins: \r
+ </B></span>date and time of the starting of the component</p>\r
+\r
+<p class="whs3">- <span style="font-weight: bold;"><B>hello:</B></span> \r
+ date and time of the last call to the component</p>\r
+\r
+<p class="whs3"> </p>\r
+\r
+<p class="whs6"><span style="font-weight: bold;"><B>History</B></span> \r
+ tab displays a list of all processes, which have ever been launched within \r
+ this study session. It contains the same supplementary information on \r
+ each of the processes (components).</p>\r
+\r
+<p class="whs6"> </p>\r
+\r
+<p class="whs6"><span style="font-weight: bold;"><B>Refresh \r
+ </B></span>button allows to refresh the current list of processes (components).</p>\r
+\r
+<p class="whs6"> </p>\r
+\r
+<p class="whs6"><span style="font-weight: bold;"><B>Interval</B></span> \r
+ button allows to set an interval for refreshment of the current list of \r
+ processes (components).</p>\r
+\r
+<p class="whs6"> </p>\r
+\r
+<p class="whs6"><span style="font-weight: bold;"><B>Help</B></span> \r
+ displays a help message on this tool</p>\r
+\r
+<p class="whs2"> </p>\r
+\r
+<p class=TODO>To display complete information on a definite process (component):</p>\r
+\r
+<p class="whs2"> </p>\r
+\r
+<p class="whs3">Double-click on this \r
+ process (component). The following window will appear:</p>\r
+\r
+<p class="whs4"> </p>\r
+\r
+<p class="whs3"><img src="../pics/registy1.jpg" x-maintain-ratio="TRUE" width="414px" height="251px" border="0" class="img_whs7"></p>\r
+\r
+<p class="whs3"> </p>\r
+\r
+<p class="whs3"> </p>\r
+\r
+<p class="whs6"> </p>\r
+\r
+<p class="whs8">\r
+<a href="javascript:void(0);" onClick="var e; if (parseInt(navigator.appVersion)>=4){e=event;} if (parseInt(navigator.appVersion) >=2 && typeof(PopupMenu_Invoke) == 'function') PopupMenu_Invoke(e,'','Introduction to IAPP','introduction_to_iapp.htm','SALOME PRO desktop','salome_pro_desktop.htm');return false;" title="Related Topics"><img src="../ss_btn_related_topics.gif" border=0 height=17 width=82 alt="Related Topics"></a></p>\r
+\r
+<p class="whs8"> </p>\r
+\r
+<p class="whs8"> </p>\r
+\r
+<script type="text/javascript" language="JavaScript" title="WebHelpRelatedTopics"><!--\r
+if (parseInt(navigator.appVersion) >= 3 && typeof (WritePopupMenuLayer) == "function")\r
+ WritePopupMenuLayer();\r
+//--></script><script type="text/javascript" language="javascript1.2">\r
+<!--\r
+if (window.writeIntopicBar)\r
+ writeIntopicBar(0);\r
+//-->\r
+</script>\r
+</body>\r
+\r
+</html>\r
--- /dev/null
+<!doctype HTML public "-//W3C//DTD HTML 4.0 Frameset//EN">\r
+\r
+<html>\r
+\r
+<!--(==============================================================)-->\r
+<!--(Document created with RoboEditor. )============================-->\r
+<!--(==============================================================)-->\r
+\r
+<head>\r
+\r
+<title>Using UseCase Browser</title>\r
+\r
+<!--(Meta)==========================================================-->\r
+\r
+<meta http-equiv=content-type content="text/html; charset=windows-1252">\r
+<meta name=generator content="RoboHELP by eHelp Corporation - www.ehelp.com">\r
+<meta name=generator-major-version content=0.1>\r
+<meta name=generator-minor-version content=1>\r
+<meta name=filetype content=kadov>\r
+<meta name=filetype-version content=1>\r
+<meta name=page-count content=1>\r
+<meta name=layout-height content=1671>\r
+<meta name=layout-width content=700>\r
+\r
+\r
+<!--(Links)=========================================================-->\r
+\r
+ <link rel='stylesheet' href='../default_ns.css'>\r
+<script type="text/javascript" language="JavaScript" title="WebHelpSplitCss">\r
+<!--\r
+if (navigator.appName !="Netscape")\r
+{ document.write("<link rel='stylesheet' href='../default.css'>");}\r
+//-->\r
+</script>\r
+<style type="text/css">\r
+<!--\r
+h1.whs1 {text-align: justify;}\r
+p.whs2 {text-align: justify;}\r
+img_whs3 {border-style: none; border: none; width: 30px; height: 30px; float: none;}\r
+p.whs4 {margin-left: 40px; text-align: justify;}\r
+img_whs5 {border-style: none; border: none; width: 293px; height: 348px; float: none;}\r
+p.whs6 {margin-left: 0px; text-align: justify;}\r
+img_whs7 {border-style: none; border: none; width: 342px; height: 299px; float: none;}\r
+p.whs8 {background-image:url(../texture_horiz_ltbluebubbles.jpg); text-align:justify; }\r
+img_whs9 {border-style: none; border: none; float: none; width: 36px; height: 38px;}\r
+p.whs10 {font-weight: bold; text-align: justify;}\r
+-->\r
+</style>\r
+<script type="text/javascript" language="JavaScript">\r
+<!--\r
+if ((navigator.appName == "Netscape") && (parseInt(navigator.appVersion) == 4))\r
+{\r
+ var strNSS = "<style type='text/css'>";\r
+ strNSS += "p.whs6 {margin-left:1; }";\r
+ strNSS +="</style>";\r
+ document.write(strNSS);\r
+}\r
+//-->\r
+</script>\r
+<script type="text/javascript" language="JavaScript" title="BSSC Special Effects" src="../ehlpdhtm.js"></script><script type="text/javascript" language="JavaScript" title="WebHelpInlineScript">\r
+<!--\r
+function reDo() {\r
+ if (innerWidth != origWidth || innerHeight != origHeight)\r
+ location.reload();\r
+}\r
+if ((parseInt(navigator.appVersion) == 4) && (navigator.appName == "Netscape")) {\r
+ origWidth = innerWidth;\r
+ origHeight = innerHeight;\r
+ onresize = reDo;\r
+}\r
+onerror = null; \r
+//-->\r
+</script>\r
+<style type="text/css">\r
+<!--\r
+ div.WebHelpPopupMenu {position:absolute; left:0px; top:0px; z-index:4; visibility:hidden;}\r
+-->\r
+</style>\r
+<script type="text/javascript" language="javascript1.2" src="../whmsg.js"></script>\r
+<script type="text/javascript" language="javascript" src="../whver.js"></script>\r
+<script type="text/javascript" language="javascript1.2" src="../whproxy.js"></script>\r
+<script type="text/javascript" language="javascript1.2" src="../whutils.js"></script>\r
+<script type="text/javascript" language="javascript1.2" src="../whtopic.js"></script>\r
+</head>\r
+\r
+<!--(Body)==========================================================-->\r
+\r
+\r
+<body>\r
+\r
+<script type="text/javascript" language="javascript1.2">\r
+<!--\r
+if (window.gbWhTopic)\r
+{\r
+ if (window.addTocInfo)\r
+ {\r
+ addTocInfo("IAPP module\nUsing UseCase Browser");\r
+addButton("show",BTN_TEXT,"Show","","","","",0,0,"","","");\r
+\r
+ }\r
+ if (window.writeBtnStyle)\r
+ writeBtnStyle();\r
+\r
+ if (window.writeIntopicBar)\r
+ writeIntopicBar(1);\r
+\r
+ if (window.setRelStartPage)\r
+ {\r
+ setRelStartPage("../kernel.html");\r
+\r
+ autoSync(0);\r
+ sendSyncInfo();\r
+ sendAveInfoOut();\r
+ }\r
+}\r
+else\r
+ document.location.reload();\r
+//-->\r
+</script>\r
+<h1 class="whs1">Using UseCase Browser</h1>\r
+\r
+<p class="whs2"><img src="../i_blue.jpg" x-maintain-ratio="TRUE" width="30px" height="30px" border="0" class="img_whs3">In comparison with the Object \r
+ Browser, the <span style="font-weight: bold;"><B>UseCase Browser</B></span> is \r
+ destined for displaying a \r
+ user-defined structure of the current study. All objects created during \r
+ SALOME session are displayed the Object Browser and copied to the UseCase \r
+ Browser. But in the UseCase Browser they are displayed without any structure. \r
+ In the UseCase Browser you can create your own structure of the study. \r
+ </p>\r
+\r
+<p class="whs2"> </p>\r
+\r
+<p class=TODO>To view the UseCase Browser: </p>\r
+\r
+<p class="whs2"> </p>\r
+\r
+<p class="whs4">Click on the tab <span \r
+ style="font-weight: bold;"><B>UseCase Browser </B></span>at the bottom of the \r
+ study window:</p>\r
+\r
+<p class="whs4"> </p>\r
+\r
+<p class="whs4"><img src="../pics/usecasebr.jpg" x-maintain-ratio="TRUE" width="293px" height="348px" border="0" class="img_whs5"></p>\r
+\r
+<p class="whs4"> </p>\r
+\r
+<p class="whs6">On this picture you can \r
+ see that all objects are displayed on one level and under one folder <span \r
+ style="font-weight: bold;"><B>Use cases. </B></span></p>\r
+\r
+<p class="whs6"> </p>\r
+\r
+<p class="whs6"><img src="../pics/newobj.jpg" x-maintain-ratio="TRUE" width="30px" height="30px" border="0" class="img_whs3"> Creates \r
+ a new object under the current object with a default name <span style="font-weight: bold;"><B>New \r
+ object</B></span>. The same operation is possible if you right-click on the \r
+ object, which you would like to be current for a new object, and from \r
+ the pop-up menu select <span style="font-weight: bold;"><B>Use case > \r
+ New object</B></span>.<span style="font-weight: bold;"> <B></B></span></p>\r
+\r
+<p class="whs6">These objects can be \r
+ renamed: right-click on it and from the pop-up menu select <span style="font-weight: bold;"><B>Use \r
+ case > Rename</B></span>.<span style="font-weight: bold;"> <B></B></span></p>\r
+\r
+<p class="whs6"> </p>\r
+\r
+<p class="whs6"><img src="../pics/addobj.jpg" x-maintain-ratio="TRUE" width="30px" height="30px" border="0" class="img_whs3"> Adds \r
+ a selected object to the current object. This operation is also possible \r
+ if you drag and drop any object to another object. In this case the second \r
+ object will be automatically set as current.</p>\r
+\r
+<p class="whs6"> </p>\r
+\r
+<p class="whs6"><img src="../pics/removeobj.jpg" x-maintain-ratio="TRUE" width="30px" height="30px" border="0" class="img_whs3"> Removes \r
+ the selected object with all child objects.</p>\r
+\r
+<p class="whs6"> </p>\r
+\r
+<p class="whs6"><img src="../pics/clear.jpg" x-maintain-ratio="TRUE" width="30px" height="30px" border="0" class="img_whs3"> Clears \r
+ all objects from the UseCase Browser.</p>\r
+\r
+<p class="whs6"> </p>\r
+\r
+<p class="whs6"><img src="../pics/setcurrent.jpg" x-maintain-ratio="TRUE" width="30px" height="30px" border="0" class="img_whs3"> Set \r
+ the selected object current (root) for other objects. You can add one \r
+ or several objects to the current object.</p>\r
+\r
+<p class="whs6"> </p>\r
+\r
+<p class="whs6">On the following picture \r
+ you can see a custom tree-like structure of objects created in the UseCase \r
+ Browser:</p>\r
+\r
+<p class="whs6"> </p>\r
+\r
+<p class="whs4"><img src="../pics/usecasebrsr.jpg" x-maintain-ratio="TRUE" width="342px" height="299px" border="0" class="img_whs7"></p>\r
+\r
+<p class="whs4"> </p>\r
+\r
+<p class="whs8"><img src="../note1.gif" x-maintain-ratio="TRUE" width="36px" height="38px" border="0" class="img_whs9">The <span style="font-weight: bold;"><B>UseCase Browser </B></span> is \r
+ also destined for getting quick access to different objects in the user-defined \r
+ structure of the study. All pop-up menu associated with the objects displayed \r
+ in the UseCase Browser are context-sensitive. So it depends on a definite \r
+ currently loaded SALOME component what options you will see in the pop-up \r
+ menu (besides the options allowing to modify the structure), if you right-click \r
+ on definite object in the UseCase Browser.</p>\r
+\r
+<p class="whs2"> </p>\r
+\r
+<p class="whs2"> </p>\r
+\r
+<p class="whs2"> </p>\r
+\r
+<p class="whs10">\r
+<a href="javascript:void(0);" onClick="var e; if (parseInt(navigator.appVersion)>=4){e=event;} if (parseInt(navigator.appVersion) >=2 && typeof(PopupMenu_Invoke) == 'function') PopupMenu_Invoke(e,'','Introduction to IAPP','introduction_to_iapp.htm','SALOME PRO desktop','salome_pro_desktop.htm','Using Object Browser','using_object_browser.htm');return false;" title="Related Topics"><img src="../ss_btn_related_topics.gif" border=0 height=17 width=82 alt="Related Topics"></a></p>\r
+\r
+<p class="whs10"> </p>\r
+\r
+<p class="whs10"> </p>\r
+\r
+<p class="whs2"> </p>\r
+\r
+<p class="whs6"> </p>\r
+\r
+<script type="text/javascript" language="JavaScript" title="WebHelpRelatedTopics"><!--\r
+if (parseInt(navigator.appVersion) >= 3 && typeof (WritePopupMenuLayer) == "function")\r
+ WritePopupMenuLayer();\r
+//--></script><script type="text/javascript" language="javascript1.2">\r
+<!--\r
+if (window.writeIntopicBar)\r
+ writeIntopicBar(0);\r
+//-->\r
+</script>\r
+</body>\r
+\r
+</html>\r
--- /dev/null
+\r
+<html>\r
+<head><script language="javascript">\r
+<!--\r
+var sIcon="whstart.ico";\r
+var sPath=document.location.href;\r
+if (sPath.indexOf("http")!= -1)\r
+ document.write("<link REL=\"SHORTCUT ICON\" href=\""+ sIcon +"\">");\r
+//-->\r
+</script>\r
+ <title>SALOME reference manual</title>\r
+ <meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
+ <meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">\r
+ <meta name "description" content="WebHelp 2002">\r
+</head>\r
+<script type="text/javascript" language="javascript" src="whver.js"></script>\r
+<script type="text/javascript" language="javascript" src="whutils.js"></script>\r
+<script type="text/javascript" language="javascript" src="whmsg.js"></script>\r
+<script type="text/javascript" language="javascript" >\r
+<!--\r
+if (!window.gbWhVer||!window.gbWhUtil||!window.gbWhMsg)\r
+ document.location.reload();\r
+//-->\r
+</script>\r
+\r
+<script type="text/javascript" language="javascript" src="whstub.js"></script>\r
+<script language="javascript">\r
+<!--\r
+var nWebhelpNavPaneMode = 1; //1: DHTML 2:Applet 3:PureHTML 4:NoframeAt all\r
+var strPaneDHTML = "whskin_pdhtml.htm"; //whd_nvp10.htm if tab enabled, whnframe.htm if tab disabled.\r
+var strPaneApplet = "whskin_papplet.htm";\r
+var strPaneList = "whskin_plist.htm";\r
+var bNoApplet = false;\r
+\r
+var strPane = "";\r
+\r
+var nViewFrameType = nWebhelpNavPaneMode;\r
+\r
+if (!window.gAgent)\r
+{\r
+ // low end browser, we don't even try to determine it.\r
+ document.location = "whnjs.htm";\r
+}\r
+else\r
+{\r
+ if (!gbNav4 && !gbIE4) \r
+ document.location = "whnjs.htm";\r
+ if (gbNav4 && !gbNav6 && ((gnVerMinor <= 4.06)))\r
+ document.location = "whnjs.htm";\r
+ if (gbMac && gbIE4 && !gbIE5) \r
+ document.location = "whnjs.htm";\r
+ //figure out which mode is the best\r
+ if ((nWebhelpNavPaneMode == 1) ||\r
+ (nWebhelpNavPaneMode == 2))\r
+ {\r
+ var gbDHTML = (nWebhelpNavPaneMode == 1);\r
+ if (nWebhelpNavPaneMode == 2) nViewFrameType = 2;\r
+ if (gbNav4) nViewFrameType = 2;\r
+ if (gbNav4 && (gnVerMinor < 4.1)) nViewFrameType = 3;\r
+ if (gbNav4 && (gnVerMinor == 4.6)) nViewFrameType = 3;\r
+ if (gbIE4 && gbDHTML) nViewFrameType = 1;\r
+ if (gbIE4 && gbSunOS && nWebhelpNavPaneMode == 2) nViewFrameType = 3;\r
+ if (gbNav6 && gbDHTML) nViewFrameType = 1;\r
+ if (gbNav6 && !gbNav61 && nWebhelpNavPaneMode == 2) nViewFrameType = 3;\r
+ if (gbMac) nViewFrameType = 3;\r
+ if ((bNoApplet) && (nViewFrameType == 2)) nViewFrameType = 3;\r
+ if (gbOpera) nViewFrameType = 3;\r
+ }\r
+}\r
+\r
+var gbWindows = ((gAgent.indexOf("win") != -1) || (gAgent.indexOf("16bit") != -1));\r
+//The colordepth of the 16 color on Windows is 1. \r
+if ((gbWindows) && (gbNav4) && (window.screen) && (window.screen.colorDepth <= 4))\r
+{\r
+ alert("WebHelp has detected that your display is set to 16 colors. For full WebHelp support, please set your display to use 256 or more colors.");\r
+ nViewFrameType = 3;\r
+}\r
+\r
+//figure out which one is navpane\r
+// ReplaceMark:nViewFrameType = 1\r
+if (nViewFrameType == 1)\r
+{\r
+ if (gbNav4 && !gbNav6)\r
+ strPane = strPaneList;\r
+ else\r
+ strPane = strPaneDHTML;\r
+}\r
+else if (nViewFrameType == 2)\r
+ strPane = strPaneApplet;\r
+else\r
+ strPane = strPaneList;\r
+//-->\r
+</script>\r
+<script type="text/javascript" language="javascript" src="whstart.js"></script>\r
+<script type="text/javascript" language="javascript">\r
+<!--\r
+if (!gbIE4 && !gbNav4)\r
+ document.location = "whnjs.htm";\r
+\r
+function CMRAgent( strID, strURL, strLabel, strFrameAttr )\r
+{\r
+ this.m_strID = strID;\r
+ this.m_strURL = strURL;\r
+ this.m_strLabel = strLabel;\r
+ this.m_strFrameAttr = strFrameAttr;\r
+}\r
+\r
+function CMRServer()\r
+{\r
+ this.m_strVersion;\r
+ this.m_strDefAgent;\r
+ this.m_strAgentList;\r
+ this.m_bTrial;\r
+ this.m_bExpired;\r
+ this.m_bSinglePane;\r
+ this.m_strProduct;\r
+ this.m_strWindow;\r
+ this.m_strProject;\r
+ this.m_strContextID;\r
+ this.m_strCaption; \r
+ this.m_strURLSkinFile;\r
+ this.m_strURLResource;\r
+ this.m_strURLLogoImg;\r
+ this.m_strURLTopic;\r
+ this.m_strURLBase;\r
+ this.m_bShowSync;\r
+ this.m_bShowBrowseSequences;\r
+ this.m_bShowSearchInput;\r
+ this.m_cAgents = new Array;\r
+}\r
+var cMRServer = new CMRServer;\r
+// GetServerInfo\r
+// Registry the agent array handled by webhelp\r
+// ReplaceMark:MRServer.strServerData\r
+//-->\r
+</script>\r
+\r
+<script type="text/javascript" language="javascript">\r
+<!--\r
+var strHTML = "<frameset rows=\"32,*\" hostof=\"parent:toolbar!startpage:yes\" frameborder=\"no\" border=\"0\"><frame src=\"whskin_tbars.htm\" id=\"toolbar\" frameborder=\"no\" border=\"0\" scrolling=\"no\" noresize marginheight=\"0\" marginwidth=\"0\" title=\"Toolbar\"></frame><frame src=\"whskin_frmset01.htm\" frameborder=\"yes\" border=\"1\" scrolling=\"auto\" marginheight=\"0\" marginwidth=\"0\"></frame></frameset>";\r
+document.write(strHTML);\r
+//-->\r
+</script>\r
+\r
+<frameset cols="100%,*" frameborder=no border=0>\r
+ <frame src="whnjs.htm">\r
+ <frame src="whskin_blank.htm" noresize>\r
+</frameset>\r
+\r
+</html>
\ No newline at end of file
--- /dev/null
+<html>\r
+<head>\r
+<title>SALOME reference manual</title>\r
+<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
+<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">\r
+<meta name "description" content="WebHelp 2002">\r
+<script language="javascript" src="whutils.js"></script>\r
+<script language="javascript">\r
+<!--\r
+var gCSHFileName = "whc_data.htm";\r
+var gCSHSuffixName1 = "_csh.html";\r
+var gCSHSuffixName2 = "_csh.htm";\r
+//-->\r
+</script>\r
+<script language="javascript">\r
+<!--\r
+gCSHFileName="cshdat_webhelp.htm";\r
+//-->\r
+</script>\r
+<script language="javascript">\r
+<!--\r
+var gasProj = new Array();\r
+gasProj[0] = _getPath(document.location.href);\r
+var gCurrent = 0;\r
+\r
+function addProject(strProj)\r
+{\r
+ var len = gasProj.length;\r
+ var strPPath = _getFullPath(_getPath(document.location.href), strProj);\r
+ var bFound = false;\r
+ for (var i = 0; i < len; i ++)\r
+ {\r
+ if (isSamePath(gasProj[i], strPPath))\r
+ {\r
+ bFound = true;\r
+ break;\r
+ }\r
+ }\r
+ if (!bFound)\r
+ gasProj[len] = strPPath; \r
+}\r
+\r
+function isSamePath(strPath1, strPath2)\r
+{\r
+ return strPath1.toLowerCase() == strPath2.toLowerCase();\r
+}\r
+\r
+function goNext()\r
+{\r
+ gCurrent ++;\r
+ var len = gasProj.length;\r
+ if (gCurrent >= len)\r
+ return getHomePage()\r
+ else\r
+ frames["csh"].location = gasProj[gCurrent] + gCSHFileName;\r
+ return "";\r
+}\r
+\r
+function getRelHomePage(strLocation)\r
+{\r
+ var strCurPPath = _getPath(strLocation);\r
+ var strOriPPath = _getPath(getHomePage());\r
+ var strRelPath = _getRelativeFileName(strOriPPath, strCurPPath);\r
+ var strURL = getHomePage() + "#" + strRelPath;\r
+ return strURL;\r
+}\r
+\r
+function getHomePage()\r
+{\r
+ var strHomePage;\r
+ var strTmp = location.toString();\r
+ var nPos = strTmp.indexOf("#");\r
+ if (nPos != -1)\r
+ {\r
+ strHomePage = strTmp.substring(0, nPos);\r
+ }\r
+ else\r
+ {\r
+ strHomePage = strTmp;\r
+ }\r
+ var nPos1 = strHomePage.indexOf(gCSHSuffixName1);\r
+ var nPos = strHomePage.indexOf(gCSHSuffixName2);\r
+ if (nPos != -1)\r
+ {\r
+ strHomePage = strHomePage.substring(0,nPos);\r
+ if (nPos1 != -1)\r
+ strHomePage += ".html";\r
+ else\r
+ strHomePage += ".htm";\r
+ }\r
+ return strHomePage;\r
+}\r
+//-->\r
+</script>\r
+</head>\r
+<frameset rows="1,*">\r
+<frame name="dumb" src="about:blank"></frame>\r
+<frame name="csh" src="cshdat_webhelp.htm"></frame> \r
+</frameset>\r
+</html>
\ No newline at end of file
--- /dev/null
+<html>\r
+<head>\r
+<title>SALOME reference manual</title>\r
+<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
+<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">\r
+<meta name "description" content="WebHelp 2002">\r
+<script language="javascript" src="whutils.js"></script>\r
+<script language="javascript">\r
+<!--\r
+var gCSHFileName = "whc_data.htm";\r
+var gCSHSuffixName1 = "_rhc.html";\r
+var gCSHSuffixName2 = "_rhc.htm";\r
+//-->\r
+</script>\r
+<script language="javascript">\r
+<!--\r
+gCSHFileName="cshdat_robohelp.htm";\r
+//-->\r
+</script>\r
+<script language="javascript">\r
+<!--\r
+var gasProj = new Array();\r
+gasProj[0] = _getPath(document.location.href);\r
+var gCurrent = 0;\r
+\r
+function addProject(strProj)\r
+{\r
+ var len = gasProj.length;\r
+ var strPPath = _getFullPath(_getPath(document.location.href), strProj);\r
+ var bFound = false;\r
+ for (var i = 0; i < len; i ++)\r
+ {\r
+ if (isSamePath(gasProj[i], strPPath))\r
+ {\r
+ bFound = true;\r
+ break;\r
+ }\r
+ }\r
+ if (!bFound)\r
+ gasProj[len] = strPPath; \r
+}\r
+\r
+function isSamePath(strPath1, strPath2)\r
+{\r
+ return strPath1.toLowerCase() == strPath2.toLowerCase();\r
+}\r
+\r
+function goNext()\r
+{\r
+ gCurrent ++;\r
+ var len = gasProj.length;\r
+ if (gCurrent >= len)\r
+ return getHomePage()\r
+ else\r
+ frames["csh"].location = gasProj[gCurrent] + gCSHFileName;\r
+ return "";\r
+}\r
+\r
+function getRelHomePage(strLocation)\r
+{\r
+ var strCurPPath = _getPath(strLocation);\r
+ var strOriPPath = _getPath(getHomePage());\r
+ var strRelPath = _getRelativeFileName(strOriPPath, strCurPPath);\r
+ var strURL = getHomePage() + "#" + strRelPath;\r
+ return strURL;\r
+}\r
+\r
+function getHomePage()\r
+{\r
+ var strHomePage;\r
+ var strTmp = location.toString();\r
+ var nPos = strTmp.indexOf("#");\r
+ if (nPos != -1)\r
+ {\r
+ strHomePage = strTmp.substring(0, nPos);\r
+ }\r
+ else\r
+ {\r
+ strHomePage = strTmp;\r
+ }\r
+ var nPos1 = strHomePage.indexOf(gCSHSuffixName1);\r
+ var nPos = strHomePage.indexOf(gCSHSuffixName2);\r
+ if (nPos != -1)\r
+ {\r
+ strHomePage = strHomePage.substring(0,nPos);\r
+ if (nPos1 != -1)\r
+ strHomePage += ".html";\r
+ else\r
+ strHomePage += ".htm";\r
+ }\r
+ return strHomePage;\r
+}\r
+//-->\r
+</script>\r
+</head>\r
+<frameset rows="1,*">\r
+<frame name="dumb" src="about:blank"></frame>\r
+<frame name="csh" src="cshdat_robohelp.htm"></frame> \r
+</frameset>\r
+</html>
\ No newline at end of file
--- /dev/null
+var gTEA = new Array();\r
+function aTE(sTopicTitle, sTopicURL)\r
+{\r
+ var len = gTEA.length;\r
+ gTEA[len] = new topicEntry(sTopicTitle, sTopicURL);\r
+}\r
+\r
+function topicEntry(sTopicTitle, sTopicURL)\r
+{\r
+ this.sTopicTitle = sTopicTitle;\r
+ this.sTopicURL = sTopicURL;\r
+}\r
+\r
+function window_OnLoad()\r
+{\r
+ if (parent && parent != this) {\r
+ if (parent.putFtsTData) \r
+ {\r
+ parent.putFtsTData(gTEA);\r
+ }\r
+ }\r
+}\r
+\r
+window.onload = window_OnLoad;
\ No newline at end of file
--- /dev/null
+<html>\r
+<head>\r
+<META HTTP-EQUIV="content-type" CONTENT="text/html; charset=iso-8859-1">\r
+</head>\r
+<body>\r
+<script language="javascript" src="whftdata.js"></script>\r
+<script language="javascript">\r
+<!--\r
+//-->\r
+</script>\r
+<script language="javascript">\r
+<!--\r
+aTE("About SALOME architecture","files/about_salome_pro_architecture.htm");\r
+aTE("About SALOME help system","files/about_salome_pro_help_system.htm");\r
+aTE("Copyright notice","files/copyright_notice.htm");\r
+aTE("Creating a new study","files/creating_a_new_study.htm");\r
+aTE("Displaying/hiding toolbars","files/displaying_hiding_toolbars.htm");\r
+aTE("Displaying studies","files/displaying_studies.htm");\r
+aTE("Editing studies","files/editing_studies.htm");\r
+aTE("Getting properties of the study","files/getting_properties_of_the_study.htm");\r
+aTE("Getting started2","files/getting_started2.htm");\r
+aTE("Installing SALOME","files/installing_salome_pro.htm");\r
+aTE("Introduction","files/introduction.htm");\r
+aTE("Introduction to IAPP","files/introduction_to_iapp.htm");\r
+aTE("Introduction to SALOME","files/introduction_to_salome_pro.htm");\r
+aTE("Navigating topics","files/navigating_topics.htm");\r
+aTE("Opening studies","files/opening_studies.htm");\r
+aTE("Installing SALOME","files/readme.html");\r
+aTE("Running SALOME","files/running_salome_pro.htm");\r
+aTE("SALOME desktop","files/salome_pro_desktop.htm");\r
+aTE("Saving a study","files/saving_a_study.htm");\r
+aTE("Setting preferences","files/setting_preferences.htm");\r
+aTE("Using Catalog Generator","files/using_catalog_generator.htm");\r
+aTE("Using left-hand tabs","files/using_left-hand_tabs.htm");\r
+aTE("Using Object Browser","files/using_object_browser.htm");\r
+aTE("Using Registry tool","files/using_registry.htm");\r
+aTE("Using UseCase Browser","files/using_usecase_browser.htm");\r
+\r
+//-->\r
+</script>\r
+</script>\r
--- /dev/null
+<?xml version='1.0' encoding='ISO-8859-1' ?>\r
+<ftstdata>\r
+<topic name="About SALOME architecture" url="files/about_salome_pro_architecture.htm" />\r
+<topic name="About SALOME help system" url="files/about_salome_pro_help_system.htm" />\r
+<topic name="Copyright notice" url="files/copyright_notice.htm" />\r
+<topic name="Creating a new study" url="files/creating_a_new_study.htm" />\r
+<topic name="Displaying/hiding toolbars" url="files/displaying_hiding_toolbars.htm" />\r
+<topic name="Displaying studies" url="files/displaying_studies.htm" />\r
+<topic name="Editing studies" url="files/editing_studies.htm" />\r
+<topic name="Getting properties of the study" url="files/getting_properties_of_the_study.htm" />\r
+<topic name="Getting started2" url="files/getting_started2.htm" />\r
+<topic name="Installing SALOME" url="files/installing_salome_pro.htm" />\r
+<topic name="Introduction" url="files/introduction.htm" />\r
+<topic name="Introduction to IAPP" url="files/introduction_to_iapp.htm" />\r
+<topic name="Introduction to SALOME" url="files/introduction_to_salome_pro.htm" />\r
+<topic name="Navigating topics" url="files/navigating_topics.htm" />\r
+<topic name="Opening studies" url="files/opening_studies.htm" />\r
+<topic name="Installing SALOME" url="files/readme.html" />\r
+<topic name="Running SALOME" url="files/running_salome_pro.htm" />\r
+<topic name="SALOME desktop" url="files/salome_pro_desktop.htm" />\r
+<topic name="Saving a study" url="files/saving_a_study.htm" />\r
+<topic name="Setting preferences" url="files/setting_preferences.htm" />\r
+<topic name="Using Catalog Generator" url="files/using_catalog_generator.htm" />\r
+<topic name="Using left-hand tabs" url="files/using_left-hand_tabs.htm" />\r
+<topic name="Using Object Browser" url="files/using_object_browser.htm" />\r
+<topic name="Using Registry tool" url="files/using_registry.htm" />\r
+<topic name="Using UseCase Browser" url="files/using_usecase_browser.htm" />\r
+\r
+</ftstdata> \r
--- /dev/null
+<html>\r
+<head>\r
+<META HTTP-EQUIV="content-type" CONTENT="text/html; charset=iso-8859-1">\r
+</head>\r
+<body>\r
+<script language="javascript" src="whfts.js"></script>\r
+<script language="javascript">\r
+<!--\r
+iWM("_numpy","zoom","whfwdata0.htm");\r
+\r
+iTM(0,24,"whftdata0.htm");\r
+\r
+-->\r
+</script>\r
+</body>\r
+</html>
\ No newline at end of file
--- /dev/null
+var gaFileMapping = new Array();\r
+var gaFileTopicMapping = new Array();\r
+\r
+function fileMapping(sStartKey, sEndKey, sFileName)\r
+{\r
+ this.sStartKey = sStartKey;\r
+ this.sEndKey = sEndKey;\r
+ this.sFileName = sFileName;\r
+ this.aFtsKeys = null;\r
+}\r
+\r
+function fileTopicMapping(nIdBegin, nIdEnd, sFileName)\r
+{\r
+ this.nBegin = nIdBegin;\r
+ this.nEnd = nIdEnd;\r
+ this.sFileName = sFileName;\r
+ this.aTopics = null;\r
+}\r
+\r
+\r
+function iWM(sStartKey, sEndKey, sFileName)\r
+{\r
+ gaFileMapping[gaFileMapping.length] = new fileMapping(sStartKey, sEndKey, sFileName); \r
+}\r
+\r
+function window_OnLoad()\r
+{\r
+ if (parent && parent != this && parent.ftsReady)\r
+ {\r
+ parent.ftsReady(gaFileMapping, gaFileTopicMapping);\r
+ } \r
+}\r
+\r
+function iTM(nIdBegin, nIdEnd, sFileName)\r
+{\r
+ gaFileTopicMapping[gaFileTopicMapping.length] = new fileTopicMapping(nIdBegin, nIdEnd, sFileName); \r
+}\r
+\r
+window.onload = window_OnLoad;\r
--- /dev/null
+<?xml version='1.0' encoding='ISO-8859-1' ?>\r
+<fts>\r
+<chunkinfo url="whfwdata0.xml" first="_numpy" last="zoom"/>\r
+\r
+<tchunkinfo first="0" last="24" url="whftdata0.xml" />\r
+\r
+</fts>\r
--- /dev/null
+var gWEA = new Array();\r
+function aWE()\r
+{\r
+ var len = gWEA.length;\r
+ gWEA[len] = new ftsEntry(aWE.arguments);\r
+}\r
+\r
+function ftsEntry(fn_arguments) \r
+{\r
+ if (fn_arguments.length && fn_arguments.length >= 1) \r
+ {\r
+ this.sItemName = fn_arguments[0];\r
+ this.aTopics = null;\r
+ var nLen = fn_arguments.length;\r
+ if (nLen > 1) \r
+ {\r
+ this.aTopics = new Array();\r
+ for (var i = 0; i < nLen - 1; i ++ )\r
+ {\r
+ this.aTopics[i] = fn_arguments[i + 1];\r
+ }\r
+ }\r
+ }\r
+}\r
+\r
+function window_OnLoad()\r
+{\r
+ if (parent && parent != this) {\r
+ if (parent.putFtsWData) \r
+ {\r
+ parent.putFtsWData(gWEA);\r
+ }\r
+ }\r
+}\r
+\r
+window.onload = window_OnLoad;
\ No newline at end of file
--- /dev/null
+<html>\r
+<head>\r
+<META HTTP-EQUIV="content-type" CONTENT="text/html; charset=iso-8859-1">\r
+</head>\r
+<body>\r
+<script language="javascript" src="whfwdata.js"></script>\r
+<script language="javascript">\r
+<!--\r
+//-->\r
+</script>\r
+<script language="javascript">\r
+<!--\r
+aWE("_numpy",9,15);\r
+aWE("_omnipymodul",9,15);\r
+aWE("0",9,15);\r
+aWE("0_glibc2",9,15);\r
+aWE("030402",9,15);\r
+aWE("1",3,9,15,16);\r
+aWE("11",9,15);\r
+aWE("13",9,15);\r
+aWE("17",9,15);\r
+aWE("2",3,9,15,16);\r
+aWE("2003",2);\r
+aWE("22",9,15);\r
+aWE("2c",15);\r
+aWE("3",9,15,16);\r
+aWE("3d",12,17);\r
+aWE("4",2,9,15);\r
+aWE("5",9,15);\r
+aWE("6",9,15);\r
+aWE("7",15);\r
+aWE("8",9,15);\r
+aWE("9",9,15);\r
+aWE("91400",2);\r
+aWE("abl",0,9,15);\r
+aWE("abort",9,15);\r
+aWE("abov",7,9,15);\r
+aWE("absolut",9);\r
+aWE("acces",0,17,22,24);\r
+aWE("accidental",9,15);\r
+aWE("accord",9,15,17,21,22);\r
+aWE("accordanc",2);\r
+aWE("account",9,15);\r
+aWE("achiev",0);\r
+aWE("acquaint",1);\r
+aWE("action",19);\r
+aWE("activ",3);\r
+aWE("activat",3,5);\r
+aWE("activation",5);\r
+aWE("actual",9);\r
+aWE("ad",9,15,20,24);\r
+aWE("adapt",0);\r
+aWE("add",4,9,15,16,20,24);\r
+aWE("addition",3);\r
+aWE("additional",0,4,6,9,15,11,22);\r
+aWE("advanc",15,20);\r
+aWE("affect",0);\r
+aWE("again",9,15,13,18);\r
+aWE("algorithm",0,9,15,12);\r
+aWE("allow",0,5,6,9,15,12,16,17,18,19,20,23,24);\r
+aWE("along",12);\r
+aWE("alongsid",20);\r
+aWE("already",9,15);\r
+aWE("alway",9);\r
+aWE("amount",9,15);\r
+aWE("annoy",9,15);\r
+aWE("anoth",0,9,15,18,24);\r
+aWE("answ",9,15);\r
+aWE("any",0,1,2,4,7,9,15,13,16,24);\r
+aWE("anyth",9,15);\r
+aWE("ap",22);\r
+aWE("appear",2,7,8,15,19,20,23);\r
+aWE("applet",1);\r
+aWE("application",0,4,8,10,11,12,16,17,18,19,20,22);\r
+aWE("applicativ",11,19);\r
+aWE("approach",9,15,12);\r
+aWE("appropriat",15);\r
+aWE("approximat",9,15);\r
+aWE("ar",15);\r
+aWE("architectur",0);\r
+aWE("archiv",9);\r
+aWE("area",17);\r
+aWE("argument",15);\r
+aWE("arian",2);\r
+aWE("arrow",22);\r
+aWE("ascend",22);\r
+aWE("ascii",18,19);\r
+aWE("ask",9,15);\r
+aWE("associat",14,21,22,24);\r
+aWE("attribut",22);\r
+aWE("author",7,20);\r
+aWE("auto",9,15,19);\r
+aWE("automatical",4,9,15,14,16,18,19,24);\r
+aWE("autosiz",19);\r
+aWE("availabl",0,9,15);\r
+aWE("avoid",9,15);\r
+aWE("awk",9,15);\r
+aWE("b",9,15);\r
+aWE("back",9,15,17);\r
+aWE("background",19);\r
+aWE("bas",0,10,18);\r
+aWE("bash",15);\r
+aWE("basic",15,17);\r
+aWE("batch",0,15,16);\r
+aWE("bear",2,9);\r
+aWE("befor",9,15);\r
+aWE("begin",9,23);\r
+aWE("behav",0);\r
+aWE("behavior",10);\r
+aWE("behaviour",9);\r
+aWE("below",9,15,13);\r
+aWE("besid",24);\r
+aWE("bin",9,15,16,20);\r
+aWE("binari",9,15);\r
+aWE("blu",15);\r
+aWE("blur",0);\r
+aWE("bmp",17);\r
+aWE("bold",15);\r
+aWE("bonu",9);\r
+aWE("book",21);\r
+aWE("bottom",17,24);\r
+aWE("box",7,9,15,14,18,20,23);\r
+aWE("bracket",15);\r
+aWE("brand",2);\r
+aWE("brief",9,15,13);\r
+aWE("brows",1,9,15,11,14,17,19,22,24);\r
+aWE("bug",9,15);\r
+aWE("build",9,15,12,20);\r
+aWE("built",9,15,12);\r
+aWE("button",9,15,13,14,18,23);\r
+aWE("c",16);\r
+aWE("ca",2,9);\r
+aWE("cad",2,10);\r
+aWE("cal",0,15);\r
+aWE("calculation",8,12);\r
+aWE("call",18,20,23);\r
+aWE("camera",17);\r
+aWE("cancel",9,15);\r
+aWE("capability",20);\r
+aWE("caption",15);\r
+aWE("car",9,15,10);\r
+aWE("careful",9,15);\r
+aWE("cas",0,7,9,15,18,24);\r
+aWE("cascad",2,5,9,15);\r
+aWE("casroot",9,15);\r
+aWE("cat",9,15);\r
+aWE("catalog",20);\r
+aWE("catalogmodulegeneral",20);\r
+aWE("catalogmodulepersonnel",20);\r
+aWE("catalogu",11,16);\r
+aWE("categori",21);\r
+aWE("chang",0,2,7,9,15,18);\r
+aWE("chapter",1);\r
+aWE("charg",15);\r
+aWE("check",9,15);\r
+aWE("check_version",15);\r
+aWE("checkbox",9,15);\r
+aWE("child",24);\r
+aWE("choic",9,15);\r
+aWE("choos",3,5,4,6,7,9,15,14,20,23);\r
+aWE("chosen",20);\r
+aWE("chronological",19);\r
+aWE("clear",9,15,24);\r
+aWE("clearall",17);\r
+aWE("click",3,6,7,9,15,13,14,17,18,21,22,23,24);\r
+aWE("clickabl",13);\r
+aWE("client",0);\r
+aWE("clos",9,15,13,18,21);\r
+aWE("cluster",0);\r
+aWE("cod",0,15,10);\r
+aWE("coincid",9);\r
+aWE("collect",9,15);\r
+aWE("collision",9);\r
+aWE("color",19,22);\r
+aWE("column",19,22,23);\r
+aWE("combin",12);\r
+aWE("combination",17);\r
+aWE("comfort",9,15);\r
+aWE("comma",15);\r
+aWE("command",0,9,15,16);\r
+aWE("commitment",2);\r
+aWE("common",15,11,18);\r
+aWE("compar",0);\r
+aWE("comparison",24);\r
+aWE("compil",9,15);\r
+aWE("complet",7,9,15,21,23);\r
+aWE("complex",0,10);\r
+aWE("component",0,1,4,6,11,12,13,14,17,18,19,20,22,23,24);\r
+aWE("comput",9,15);\r
+aWE("computation",0,10);\r
+aWE("concept",0,13);\r
+aWE("concern",9,15,10);\r
+aWE("conclusion",0);\r
+aWE("config",15);\r
+aWE("config_fil",15);\r
+aWE("config_redhat8_0",15);\r
+aWE("configur",9,15);\r
+aWE("configurabl",12);\r
+aWE("configuration",15);\r
+aWE("confirm",9,15);\r
+aWE("connect",8);\r
+aWE("connection",2);\r
+aWE("consist",17);\r
+aWE("consol",16,17,19);\r
+aWE("constant",0);\r
+aWE("constru",2);\r
+aWE("construction",12);\r
+aWE("contain",1,2,7,9,15,14,16,17,19,20,21,22,23);\r
+aWE("container",16);\r
+aWE("content",15,21);\r
+aWE("context",4,17,22,24);\r
+aWE("continu",9,15);\r
+aWE("contribut",10);\r
+aWE("control",3,9,15);\r
+aWE("convenienc",17);\r
+aWE("convenient",9);\r
+aWE("cooperat",12);\r
+aWE("copi",2,24);\r
+aWE("copy",6,15,17,18);\r
+aWE("copyright",2,15);\r
+aWE("corba",0);\r
+aWE("corn",18);\r
+aWE("correct",17);\r
+aWE("correspond",9,15,14,16,21);\r
+aWE("corrupt",9);\r
+aWE("cost",10);\r
+aWE("coupl",0,10);\r
+aWE("cpp",16);\r
+aWE("creat",0,1,3,8,9,15,11,14,16,17,18,19,20,22,24);\r
+aWE("creation",0,9,15,10,11);\r
+aWE("critical",10);\r
+aWE("cros",13,18);\r
+aWE("csh",9,15,16);\r
+aWE("cshell",16);\r
+aWE("current",6,7,9,15,13,16,18,19,22,23,24);\r
+aWE("custom",10,19,20,24);\r
+aWE("cut",9,15);\r
+aWE("d",9,15);\r
+aWE("dat",7,23);\r
+aWE("data",0,8,9,15,11,12,18,19);\r
+aWE("databas",0);\r
+aWE("de",2);\r
+aWE("debug",22);\r
+aWE("decreas",9);\r
+aWE("default",3,4,9,15,16,18,19,22,24);\r
+aWE("defin",15,19,24);\r
+aWE("definit",0,3,4,6,9,16,18,19,22,23,24);\r
+aWE("definition",0,21);\r
+aWE("demand",10);\r
+aWE("depend",15,19,22,24);\r
+aWE("dependanci",15);\r
+aWE("dependenci",15);\r
+aWE("deriv",0,10);\r
+aWE("descend",22);\r
+aWE("describ",0,1,2,9,15,20);\r
+aWE("description",9,15,16,20);\r
+aWE("design",10);\r
+aWE("desir",20);\r
+aWE("desktop",5,4,8,15,11,17,18);\r
+aWE("destin",8,17,22,23,24);\r
+aWE("destination",13);\r
+aWE("detail",9,15);\r
+aWE("develop",0);\r
+aWE("development",0,10);\r
+aWE("dialog",7,9,15,14,18,20,21,23);\r
+aWE("dif",9,15);\r
+aWE("different",0,1,3,5,8,9,15,14,17,22,24);\r
+aWE("digital",10);\r
+aWE("dir",15);\r
+aWE("direct",9,21);\r
+aWE("directori",9,15,19);\r
+aWE("directory",9,15,16,18,19,20);\r
+aWE("disabl",9,15,19);\r
+aWE("disable_flag",15);\r
+aWE("disk",9,15,16);\r
+aWE("display",5,4,9,15,13,16,17,19,21,22,23,24);\r
+aWE("distinction",0);\r
+aWE("distribut",0);\r
+aWE("divid",1,23);\r
+aWE("do",9,15);\r
+aWE("doc",9);\r
+aWE("document",2,8,15,17);\r
+aWE("doesn",9);\r
+aWE("domain",0,2,10,12);\r
+aWE("don",9,15,20);\r
+aWE("dot",9,15);\r
+aWE("doubl",23);\r
+aWE("down",7,13,22);\r
+aWE("doxygen",9,15);\r
+aWE("doxysearch",9,15);\r
+aWE("doxytag",9,15);\r
+aWE("doxywizard",9,15);\r
+aWE("drag",4,24);\r
+aWE("dramatical",0);\r
+aWE("driv",9,15);\r
+aWE("driver",9,15);\r
+aWE("drop",4,13,24);\r
+aWE("dump",17);\r
+aWE("dynamical",12);\r
+aWE("e",9,15);\r
+aWE("eas",10);\r
+aWE("easi",0);\r
+aWE("easy",0);\r
+aWE("echo",9,15);\r
+aWE("economical",0);\r
+aWE("edit",6,7,9,15,11);\r
+aWE("efficient",10);\r
+aWE("eith",20);\r
+aWE("electrical",10);\r
+aWE("electronic",2,10);\r
+aWE("els",9);\r
+aWE("empty",9,15);\r
+aWE("enabl",9,12,19,21);\r
+aWE("encapsulat",12);\r
+aWE("encourag",0);\r
+aWE("end",9,15,19);\r
+aWE("enforc",0);\r
+aWE("eng",11);\r
+aWE("enough",9,15);\r
+aWE("ensur",0,10);\r
+aWE("ent",7,9,15,16,18);\r
+aWE("enter",9,15);\r
+aWE("entry",9,15,19,22);\r
+aWE("env",16);\r
+aWE("env_",15);\r
+aWE("env_product",15);\r
+aWE("env_vtk",15);\r
+aWE("environment",0,8,9,15,10,11,16);\r
+aWE("equal",9,15);\r
+aWE("equipment",10);\r
+aWE("error",2,9,15);\r
+aWE("etc",0,4,15);\r
+aWE("ev",23);\r
+aWE("even",0,9);\r
+aWE("every",10,12,21);\r
+aWE("everyth",9,15);\r
+aWE("evolution",10);\r
+aWE("evolv",0);\r
+aWE("ex",16);\r
+aWE("exact",9,15);\r
+aWE("examl",15);\r
+aWE("exampl",9,15,10,20);\r
+aWE("except",9);\r
+aWE("exchang",0);\r
+aWE("execution",12);\r
+aWE("exist",0,9,15,12,14,18,20);\r
+aWE("existanc",9);\r
+aWE("existenc",9,15);\r
+aWE("existens",9);\r
+aWE("existent",9);\r
+aWE("expand",13);\r
+aWE("expandability",0);\r
+aWE("expectation",10);\r
+aWE("exploit",0);\r
+aWE("explor",1);\r
+aWE("expos",0);\r
+aWE("extension",18);\r
+aWE("external",19);\r
+aWE("extract",9,15);\r
+aWE("extreme",10);\r
+aWE("f",9,15);\r
+aWE("facilitat",0);\r
+aWE("factory",20);\r
+aWE("fail",9,15);\r
+aWE("featur",1,6,9,15);\r
+aWE("field",7,9,15);\r
+aWE("fig",9,15);\r
+aWE("figur",9,15);\r
+aWE("fil",3,7,9,15,14,16,17,18,19,20);\r
+aWE("find",9,15,21);\r
+aWE("fine",0);\r
+aWE("finish",9,15,13);\r
+aWE("first",9,15,22);\r
+aWE("fit",17);\r
+aWE("flag",15);\r
+aWE("flexibility",0);\r
+aWE("flexibl",15);\r
+aWE("focu",13);\r
+aWE("fold",9,15,19,22,24);\r
+aWE("folder",9);\r
+aWE("follow",0,5,7,8,9,15,12,13,14,16,17,18,19,20,21,23,24);\r
+aWE("font",19);\r
+aWE("forc",9);\r
+aWE("forget",20);\r
+aWE("format",1,15,14,19);\r
+aWE("four",11);\r
+aWE("fr",11);\r
+aWE("fram",9,15);\r
+aWE("framework",11,22);\r
+aWE("franc",2);\r
+aWE("friend",10);\r
+aWE("front",17);\r
+aWE("full",21);\r
+aWE("function",15,12,17,18);\r
+aWE("function_nam",15);\r
+aWE("functional",17);\r
+aWE("functionality",0,1,6,8,17,20);\r
+aWE("fundamental",0);\r
+aWE("furnish",2);\r
+aWE("furth",9,15);\r
+aWE("g",9,15,16);\r
+aWE("gcc",9,15);\r
+aWE("gcc3",9);\r
+aWE("general",8,15,17);\r
+aWE("generat",15,20);\r
+aWE("generation",12);\r
+aWE("generator",11,20);\r
+aWE("generic",10,12);\r
+aWE("geom",0,4,6,12);\r
+aWE("get",1,7,8,9,10,22,24);\r
+aWE("giv",7,15,17);\r
+aWE("given",15,12);\r
+aWE("global",17);\r
+aWE("glossary",21);\r
+aWE("gnu",9);\r
+aWE("go",9,15,13);\r
+aWE("graph",12);\r
+aWE("graphviz",9,15);\r
+aWE("grep",9,15);\r
+aWE("gui",0,9,15,16);\r
+aWE("h",9,16);\r
+aWE("hand",0,13,21);\r
+aWE("handl",9,15,10,11);\r
+aWE("happydoc",9,15);\r
+aWE("hard",9,15,16);\r
+aWE("hasn",18);\r
+aWE("hat",9,15);\r
+aWE("hav",13,22);\r
+aWE("hdf",9,15,14,18,19);\r
+aWE("hdf5",9,15);\r
+aWE("hdf5hom",9,15);\r
+aWE("head",9);\r
+aWE("hello",23);\r
+aWE("help",0,1,9,15,13,14,16,21,22,23);\r
+aWE("her",9,15,19);\r
+aWE("hid",4,17,19,22);\r
+aWE("high",10);\r
+aWE("highlight",15,22);\r
+aWE("hint",15);\r
+aWE("history",23);\r
+aWE("holder",2);\r
+aWE("hom",16);\r
+aWE("host",0);\r
+aWE("hotspot",13);\r
+aWE("how",0,9,15);\r
+aWE("html",1,21);\r
+aWE("i586_linux_2",9,15);\r
+aWE("iapp",0,11,12);\r
+aWE("icon",3,6,17,20);\r
+aWE("identification",22,23);\r
+aWE("identify",9,15);\r
+aWE("idl",0,20);\r
+aWE("ie",19);\r
+aWE("if",3,9,15,14,16,18,19,20,21,22,24);\r
+aWE("imag",17);\r
+aWE("immediate",13);\r
+aWE("immeubl",2);\r
+aWE("implement",0,15);\r
+aWE("implementation",0,20);\r
+aWE("impli",15);\r
+aWE("import",11,17);\r
+aWE("important",15);\r
+aWE("impossibility",9);\r
+aWE("includ",2,9,15,13,21);\r
+aWE("inclusiv",0);\r
+aWE("increas",10);\r
+aWE("incremental",0);\r
+aWE("independenc",0);\r
+aWE("independent",0);\r
+aWE("index",21,22);\r
+aWE("industry",10);\r
+aWE("information",0,2,7,9,15,13,18,21,23);\r
+aWE("initial",8,17);\r
+aWE("input",20);\r
+aWE("insert",15);\r
+aWE("insid",13,20);\r
+aWE("inspect",9,15);\r
+aWE("instal",9,15,20);\r
+aWE("install",9,15,16);\r
+aWE("install_binary",15);\r
+aWE("install_disk_spac",15);\r
+aWE("install_sourc",15);\r
+aWE("install_wizard_caption",15);\r
+aWE("install_wizard_copyright",15);\r
+aWE("install_wizard_license_info",15);\r
+aWE("install_wizard_root_directory",15);\r
+aWE("install_wizard_version",15);\r
+aWE("installation",9,15,16);\r
+aWE("installation_mod",15);\r
+aWE("installation_script_nam",15);\r
+aWE("installdiskspac",15);\r
+aWE("installwizard_root_directory",15);\r
+aWE("instrumental",0);\r
+aWE("int",10);\r
+aWE("integ",15);\r
+aWE("integrat",0,11,12,17);\r
+aWE("integration",0,10,11,20);\r
+aWE("intend",21);\r
+aWE("interfac",0,10,11,12,19,20);\r
+aWE("internal",15,10);\r
+aWE("internet",1);\r
+aWE("interoperabl",22);\r
+aWE("interpret",11,17);\r
+aWE("interval",23);\r
+aWE("introduction",9,15,10,11,12);\r
+aWE("invalid",18);\r
+aWE("invok",9,15,17);\r
+aWE("ior",19,22);\r
+aWE("ispython",9,15);\r
+aWE("isswig",9,15);\r
+aWE("item",7,9,19);\r
+aWE("itself",9,15);\r
+aWE("java",1);\r
+aWE("jpeg",17);\r
+aWE("jpg",17);\r
+aWE("just",9,15);\r
+aWE("k",16);\r
+aWE("kbyt",15);\r
+aWE("kernel",12,16);\r
+aWE("key",9,15);\r
+aWE("keyword",21);\r
+aWE("kill",16);\r
+aWE("killall",16);\r
+aWE("kind",7,13);\r
+aWE("know",9,20);\r
+aWE("known",9);\r
+aWE("l",16);\r
+aWE("languag",0);\r
+aWE("last",9,18,23);\r
+aWE("launch",1,9,15,14,16,19,20,23);\r
+aWE("ld_library_path",9,15);\r
+aWE("lead",9,18);\r
+aWE("learn",15);\r
+aWE("left",9,15,17,21);\r
+aWE("level",19,21,24);\r
+aWE("lib",9,15);\r
+aWE("libcosnotify3",9,15);\r
+aWE("libgl",9,15);\r
+aWE("libhdf5",9,15);\r
+aWE("libm",9,15);\r
+aWE("libomniorb3",9,15);\r
+aWE("libqt",9,15);\r
+aWE("libqtxmlcmodul",9,15);\r
+aWE("libqwt",9,15);\r
+aWE("library",9,15);\r
+aWE("libsip",9,15);\r
+aWE("libtcl8",9,15);\r
+aWE("libtclx8",9,15);\r
+aWE("libtk8",9,15);\r
+aWE("libtkx8",9,15);\r
+aWE("libvtkcommon",9,15);\r
+aWE("licens",2,15);\r
+aWE("lik",0,5,4,9,15,13,17,18,20,22,24);\r
+aWE("limitation",9);\r
+aWE("lin",1,9,15,16);\r
+aWE("link",0,9,10,13);\r
+aWE("linu",9);\r
+aWE("linux",1,9,15);\r
+aWE("linuxredhat",15);\r
+aWE("list",7,9,15,13,16,19,21,23);\r
+aWE("list_of_prerequisit",15);\r
+aWE("load",11,14,16,17,19,22,24);\r
+aWE("local",9,15);\r
+aWE("locat",4,16,21,22);\r
+aWE("location",20);\r
+aWE("lock",7);\r
+aWE("log",16);\r
+aWE("long",0);\r
+aWE("look",5,9,15,20,21);\r
+aWE("lost",18);\r
+aWE("lot",9);\r
+aWE("low",9,15,21);\r
+aWE("m",16);\r
+aWE("machin",0,9,18,23);\r
+aWE("macintosh",1);\r
+aWE("macro",0);\r
+aWE("main",3,5,4,6,7,15,14,17,18,19,20,23);\r
+aWE("mak",3,5,9,15);\r
+aWE("management",11,17);\r
+aWE("manual",1,9,15,19);\r
+aWE("map",0);\r
+aWE("mark",4,9,15,19);\r
+aWE("market",10);\r
+aWE("massive",0);\r
+aWE("mast",15);\r
+aWE("match",21);\r
+aWE("material",2);\r
+aWE("maximiz",3,5,17);\r
+aWE("mean",2,8,9,15);\r
+aWE("mechanical",2);\r
+aWE("med2hom",9,15);\r
+aWE("meet",10);\r
+aWE("mention",9);\r
+aWE("menu",3,5,4,6,7,11,13,14,17,18,19,20,22,23,24);\r
+aWE("mesa",9,15);\r
+aWE("mesa_hom",9,15);\r
+aWE("mesh",12);\r
+aWE("messag",7,9,15,11,16,17,19,23);\r
+aWE("middl",9,15);\r
+aWE("mind",9);\r
+aWE("minimiz",3,17);\r
+aWE("mis",15);\r
+aWE("mistak",17);\r
+aWE("mod",0,9,15,16);\r
+aWE("model",0,10,12);\r
+aWE("modern",10);\r
+aWE("modification",0,7);\r
+aWE("modify",15,24);\r
+aWE("modul",1,12,16,20);\r
+aWE("module1",16);\r
+aWE("module2",16);\r
+aWE("moment",15);\r
+aWE("mous",4);\r
+aWE("mozilla",19);\r
+aWE("mt",9,15);\r
+aWE("much",9,15);\r
+aWE("multi",8,11,20,21);\r
+aWE("multifil",18,19);\r
+aWE("multipl",18);\r
+aWE("multiti",0);\r
+aWE("must",0,9,10,12);\r
+aWE("n",9,15);\r
+aWE("nam",2,3,5,7,9,15,18,19,20,22,23,24);\r
+aWE("nativ",9,15);\r
+aWE("natural",0);\r
+aWE("navigat",9,15,13);\r
+aWE("navigation",1,13);\r
+aWE("navigator",1);\r
+aWE("ne",9,15,13);\r
+aWE("necessary",9,15,16);\r
+aWE("need",9);\r
+aWE("netscap",1,19);\r
+aWE("new",0,3,7,8,9,15,18,19,20,24);\r
+aWE("next",7,9,15,19,20);\r
+aWE("nod",20);\r
+aWE("not",9,15);\r
+aWE("notic",2);\r
+aWE("noticeab",0);\r
+aWE("notifd",9,15);\r
+aWE("notion",8);\r
+aWE("numb",9,15,19,23);\r
+aWE("numeric",9,15,10,12);\r
+aWE("numerical",0,8);\r
+aWE("object",0,6,11,14,17,19,22,24);\r
+aWE("objectiv",0);\r
+aWE("obligatory",9,15);\r
+aWE("occ",3,11,17,19);\r
+aWE("occupi",15);\r
+aWE("off",9,15);\r
+aWE("offer",0);\r
+aWE("often",10);\r
+aWE("ok",9,15,14);\r
+aWE("omg",0);\r
+aWE("omit",15);\r
+aWE("omni",9,15);\r
+aWE("omninotify",9,15);\r
+aWE("omniorb",9,15);\r
+aWE("omniorbdir",9,15);\r
+aWE("omniorbpy",9,15);\r
+aWE("on",0,6,9,15,11,13,14,16,18,19,20,21,22,24);\r
+aWE("onc",9);\r
+aWE("onlin",21);\r
+aWE("onto",9);\r
+aWE("open",2,8,12,13,14,16,18,19,20,21);\r
+aWE("opengl",9,15);\r
+aWE("operability",10);\r
+aWE("operation",6,8,17,18,24);\r
+aWE("optimiz",10);\r
+aWE("option",5,6,7,9,15,14,16,17,18,19,22,24);\r
+aWE("optional",9,15);\r
+aWE("ord",9,15);\r
+aWE("org",0);\r
+aWE("originality",12);\r
+aWE("os",15);\r
+aWE("os_version",15);\r
+aWE("other",1);\r
+aWE("otherwis",2,9,15,18);\r
+aWE("outlin",17);\r
+aWE("output",9,15,11,17,19);\r
+aWE("overload",15);\r
+aWE("own",15,12,19,24);\r
+aWE("p",16);\r
+aWE("packag",9,15,16,20);\r
+aWE("pag",9,15,21);\r
+aWE("pan",13,17,21);\r
+aWE("parallel",0);\r
+aWE("paramet",9,15,20);\r
+aWE("parameter",0,9,20);\r
+aWE("part",2,9,15,17);\r
+aWE("particular",10,18);\r
+aWE("pas",9,15);\r
+aWE("past",6,17);\r
+aWE("path",9,15);\r
+aWE("pc",0);\r
+aWE("performanc",0,8,10,17);\r
+aWE("permission",2,9,15);\r
+aWE("perpetuity",10);\r
+aWE("phenomena",0);\r
+aWE("photocopy",2);\r
+aWE("phras",21);\r
+aWE("physical",0,10,12);\r
+aWE("pick",9,15);\r
+aWE("pictur",7,24);\r
+aWE("pid",23);\r
+aWE("piec",0);\r
+aWE("plac",4,15);\r
+aWE("platform",0,1,8,9,15,10,11,12,16,17,18,20,23);\r
+aWE("pleas",9,15);\r
+aWE("plot2d",3,11,17,19);\r
+aWE("png",17);\r
+aWE("point",9);\r
+aWE("pop",13,14,17,22,24);\r
+aWE("popup",13);\r
+aWE("port",16);\r
+aWE("portion",10);\r
+aWE("portkill",16);\r
+aWE("position",17);\r
+aWE("possibility",0,9,15,16,20);\r
+aWE("possibl",15,22,24);\r
+aWE("post",10,12);\r
+aWE("pr",10,12);\r
+aWE("precompil",9,15);\r
+aWE("predefin",0);\r
+aWE("pref",9);\r
+aWE("preferabl",16);\r
+aWE("preferenc",19,22);\r
+aWE("prefix",9,15);\r
+aWE("preinstal",9,15);\r
+aWE("preliminary",9,15);\r
+aWE("prerequisit",9,15);\r
+aWE("pres",9,15);\r
+aWE("presentation",17);\r
+aWE("previou",9,15,14);\r
+aWE("previous",9,15,14,18);\r
+aWE("print",9,15,16);\r
+aWE("print_env",15);\r
+aWE("problem",9,15,10);\r
+aWE("proce",8,9,15);\r
+aWE("procedur",9,15,16);\r
+aWE("proces",9,15,10,12,23);\r
+aWE("processor",0,10);\r
+aWE("produc",17);\r
+aWE("product",2,9,15,10,16);\r
+aWE("product_nam",15);\r
+aWE("product_script_nam",15);\r
+aWE("product_version",15);\r
+aWE("productivity",0);\r
+aWE("products_directory",15);\r
+aWE("profil",9,16);\r
+aWE("program",0,9,15);\r
+aWE("progres",9,15);\r
+aWE("prompt",9,15,16);\r
+aWE("prop",9,15);\r
+aWE("proper",15);\r
+aWE("properti",7,12);\r
+aWE("propos",9,15);\r
+aWE("proprietary",2);\r
+aWE("provid",0,15,10,11,16,20,21,23);\r
+aWE("purpos",8,9,22);\r
+aWE("py",15,16);\r
+aWE("pyqt",9,15);\r
+aWE("pyqtdir",9,15);\r
+aWE("python",0,9,15,11,16,17,19);\r
+aWE("python2",9,15);\r
+aWE("pythonhom",9,15);\r
+aWE("qt",9,15);\r
+aWE("qtdir",9,15);\r
+aWE("quality",10);\r
+aWE("question",9,15);\r
+aWE("quick",15,19,22,24);\r
+aWE("quit",9,15,18);\r
+aWE("quot",15);\r
+aWE("qwt",9,15);\r
+aWE("qwthom",9,15);\r
+aWE("radiobutton",9,15);\r
+aWE("rais",9,15);\r
+aWE("rapid",0);\r
+aWE("razel",2);\r
+aWE("rc2",9,15);\r
+aWE("re",13);\r
+aWE("reactivity",10);\r
+aWE("read",9,15,13);\r
+aWE("readm",15);\r
+aWE("realiz",8);\r
+aWE("recommend",9,15);\r
+aWE("record",2,7);\r
+aWE("rectangl",17);\r
+aWE("red",9,15,22);\r
+aWE("redhat",9,15);\r
+aWE("redhat8",15);\r
+aWE("redirection",16);\r
+aWE("redo",6);\r
+aWE("reduc",10);\r
+aWE("reduction",10);\r
+aWE("referenc",1,13,19,22);\r
+aWE("refin",10);\r
+aWE("refresh",23);\r
+aWE("refreshment",23);\r
+aWE("register",2);\r
+aWE("registry",11,23);\r
+aWE("reinstal",9,15);\r
+aWE("reinstall",9,15);\r
+aWE("reinstallation",15);\r
+aWE("relat",9,15,13,21);\r
+aWE("relativ",15);\r
+aWE("relevant",13);\r
+aWE("reliability",10);\r
+aWE("reload",18);\r
+aWE("relocat",4);\r
+aWE("remain",0);\r
+aWE("remov",9,15,24);\r
+aWE("renam",24);\r
+aWE("rené",2);\r
+aWE("repeat",9);\r
+aWE("represent",0,8,9,10,11,12,21);\r
+aWE("representation",5);\r
+aWE("reproduc",2);\r
+aWE("requir",9,15,10,14,18);\r
+aWE("requirement",0,10);\r
+aWE("reserv",2);\r
+aWE("reset",9,15,17);\r
+aWE("resiz",17,19);\r
+aWE("respectiv",2);\r
+aWE("respond",0);\r
+aWE("responsibility",2);\r
+aWE("responsibl",15);\r
+aWE("restor",19);\r
+aWE("result",8,18);\r
+aWE("retrieval",2);\r
+aWE("reus",0,10);\r
+aWE("reusabl",12);\r
+aWE("right",2,9,15,13,14,17,18,21,22,24);\r
+aWE("risk",10);\r
+aWE("robustnes",10);\r
+aWE("rol",0);\r
+aWE("root",9,15,24);\r
+aWE("rotation",17);\r
+aWE("ru",2);\r
+aWE("rul",15);\r
+aWE("run",0,9,15,16,20,23);\r
+aWE("runinstall",9,15);\r
+aWE("runsalom",16,20);\r
+aWE("runsalomewithport",20);\r
+aWE("s",0,2,9,15,13,17);\r
+aWE("saclay",2);\r
+aWE("salom",0,1,3,5,4,6,8,9,15,10,11,12,13,14,16,17,18,19,20,21,22,23,24);\r
+aWE("salome_modulecatalog_serv",20);\r
+aWE("salome_root_dir",9,15);\r
+aWE("salome_src",15);\r
+aWE("salomebin",9);\r
+aWE("salomecsh",9);\r
+aWE("salomedoc",9);\r
+aWE("salomepro_src",9);\r
+aWE("salomesh",9);\r
+aWE("salomesourc",9);\r
+aWE("sam",13,18,20,23,24);\r
+aWE("sav",9,15,11,17,18,19);\r
+aWE("say",9,15);\r
+aWE("scal",0);\r
+aWE("schem",0,15);\r
+aWE("scientific",0);\r
+aWE("script",0,9,15,16,20);\r
+aWE("scroll",7);\r
+aWE("se",7,9,15,14,18,20,22,24);\r
+aWE("search",1,9,15,14,18,21);\r
+aWE("second",9,15,24);\r
+aWE("section",9,15,17);\r
+aWE("select",3,5,7,9,15,14,18,19,21,24);\r
+aWE("selectall",17);\r
+aWE("send",9,15);\r
+aWE("sensitiv",4,17,22,24);\r
+aWE("separat",15);\r
+aWE("serv",0,20);\r
+aWE("server",0,16);\r
+aWE("servic",0,9,15,20);\r
+aWE("session",14,18,19,22,23,24);\r
+aWE("set",1,9,15,16,17,18,19,22,23,24);\r
+aWE("setting",9,15);\r
+aWE("sever",10);\r
+aWE("sh",9,15);\r
+aWE("shar",10);\r
+aWE("shell",9,15,11,16);\r
+aWE("shin",15);\r
+aWE("short",21);\r
+aWE("should",2,8,9,15,18,20);\r
+aWE("show",9,15,17,19,22);\r
+aWE("shown",7);\r
+aWE("sid",15);\r
+aWE("signal",9,15);\r
+aWE("signatur",15);\r
+aWE("sigterm",9,15);\r
+aWE("simpl",0);\r
+aWE("simplify",15);\r
+aWE("simulat",0);\r
+aWE("simulation",10,12);\r
+aWE("simultaneous",8);\r
+aWE("singl",15);\r
+aWE("sip",9,15);\r
+aWE("sipdir",9,15);\r
+aWE("sit",9,15);\r
+aWE("situation",0);\r
+aWE("siz",17,19);\r
+aWE("skip",9,15);\r
+aWE("small",18);\r
+aWE("smesh",0,4,12);\r
+aWE("so",0,9,15,19,21,22,24);\r
+aWE("softwar",0,2,9,10,12);\r
+aWE("solution",10);\r
+aWE("solver",12);\r
+aWE("somewher",9);\r
+aWE("sort",19,22);\r
+aWE("sourc",9,15,12,16);\r
+aWE("spac",9,15,17);\r
+aWE("special",9,15,14,16,18);\r
+aWE("specifi",0);\r
+aWE("specific",0,4,10,12,21);\r
+aWE("specifical",10);\r
+aWE("specification",12);\r
+aWE("specify",18,20);\r
+aWE("spent",10);\r
+aWE("src",9,15);\r
+aWE("standard",3,9,15,11,14,17,18,20);\r
+aWE("start",8,9,15,20,23);\r
+aWE("stat",9,15);\r
+aWE("station",0);\r
+aWE("statu",9,15);\r
+aWE("step",9,15);\r
+aWE("still",9,15);\r
+aWE("stor",0,9,15,14,18,20);\r
+aWE("storag",2);\r
+aWE("str",15);\r
+aWE("strict",9);\r
+aWE("strong",9,15);\r
+aWE("structur",10,14,22,24);\r
+aWE("structural",10);\r
+aWE("studi",3,5,6,8,11,14,17,18);\r
+aWE("study",0,3,5,6,7,8,11,12,14,17,18,19,20,22,23,24);\r
+aWE("study1",3);\r
+aWE("sub",15,21);\r
+aWE("subject",2);\r
+aWE("submenu",3,4,19);\r
+aWE("successful",9,15);\r
+aWE("sufficient",9);\r
+aWE("summariz",9,15);\r
+aWE("superstructur",9);\r
+aWE("superv",16);\r
+aWE("supervision",11,12,16,20);\r
+aWE("supplementary",22,23);\r
+aWE("suppli",9,15);\r
+aWE("support",9,15,20);\r
+aWE("supported_installation_mod",15);\r
+aWE("suppos",15);\r
+aWE("sur",9,15);\r
+aWE("swig",9,15);\r
+aWE("switch",5,9,15,11);\r
+aWE("symbolic",9);\r
+aWE("system",0,1,2,9,15,13,21);\r
+aWE("t",9,15,16,18,20);\r
+aWE("tab",21,23,24);\r
+aWE("tabl",9,15);\r
+aWE("tag",15);\r
+aWE("tak",0,9,15);\r
+aWE("taken",9,15,16);\r
+aWE("target",9,15);\r
+aWE("target_directory",15);\r
+aWE("target_paltform",15);\r
+aWE("targetdir",15);\r
+aWE("tcl",9,15);\r
+aWE("tclhom",9,15);\r
+aWE("tclsh8",9,15);\r
+aWE("technologi",0);\r
+aWE("technological",10);\r
+aWE("technologiqu",2);\r
+aWE("technology",0);\r
+aWE("temp",9,15);\r
+aWE("temp_directory",15);\r
+aWE("temp_fold",15);\r
+aWE("tempdir",15);\r
+aWE("temporary",9,15);\r
+aWE("temporarydiskspac",15);\r
+aWE("term",2,10,13,21);\r
+aWE("terminal",9,16);\r
+aWE("test",0,15,20);\r
+aWE("text",9,15,13,21);\r
+aWE("them",0,9,15,12,16,23);\r
+aWE("therefor",9,15);\r
+aWE("this_is_",9,15);\r
+aWE("this_is_omninotify_1_2",9,15);\r
+aWE("this_is_omniorb_3_0_5",9,15);\r
+aWE("this_is_omniorbpy_1_5",9,15);\r
+aWE("thos",9,15,21);\r
+aWE("thre",9);\r
+aWE("thu",0);\r
+aWE("til",5);\r
+aWE("tim",0,7,9,15,10,19,20,23);\r
+aWE("titl",15);\r
+aWE("tmp",9,15);\r
+aWE("tmp_disk_spac",15);\r
+aWE("togeth",9,15);\r
+aWE("too",9);\r
+aWE("tool",0,11,17,20,23);\r
+aWE("toolbar",3,4,6,11,14,17,18);\r
+aWE("top",3,4,15,17);\r
+aWE("topic",1,13,21);\r
+aWE("topmost",9,15);\r
+aWE("total",9,15);\r
+aWE("totality",0);\r
+aWE("tr",9,15);\r
+aWE("trademark",2);\r
+aWE("train",10);\r
+aWE("transmit",2);\r
+aWE("tre",15,22,24);\r
+aWE("tri",9,15);\r
+aWE("trihedron",17,19);\r
+aWE("troubl",9);\r
+aWE("tru",15);\r
+aWE("try",7,9,15,18,20);\r
+aWE("try_nativ",15);\r
+aWE("try_preinstal",15);\r
+aWE("two",9,15,13,18,20);\r
+aWE("typ",9,15,20);\r
+aWE("typical",20);\r
+aWE("ultimat",0);\r
+aWE("understand",10);\r
+aWE("undo",6,19);\r
+aWE("undon",19);\r
+aWE("unfortunate",9,15);\r
+aWE("unix",1);\r
+aWE("unload",14,18);\r
+aWE("unmark",4);\r
+aWE("unnecessary",15);\r
+aWE("unselect",9,15);\r
+aWE("up",9,15,13,14,17,18,22,24);\r
+aWE("updat",9,17,18,20);\r
+aWE("upload",4,11,17);\r
+aWE("us",0,2,6,7,8,9,15,10,16,18,19,20,21,22,23,24);\r
+aWE("usag",15);\r
+aWE("usecas",11,17,19,24);\r
+aWE("user",7,20);\r
+aWE("usr",9,15);\r
+aWE("utiliti",1);\r
+aWE("v",9,15);\r
+aWE("valid",19);\r
+aWE("validation",0);\r
+aWE("valu",15,19,22);\r
+aWE("variabl",9,15,16);\r
+aWE("variety",1,13);\r
+aWE("variou",15,12);\r
+aWE("ve",9,15);\r
+aWE("ver",9,15);\r
+aWE("version",9,15,20);\r
+aWE("very",9,15,10);\r
+aWE("view",3,4,7,9,15,11,13,17,19,21,23,24);\r
+aWE("viewer",3,11,17);\r
+aWE("visu",0,4,6,12);\r
+aWE("visualization",8,11,12,17);\r
+aWE("vtk",3,9,15,11,17,19);\r
+aWE("vtkhom",9,15);\r
+aWE("wait",9,15);\r
+aWE("want",9,15,13);\r
+aWE("warn",7,9,15);\r
+aWE("way",5,9,15,12,20,21);\r
+aWE("welcom",1,10);\r
+aWE("well",17);\r
+aWE("what",0,9,15,13,22,24);\r
+aWE("whichpython",15);\r
+aWE("whichswig",15);\r
+aWE("whil",0);\r
+aWE("whol",17,18,19);\r
+aWE("wid",1);\r
+aWE("will",1,3,5,4,7,8,9,15,14,16,17,18,19,20,22,23,24);\r
+aWE("window",1,3,5,4,8,9,15,11,13,16,17,18,19,23,24);\r
+aWE("wish8",9,15);\r
+aWE("within",0,6,17,19,23);\r
+aWE("without",0,2,9,15,16,24);\r
+aWE("wizard",9,15);\r
+aWE("won",9,15);\r
+aWE("word",21);\r
+aWE("work",0,8,9,15,18,21);\r
+aWE("would",4,9,15,18,20,24);\r
+aWE("writ",2,18);\r
+aWE("written",18);\r
+aWE("wrong",9,15);\r
+aWE("www",0);\r
+aWE("x",16);\r
+aWE("xml",15,16,20);\r
+aWE("xterm",16);\r
+aWE("y",9,15);\r
+aWE("year",10);\r
+aWE("yes",7);\r
+aWE("yet",9,15);\r
+aWE("your",3,5,6,7,9,15,12,16,17,18,20,21,24);\r
+aWE("zon",3);\r
+aWE("zoom",17);\r
+\r
+//-->\r
+</script>\r
+</script>\r
--- /dev/null
+<?xml version='1.0' encoding='ISO-8859-1' ?>\r
+<ftswdata>\r
+<key name="_numpy"> 9,15, </key>\r
+<key name="_omnipymodul"> 9,15, </key>\r
+<key name="0"> 9,15, </key>\r
+<key name="0_glibc2"> 9,15, </key>\r
+<key name="030402"> 9,15, </key>\r
+<key name="1"> 3,9,15,16, </key>\r
+<key name="11"> 9,15, </key>\r
+<key name="13"> 9,15, </key>\r
+<key name="17"> 9,15, </key>\r
+<key name="2"> 3,9,15,16, </key>\r
+<key name="2003"> 2, </key>\r
+<key name="22"> 9,15, </key>\r
+<key name="2c"> 15, </key>\r
+<key name="3"> 9,15,16, </key>\r
+<key name="3d"> 12,17, </key>\r
+<key name="4"> 2,9,15, </key>\r
+<key name="5"> 9,15, </key>\r
+<key name="6"> 9,15, </key>\r
+<key name="7"> 15, </key>\r
+<key name="8"> 9,15, </key>\r
+<key name="9"> 9,15, </key>\r
+<key name="91400"> 2, </key>\r
+<key name="abl"> 0,9,15, </key>\r
+<key name="abort"> 9,15, </key>\r
+<key name="abov"> 7,9,15, </key>\r
+<key name="absolut"> 9, </key>\r
+<key name="acces"> 0,17,22,24, </key>\r
+<key name="accidental"> 9,15, </key>\r
+<key name="accord"> 9,15,17,21,22, </key>\r
+<key name="accordanc"> 2, </key>\r
+<key name="account"> 9,15, </key>\r
+<key name="achiev"> 0, </key>\r
+<key name="acquaint"> 1, </key>\r
+<key name="action"> 19, </key>\r
+<key name="activ"> 3, </key>\r
+<key name="activat"> 3,5, </key>\r
+<key name="activation"> 5, </key>\r
+<key name="actual"> 9, </key>\r
+<key name="ad"> 9,15,20,24, </key>\r
+<key name="adapt"> 0, </key>\r
+<key name="add"> 4,9,15,16,20,24, </key>\r
+<key name="addition"> 3, </key>\r
+<key name="additional"> 0,4,6,9,15,11,22, </key>\r
+<key name="advanc"> 15,20, </key>\r
+<key name="affect"> 0, </key>\r
+<key name="again"> 9,15,13,18, </key>\r
+<key name="algorithm"> 0,9,15,12, </key>\r
+<key name="allow"> 0,5,6,9,15,12,16,17,18,19,20,23,24, </key>\r
+<key name="along"> 12, </key>\r
+<key name="alongsid"> 20, </key>\r
+<key name="already"> 9,15, </key>\r
+<key name="alway"> 9, </key>\r
+<key name="amount"> 9,15, </key>\r
+<key name="annoy"> 9,15, </key>\r
+<key name="anoth"> 0,9,15,18,24, </key>\r
+<key name="answ"> 9,15, </key>\r
+<key name="any"> 0,1,2,4,7,9,15,13,16,24, </key>\r
+<key name="anyth"> 9,15, </key>\r
+<key name="ap"> 22, </key>\r
+<key name="appear"> 2,7,8,15,19,20,23, </key>\r
+<key name="applet"> 1, </key>\r
+<key name="application"> 0,4,8,10,11,12,16,17,18,19,20,22, </key>\r
+<key name="applicativ"> 11,19, </key>\r
+<key name="approach"> 9,15,12, </key>\r
+<key name="appropriat"> 15, </key>\r
+<key name="approximat"> 9,15, </key>\r
+<key name="ar"> 15, </key>\r
+<key name="architectur"> 0, </key>\r
+<key name="archiv"> 9, </key>\r
+<key name="area"> 17, </key>\r
+<key name="argument"> 15, </key>\r
+<key name="arian"> 2, </key>\r
+<key name="arrow"> 22, </key>\r
+<key name="ascend"> 22, </key>\r
+<key name="ascii"> 18,19, </key>\r
+<key name="ask"> 9,15, </key>\r
+<key name="associat"> 14,21,22,24, </key>\r
+<key name="attribut"> 22, </key>\r
+<key name="author"> 7,20, </key>\r
+<key name="auto"> 9,15,19, </key>\r
+<key name="automatical"> 4,9,15,14,16,18,19,24, </key>\r
+<key name="autosiz"> 19, </key>\r
+<key name="availabl"> 0,9,15, </key>\r
+<key name="avoid"> 9,15, </key>\r
+<key name="awk"> 9,15, </key>\r
+<key name="b"> 9,15, </key>\r
+<key name="back"> 9,15,17, </key>\r
+<key name="background"> 19, </key>\r
+<key name="bas"> 0,10,18, </key>\r
+<key name="bash"> 15, </key>\r
+<key name="basic"> 15,17, </key>\r
+<key name="batch"> 0,15,16, </key>\r
+<key name="bear"> 2,9, </key>\r
+<key name="befor"> 9,15, </key>\r
+<key name="begin"> 9,23, </key>\r
+<key name="behav"> 0, </key>\r
+<key name="behavior"> 10, </key>\r
+<key name="behaviour"> 9, </key>\r
+<key name="below"> 9,15,13, </key>\r
+<key name="besid"> 24, </key>\r
+<key name="bin"> 9,15,16,20, </key>\r
+<key name="binari"> 9,15, </key>\r
+<key name="blu"> 15, </key>\r
+<key name="blur"> 0, </key>\r
+<key name="bmp"> 17, </key>\r
+<key name="bold"> 15, </key>\r
+<key name="bonu"> 9, </key>\r
+<key name="book"> 21, </key>\r
+<key name="bottom"> 17,24, </key>\r
+<key name="box"> 7,9,15,14,18,20,23, </key>\r
+<key name="bracket"> 15, </key>\r
+<key name="brand"> 2, </key>\r
+<key name="brief"> 9,15,13, </key>\r
+<key name="brows"> 1,9,15,11,14,17,19,22,24, </key>\r
+<key name="bug"> 9,15, </key>\r
+<key name="build"> 9,15,12,20, </key>\r
+<key name="built"> 9,15,12, </key>\r
+<key name="button"> 9,15,13,14,18,23, </key>\r
+<key name="c"> 16, </key>\r
+<key name="ca"> 2,9, </key>\r
+<key name="cad"> 2,10, </key>\r
+<key name="cal"> 0,15, </key>\r
+<key name="calculation"> 8,12, </key>\r
+<key name="call"> 18,20,23, </key>\r
+<key name="camera"> 17, </key>\r
+<key name="cancel"> 9,15, </key>\r
+<key name="capability"> 20, </key>\r
+<key name="caption"> 15, </key>\r
+<key name="car"> 9,15,10, </key>\r
+<key name="careful"> 9,15, </key>\r
+<key name="cas"> 0,7,9,15,18,24, </key>\r
+<key name="cascad"> 2,5,9,15, </key>\r
+<key name="casroot"> 9,15, </key>\r
+<key name="cat"> 9,15, </key>\r
+<key name="catalog"> 20, </key>\r
+<key name="catalogmodulegeneral"> 20, </key>\r
+<key name="catalogmodulepersonnel"> 20, </key>\r
+<key name="catalogu"> 11,16, </key>\r
+<key name="categori"> 21, </key>\r
+<key name="chang"> 0,2,7,9,15,18, </key>\r
+<key name="chapter"> 1, </key>\r
+<key name="charg"> 15, </key>\r
+<key name="check"> 9,15, </key>\r
+<key name="check_version"> 15, </key>\r
+<key name="checkbox"> 9,15, </key>\r
+<key name="child"> 24, </key>\r
+<key name="choic"> 9,15, </key>\r
+<key name="choos"> 3,5,4,6,7,9,15,14,20,23, </key>\r
+<key name="chosen"> 20, </key>\r
+<key name="chronological"> 19, </key>\r
+<key name="clear"> 9,15,24, </key>\r
+<key name="clearall"> 17, </key>\r
+<key name="click"> 3,6,7,9,15,13,14,17,18,21,22,23,24, </key>\r
+<key name="clickabl"> 13, </key>\r
+<key name="client"> 0, </key>\r
+<key name="clos"> 9,15,13,18,21, </key>\r
+<key name="cluster"> 0, </key>\r
+<key name="cod"> 0,15,10, </key>\r
+<key name="coincid"> 9, </key>\r
+<key name="collect"> 9,15, </key>\r
+<key name="collision"> 9, </key>\r
+<key name="color"> 19,22, </key>\r
+<key name="column"> 19,22,23, </key>\r
+<key name="combin"> 12, </key>\r
+<key name="combination"> 17, </key>\r
+<key name="comfort"> 9,15, </key>\r
+<key name="comma"> 15, </key>\r
+<key name="command"> 0,9,15,16, </key>\r
+<key name="commitment"> 2, </key>\r
+<key name="common"> 15,11,18, </key>\r
+<key name="compar"> 0, </key>\r
+<key name="comparison"> 24, </key>\r
+<key name="compil"> 9,15, </key>\r
+<key name="complet"> 7,9,15,21,23, </key>\r
+<key name="complex"> 0,10, </key>\r
+<key name="component"> 0,1,4,6,11,12,13,14,17,18,19,20,22,23,24, </key>\r
+<key name="comput"> 9,15, </key>\r
+<key name="computation"> 0,10, </key>\r
+<key name="concept"> 0,13, </key>\r
+<key name="concern"> 9,15,10, </key>\r
+<key name="conclusion"> 0, </key>\r
+<key name="config"> 15, </key>\r
+<key name="config_fil"> 15, </key>\r
+<key name="config_redhat8_0"> 15, </key>\r
+<key name="configur"> 9,15, </key>\r
+<key name="configurabl"> 12, </key>\r
+<key name="configuration"> 15, </key>\r
+<key name="confirm"> 9,15, </key>\r
+<key name="connect"> 8, </key>\r
+<key name="connection"> 2, </key>\r
+<key name="consist"> 17, </key>\r
+<key name="consol"> 16,17,19, </key>\r
+<key name="constant"> 0, </key>\r
+<key name="constru"> 2, </key>\r
+<key name="construction"> 12, </key>\r
+<key name="contain"> 1,2,7,9,15,14,16,17,19,20,21,22,23, </key>\r
+<key name="container"> 16, </key>\r
+<key name="content"> 15,21, </key>\r
+<key name="context"> 4,17,22,24, </key>\r
+<key name="continu"> 9,15, </key>\r
+<key name="contribut"> 10, </key>\r
+<key name="control"> 3,9,15, </key>\r
+<key name="convenienc"> 17, </key>\r
+<key name="convenient"> 9, </key>\r
+<key name="cooperat"> 12, </key>\r
+<key name="copi"> 2,24, </key>\r
+<key name="copy"> 6,15,17,18, </key>\r
+<key name="copyright"> 2,15, </key>\r
+<key name="corba"> 0, </key>\r
+<key name="corn"> 18, </key>\r
+<key name="correct"> 17, </key>\r
+<key name="correspond"> 9,15,14,16,21, </key>\r
+<key name="corrupt"> 9, </key>\r
+<key name="cost"> 10, </key>\r
+<key name="coupl"> 0,10, </key>\r
+<key name="cpp"> 16, </key>\r
+<key name="creat"> 0,1,3,8,9,15,11,14,16,17,18,19,20,22,24, </key>\r
+<key name="creation"> 0,9,15,10,11, </key>\r
+<key name="critical"> 10, </key>\r
+<key name="cros"> 13,18, </key>\r
+<key name="csh"> 9,15,16, </key>\r
+<key name="cshell"> 16, </key>\r
+<key name="current"> 6,7,9,15,13,16,18,19,22,23,24, </key>\r
+<key name="custom"> 10,19,20,24, </key>\r
+<key name="cut"> 9,15, </key>\r
+<key name="d"> 9,15, </key>\r
+<key name="dat"> 7,23, </key>\r
+<key name="data"> 0,8,9,15,11,12,18,19, </key>\r
+<key name="databas"> 0, </key>\r
+<key name="de"> 2, </key>\r
+<key name="debug"> 22, </key>\r
+<key name="decreas"> 9, </key>\r
+<key name="default"> 3,4,9,15,16,18,19,22,24, </key>\r
+<key name="defin"> 15,19,24, </key>\r
+<key name="definit"> 0,3,4,6,9,16,18,19,22,23,24, </key>\r
+<key name="definition"> 0,21, </key>\r
+<key name="demand"> 10, </key>\r
+<key name="depend"> 15,19,22,24, </key>\r
+<key name="dependanci"> 15, </key>\r
+<key name="dependenci"> 15, </key>\r
+<key name="deriv"> 0,10, </key>\r
+<key name="descend"> 22, </key>\r
+<key name="describ"> 0,1,2,9,15,20, </key>\r
+<key name="description"> 9,15,16,20, </key>\r
+<key name="design"> 10, </key>\r
+<key name="desir"> 20, </key>\r
+<key name="desktop"> 5,4,8,15,11,17,18, </key>\r
+<key name="destin"> 8,17,22,23,24, </key>\r
+<key name="destination"> 13, </key>\r
+<key name="detail"> 9,15, </key>\r
+<key name="develop"> 0, </key>\r
+<key name="development"> 0,10, </key>\r
+<key name="dialog"> 7,9,15,14,18,20,21,23, </key>\r
+<key name="dif"> 9,15, </key>\r
+<key name="different"> 0,1,3,5,8,9,15,14,17,22,24, </key>\r
+<key name="digital"> 10, </key>\r
+<key name="dir"> 15, </key>\r
+<key name="direct"> 9,21, </key>\r
+<key name="directori"> 9,15,19, </key>\r
+<key name="directory"> 9,15,16,18,19,20, </key>\r
+<key name="disabl"> 9,15,19, </key>\r
+<key name="disable_flag"> 15, </key>\r
+<key name="disk"> 9,15,16, </key>\r
+<key name="display"> 5,4,9,15,13,16,17,19,21,22,23,24, </key>\r
+<key name="distinction"> 0, </key>\r
+<key name="distribut"> 0, </key>\r
+<key name="divid"> 1,23, </key>\r
+<key name="do"> 9,15, </key>\r
+<key name="doc"> 9, </key>\r
+<key name="document"> 2,8,15,17, </key>\r
+<key name="doesn"> 9, </key>\r
+<key name="domain"> 0,2,10,12, </key>\r
+<key name="don"> 9,15,20, </key>\r
+<key name="dot"> 9,15, </key>\r
+<key name="doubl"> 23, </key>\r
+<key name="down"> 7,13,22, </key>\r
+<key name="doxygen"> 9,15, </key>\r
+<key name="doxysearch"> 9,15, </key>\r
+<key name="doxytag"> 9,15, </key>\r
+<key name="doxywizard"> 9,15, </key>\r
+<key name="drag"> 4,24, </key>\r
+<key name="dramatical"> 0, </key>\r
+<key name="driv"> 9,15, </key>\r
+<key name="driver"> 9,15, </key>\r
+<key name="drop"> 4,13,24, </key>\r
+<key name="dump"> 17, </key>\r
+<key name="dynamical"> 12, </key>\r
+<key name="e"> 9,15, </key>\r
+<key name="eas"> 10, </key>\r
+<key name="easi"> 0, </key>\r
+<key name="easy"> 0, </key>\r
+<key name="echo"> 9,15, </key>\r
+<key name="economical"> 0, </key>\r
+<key name="edit"> 6,7,9,15,11, </key>\r
+<key name="efficient"> 10, </key>\r
+<key name="eith"> 20, </key>\r
+<key name="electrical"> 10, </key>\r
+<key name="electronic"> 2,10, </key>\r
+<key name="els"> 9, </key>\r
+<key name="empty"> 9,15, </key>\r
+<key name="enabl"> 9,12,19,21, </key>\r
+<key name="encapsulat"> 12, </key>\r
+<key name="encourag"> 0, </key>\r
+<key name="end"> 9,15,19, </key>\r
+<key name="enforc"> 0, </key>\r
+<key name="eng"> 11, </key>\r
+<key name="enough"> 9,15, </key>\r
+<key name="ensur"> 0,10, </key>\r
+<key name="ent"> 7,9,15,16,18, </key>\r
+<key name="enter"> 9,15, </key>\r
+<key name="entry"> 9,15,19,22, </key>\r
+<key name="env"> 16, </key>\r
+<key name="env_"> 15, </key>\r
+<key name="env_product"> 15, </key>\r
+<key name="env_vtk"> 15, </key>\r
+<key name="environment"> 0,8,9,15,10,11,16, </key>\r
+<key name="equal"> 9,15, </key>\r
+<key name="equipment"> 10, </key>\r
+<key name="error"> 2,9,15, </key>\r
+<key name="etc"> 0,4,15, </key>\r
+<key name="ev"> 23, </key>\r
+<key name="even"> 0,9, </key>\r
+<key name="every"> 10,12,21, </key>\r
+<key name="everyth"> 9,15, </key>\r
+<key name="evolution"> 10, </key>\r
+<key name="evolv"> 0, </key>\r
+<key name="ex"> 16, </key>\r
+<key name="exact"> 9,15, </key>\r
+<key name="examl"> 15, </key>\r
+<key name="exampl"> 9,15,10,20, </key>\r
+<key name="except"> 9, </key>\r
+<key name="exchang"> 0, </key>\r
+<key name="execution"> 12, </key>\r
+<key name="exist"> 0,9,15,12,14,18,20, </key>\r
+<key name="existanc"> 9, </key>\r
+<key name="existenc"> 9,15, </key>\r
+<key name="existens"> 9, </key>\r
+<key name="existent"> 9, </key>\r
+<key name="expand"> 13, </key>\r
+<key name="expandability"> 0, </key>\r
+<key name="expectation"> 10, </key>\r
+<key name="exploit"> 0, </key>\r
+<key name="explor"> 1, </key>\r
+<key name="expos"> 0, </key>\r
+<key name="extension"> 18, </key>\r
+<key name="external"> 19, </key>\r
+<key name="extract"> 9,15, </key>\r
+<key name="extreme"> 10, </key>\r
+<key name="f"> 9,15, </key>\r
+<key name="facilitat"> 0, </key>\r
+<key name="factory"> 20, </key>\r
+<key name="fail"> 9,15, </key>\r
+<key name="featur"> 1,6,9,15, </key>\r
+<key name="field"> 7,9,15, </key>\r
+<key name="fig"> 9,15, </key>\r
+<key name="figur"> 9,15, </key>\r
+<key name="fil"> 3,7,9,15,14,16,17,18,19,20, </key>\r
+<key name="find"> 9,15,21, </key>\r
+<key name="fine"> 0, </key>\r
+<key name="finish"> 9,15,13, </key>\r
+<key name="first"> 9,15,22, </key>\r
+<key name="fit"> 17, </key>\r
+<key name="flag"> 15, </key>\r
+<key name="flexibility"> 0, </key>\r
+<key name="flexibl"> 15, </key>\r
+<key name="focu"> 13, </key>\r
+<key name="fold"> 9,15,19,22,24, </key>\r
+<key name="folder"> 9, </key>\r
+<key name="follow"> 0,5,7,8,9,15,12,13,14,16,17,18,19,20,21,23,24, </key>\r
+<key name="font"> 19, </key>\r
+<key name="forc"> 9, </key>\r
+<key name="forget"> 20, </key>\r
+<key name="format"> 1,15,14,19, </key>\r
+<key name="four"> 11, </key>\r
+<key name="fr"> 11, </key>\r
+<key name="fram"> 9,15, </key>\r
+<key name="framework"> 11,22, </key>\r
+<key name="franc"> 2, </key>\r
+<key name="friend"> 10, </key>\r
+<key name="front"> 17, </key>\r
+<key name="full"> 21, </key>\r
+<key name="function"> 15,12,17,18, </key>\r
+<key name="function_nam"> 15, </key>\r
+<key name="functional"> 17, </key>\r
+<key name="functionality"> 0,1,6,8,17,20, </key>\r
+<key name="fundamental"> 0, </key>\r
+<key name="furnish"> 2, </key>\r
+<key name="furth"> 9,15, </key>\r
+<key name="g"> 9,15,16, </key>\r
+<key name="gcc"> 9,15, </key>\r
+<key name="gcc3"> 9, </key>\r
+<key name="general"> 8,15,17, </key>\r
+<key name="generat"> 15,20, </key>\r
+<key name="generation"> 12, </key>\r
+<key name="generator"> 11,20, </key>\r
+<key name="generic"> 10,12, </key>\r
+<key name="geom"> 0,4,6,12, </key>\r
+<key name="get"> 1,7,8,9,10,22,24, </key>\r
+<key name="giv"> 7,15,17, </key>\r
+<key name="given"> 15,12, </key>\r
+<key name="global"> 17, </key>\r
+<key name="glossary"> 21, </key>\r
+<key name="gnu"> 9, </key>\r
+<key name="go"> 9,15,13, </key>\r
+<key name="graph"> 12, </key>\r
+<key name="graphviz"> 9,15, </key>\r
+<key name="grep"> 9,15, </key>\r
+<key name="gui"> 0,9,15,16, </key>\r
+<key name="h"> 9,16, </key>\r
+<key name="hand"> 0,13,21, </key>\r
+<key name="handl"> 9,15,10,11, </key>\r
+<key name="happydoc"> 9,15, </key>\r
+<key name="hard"> 9,15,16, </key>\r
+<key name="hasn"> 18, </key>\r
+<key name="hat"> 9,15, </key>\r
+<key name="hav"> 13,22, </key>\r
+<key name="hdf"> 9,15,14,18,19, </key>\r
+<key name="hdf5"> 9,15, </key>\r
+<key name="hdf5hom"> 9,15, </key>\r
+<key name="head"> 9, </key>\r
+<key name="hello"> 23, </key>\r
+<key name="help"> 0,1,9,15,13,14,16,21,22,23, </key>\r
+<key name="her"> 9,15,19, </key>\r
+<key name="hid"> 4,17,19,22, </key>\r
+<key name="high"> 10, </key>\r
+<key name="highlight"> 15,22, </key>\r
+<key name="hint"> 15, </key>\r
+<key name="history"> 23, </key>\r
+<key name="holder"> 2, </key>\r
+<key name="hom"> 16, </key>\r
+<key name="host"> 0, </key>\r
+<key name="hotspot"> 13, </key>\r
+<key name="how"> 0,9,15, </key>\r
+<key name="html"> 1,21, </key>\r
+<key name="i586_linux_2"> 9,15, </key>\r
+<key name="iapp"> 0,11,12, </key>\r
+<key name="icon"> 3,6,17,20, </key>\r
+<key name="identification"> 22,23, </key>\r
+<key name="identify"> 9,15, </key>\r
+<key name="idl"> 0,20, </key>\r
+<key name="ie"> 19, </key>\r
+<key name="if"> 3,9,15,14,16,18,19,20,21,22,24, </key>\r
+<key name="imag"> 17, </key>\r
+<key name="immediate"> 13, </key>\r
+<key name="immeubl"> 2, </key>\r
+<key name="implement"> 0,15, </key>\r
+<key name="implementation"> 0,20, </key>\r
+<key name="impli"> 15, </key>\r
+<key name="import"> 11,17, </key>\r
+<key name="important"> 15, </key>\r
+<key name="impossibility"> 9, </key>\r
+<key name="includ"> 2,9,15,13,21, </key>\r
+<key name="inclusiv"> 0, </key>\r
+<key name="increas"> 10, </key>\r
+<key name="incremental"> 0, </key>\r
+<key name="independenc"> 0, </key>\r
+<key name="independent"> 0, </key>\r
+<key name="index"> 21,22, </key>\r
+<key name="industry"> 10, </key>\r
+<key name="information"> 0,2,7,9,15,13,18,21,23, </key>\r
+<key name="initial"> 8,17, </key>\r
+<key name="input"> 20, </key>\r
+<key name="insert"> 15, </key>\r
+<key name="insid"> 13,20, </key>\r
+<key name="inspect"> 9,15, </key>\r
+<key name="instal"> 9,15,20, </key>\r
+<key name="install"> 9,15,16, </key>\r
+<key name="install_binary"> 15, </key>\r
+<key name="install_disk_spac"> 15, </key>\r
+<key name="install_sourc"> 15, </key>\r
+<key name="install_wizard_caption"> 15, </key>\r
+<key name="install_wizard_copyright"> 15, </key>\r
+<key name="install_wizard_license_info"> 15, </key>\r
+<key name="install_wizard_root_directory"> 15, </key>\r
+<key name="install_wizard_version"> 15, </key>\r
+<key name="installation"> 9,15,16, </key>\r
+<key name="installation_mod"> 15, </key>\r
+<key name="installation_script_nam"> 15, </key>\r
+<key name="installdiskspac"> 15, </key>\r
+<key name="installwizard_root_directory"> 15, </key>\r
+<key name="instrumental"> 0, </key>\r
+<key name="int"> 10, </key>\r
+<key name="integ"> 15, </key>\r
+<key name="integrat"> 0,11,12,17, </key>\r
+<key name="integration"> 0,10,11,20, </key>\r
+<key name="intend"> 21, </key>\r
+<key name="interfac"> 0,10,11,12,19,20, </key>\r
+<key name="internal"> 15,10, </key>\r
+<key name="internet"> 1, </key>\r
+<key name="interoperabl"> 22, </key>\r
+<key name="interpret"> 11,17, </key>\r
+<key name="interval"> 23, </key>\r
+<key name="introduction"> 9,15,10,11,12, </key>\r
+<key name="invalid"> 18, </key>\r
+<key name="invok"> 9,15,17, </key>\r
+<key name="ior"> 19,22, </key>\r
+<key name="ispython"> 9,15, </key>\r
+<key name="isswig"> 9,15, </key>\r
+<key name="item"> 7,9,19, </key>\r
+<key name="itself"> 9,15, </key>\r
+<key name="java"> 1, </key>\r
+<key name="jpeg"> 17, </key>\r
+<key name="jpg"> 17, </key>\r
+<key name="just"> 9,15, </key>\r
+<key name="k"> 16, </key>\r
+<key name="kbyt"> 15, </key>\r
+<key name="kernel"> 12,16, </key>\r
+<key name="key"> 9,15, </key>\r
+<key name="keyword"> 21, </key>\r
+<key name="kill"> 16, </key>\r
+<key name="killall"> 16, </key>\r
+<key name="kind"> 7,13, </key>\r
+<key name="know"> 9,20, </key>\r
+<key name="known"> 9, </key>\r
+<key name="l"> 16, </key>\r
+<key name="languag"> 0, </key>\r
+<key name="last"> 9,18,23, </key>\r
+<key name="launch"> 1,9,15,14,16,19,20,23, </key>\r
+<key name="ld_library_path"> 9,15, </key>\r
+<key name="lead"> 9,18, </key>\r
+<key name="learn"> 15, </key>\r
+<key name="left"> 9,15,17,21, </key>\r
+<key name="level"> 19,21,24, </key>\r
+<key name="lib"> 9,15, </key>\r
+<key name="libcosnotify3"> 9,15, </key>\r
+<key name="libgl"> 9,15, </key>\r
+<key name="libhdf5"> 9,15, </key>\r
+<key name="libm"> 9,15, </key>\r
+<key name="libomniorb3"> 9,15, </key>\r
+<key name="libqt"> 9,15, </key>\r
+<key name="libqtxmlcmodul"> 9,15, </key>\r
+<key name="libqwt"> 9,15, </key>\r
+<key name="library"> 9,15, </key>\r
+<key name="libsip"> 9,15, </key>\r
+<key name="libtcl8"> 9,15, </key>\r
+<key name="libtclx8"> 9,15, </key>\r
+<key name="libtk8"> 9,15, </key>\r
+<key name="libtkx8"> 9,15, </key>\r
+<key name="libvtkcommon"> 9,15, </key>\r
+<key name="licens"> 2,15, </key>\r
+<key name="lik"> 0,5,4,9,15,13,17,18,20,22,24, </key>\r
+<key name="limitation"> 9, </key>\r
+<key name="lin"> 1,9,15,16, </key>\r
+<key name="link"> 0,9,10,13, </key>\r
+<key name="linu"> 9, </key>\r
+<key name="linux"> 1,9,15, </key>\r
+<key name="linuxredhat"> 15, </key>\r
+<key name="list"> 7,9,15,13,16,19,21,23, </key>\r
+<key name="list_of_prerequisit"> 15, </key>\r
+<key name="load"> 11,14,16,17,19,22,24, </key>\r
+<key name="local"> 9,15, </key>\r
+<key name="locat"> 4,16,21,22, </key>\r
+<key name="location"> 20, </key>\r
+<key name="lock"> 7, </key>\r
+<key name="log"> 16, </key>\r
+<key name="long"> 0, </key>\r
+<key name="look"> 5,9,15,20,21, </key>\r
+<key name="lost"> 18, </key>\r
+<key name="lot"> 9, </key>\r
+<key name="low"> 9,15,21, </key>\r
+<key name="m"> 16, </key>\r
+<key name="machin"> 0,9,18,23, </key>\r
+<key name="macintosh"> 1, </key>\r
+<key name="macro"> 0, </key>\r
+<key name="main"> 3,5,4,6,7,15,14,17,18,19,20,23, </key>\r
+<key name="mak"> 3,5,9,15, </key>\r
+<key name="management"> 11,17, </key>\r
+<key name="manual"> 1,9,15,19, </key>\r
+<key name="map"> 0, </key>\r
+<key name="mark"> 4,9,15,19, </key>\r
+<key name="market"> 10, </key>\r
+<key name="massive"> 0, </key>\r
+<key name="mast"> 15, </key>\r
+<key name="match"> 21, </key>\r
+<key name="material"> 2, </key>\r
+<key name="maximiz"> 3,5,17, </key>\r
+<key name="mean"> 2,8,9,15, </key>\r
+<key name="mechanical"> 2, </key>\r
+<key name="med2hom"> 9,15, </key>\r
+<key name="meet"> 10, </key>\r
+<key name="mention"> 9, </key>\r
+<key name="menu"> 3,5,4,6,7,11,13,14,17,18,19,20,22,23,24, </key>\r
+<key name="mesa"> 9,15, </key>\r
+<key name="mesa_hom"> 9,15, </key>\r
+<key name="mesh"> 12, </key>\r
+<key name="messag"> 7,9,15,11,16,17,19,23, </key>\r
+<key name="middl"> 9,15, </key>\r
+<key name="mind"> 9, </key>\r
+<key name="minimiz"> 3,17, </key>\r
+<key name="mis"> 15, </key>\r
+<key name="mistak"> 17, </key>\r
+<key name="mod"> 0,9,15,16, </key>\r
+<key name="model"> 0,10,12, </key>\r
+<key name="modern"> 10, </key>\r
+<key name="modification"> 0,7, </key>\r
+<key name="modify"> 15,24, </key>\r
+<key name="modul"> 1,12,16,20, </key>\r
+<key name="module1"> 16, </key>\r
+<key name="module2"> 16, </key>\r
+<key name="moment"> 15, </key>\r
+<key name="mous"> 4, </key>\r
+<key name="mozilla"> 19, </key>\r
+<key name="mt"> 9,15, </key>\r
+<key name="much"> 9,15, </key>\r
+<key name="multi"> 8,11,20,21, </key>\r
+<key name="multifil"> 18,19, </key>\r
+<key name="multipl"> 18, </key>\r
+<key name="multiti"> 0, </key>\r
+<key name="must"> 0,9,10,12, </key>\r
+<key name="n"> 9,15, </key>\r
+<key name="nam"> 2,3,5,7,9,15,18,19,20,22,23,24, </key>\r
+<key name="nativ"> 9,15, </key>\r
+<key name="natural"> 0, </key>\r
+<key name="navigat"> 9,15,13, </key>\r
+<key name="navigation"> 1,13, </key>\r
+<key name="navigator"> 1, </key>\r
+<key name="ne"> 9,15,13, </key>\r
+<key name="necessary"> 9,15,16, </key>\r
+<key name="need"> 9, </key>\r
+<key name="netscap"> 1,19, </key>\r
+<key name="new"> 0,3,7,8,9,15,18,19,20,24, </key>\r
+<key name="next"> 7,9,15,19,20, </key>\r
+<key name="nod"> 20, </key>\r
+<key name="not"> 9,15, </key>\r
+<key name="notic"> 2, </key>\r
+<key name="noticeab"> 0, </key>\r
+<key name="notifd"> 9,15, </key>\r
+<key name="notion"> 8, </key>\r
+<key name="numb"> 9,15,19,23, </key>\r
+<key name="numeric"> 9,15,10,12, </key>\r
+<key name="numerical"> 0,8, </key>\r
+<key name="object"> 0,6,11,14,17,19,22,24, </key>\r
+<key name="objectiv"> 0, </key>\r
+<key name="obligatory"> 9,15, </key>\r
+<key name="occ"> 3,11,17,19, </key>\r
+<key name="occupi"> 15, </key>\r
+<key name="off"> 9,15, </key>\r
+<key name="offer"> 0, </key>\r
+<key name="often"> 10, </key>\r
+<key name="ok"> 9,15,14, </key>\r
+<key name="omg"> 0, </key>\r
+<key name="omit"> 15, </key>\r
+<key name="omni"> 9,15, </key>\r
+<key name="omninotify"> 9,15, </key>\r
+<key name="omniorb"> 9,15, </key>\r
+<key name="omniorbdir"> 9,15, </key>\r
+<key name="omniorbpy"> 9,15, </key>\r
+<key name="on"> 0,6,9,15,11,13,14,16,18,19,20,21,22,24, </key>\r
+<key name="onc"> 9, </key>\r
+<key name="onlin"> 21, </key>\r
+<key name="onto"> 9, </key>\r
+<key name="open"> 2,8,12,13,14,16,18,19,20,21, </key>\r
+<key name="opengl"> 9,15, </key>\r
+<key name="operability"> 10, </key>\r
+<key name="operation"> 6,8,17,18,24, </key>\r
+<key name="optimiz"> 10, </key>\r
+<key name="option"> 5,6,7,9,15,14,16,17,18,19,22,24, </key>\r
+<key name="optional"> 9,15, </key>\r
+<key name="ord"> 9,15, </key>\r
+<key name="org"> 0, </key>\r
+<key name="originality"> 12, </key>\r
+<key name="os"> 15, </key>\r
+<key name="os_version"> 15, </key>\r
+<key name="other"> 1, </key>\r
+<key name="otherwis"> 2,9,15,18, </key>\r
+<key name="outlin"> 17, </key>\r
+<key name="output"> 9,15,11,17,19, </key>\r
+<key name="overload"> 15, </key>\r
+<key name="own"> 15,12,19,24, </key>\r
+<key name="p"> 16, </key>\r
+<key name="packag"> 9,15,16,20, </key>\r
+<key name="pag"> 9,15,21, </key>\r
+<key name="pan"> 13,17,21, </key>\r
+<key name="parallel"> 0, </key>\r
+<key name="paramet"> 9,15,20, </key>\r
+<key name="parameter"> 0,9,20, </key>\r
+<key name="part"> 2,9,15,17, </key>\r
+<key name="particular"> 10,18, </key>\r
+<key name="pas"> 9,15, </key>\r
+<key name="past"> 6,17, </key>\r
+<key name="path"> 9,15, </key>\r
+<key name="pc"> 0, </key>\r
+<key name="performanc"> 0,8,10,17, </key>\r
+<key name="permission"> 2,9,15, </key>\r
+<key name="perpetuity"> 10, </key>\r
+<key name="phenomena"> 0, </key>\r
+<key name="photocopy"> 2, </key>\r
+<key name="phras"> 21, </key>\r
+<key name="physical"> 0,10,12, </key>\r
+<key name="pick"> 9,15, </key>\r
+<key name="pictur"> 7,24, </key>\r
+<key name="pid"> 23, </key>\r
+<key name="piec"> 0, </key>\r
+<key name="plac"> 4,15, </key>\r
+<key name="platform"> 0,1,8,9,15,10,11,12,16,17,18,20,23, </key>\r
+<key name="pleas"> 9,15, </key>\r
+<key name="plot2d"> 3,11,17,19, </key>\r
+<key name="png"> 17, </key>\r
+<key name="point"> 9, </key>\r
+<key name="pop"> 13,14,17,22,24, </key>\r
+<key name="popup"> 13, </key>\r
+<key name="port"> 16, </key>\r
+<key name="portion"> 10, </key>\r
+<key name="portkill"> 16, </key>\r
+<key name="position"> 17, </key>\r
+<key name="possibility"> 0,9,15,16,20, </key>\r
+<key name="possibl"> 15,22,24, </key>\r
+<key name="post"> 10,12, </key>\r
+<key name="pr"> 10,12, </key>\r
+<key name="precompil"> 9,15, </key>\r
+<key name="predefin"> 0, </key>\r
+<key name="pref"> 9, </key>\r
+<key name="preferabl"> 16, </key>\r
+<key name="preferenc"> 19,22, </key>\r
+<key name="prefix"> 9,15, </key>\r
+<key name="preinstal"> 9,15, </key>\r
+<key name="preliminary"> 9,15, </key>\r
+<key name="prerequisit"> 9,15, </key>\r
+<key name="pres"> 9,15, </key>\r
+<key name="presentation"> 17, </key>\r
+<key name="previou"> 9,15,14, </key>\r
+<key name="previous"> 9,15,14,18, </key>\r
+<key name="print"> 9,15,16, </key>\r
+<key name="print_env"> 15, </key>\r
+<key name="problem"> 9,15,10, </key>\r
+<key name="proce"> 8,9,15, </key>\r
+<key name="procedur"> 9,15,16, </key>\r
+<key name="proces"> 9,15,10,12,23, </key>\r
+<key name="processor"> 0,10, </key>\r
+<key name="produc"> 17, </key>\r
+<key name="product"> 2,9,15,10,16, </key>\r
+<key name="product_nam"> 15, </key>\r
+<key name="product_script_nam"> 15, </key>\r
+<key name="product_version"> 15, </key>\r
+<key name="productivity"> 0, </key>\r
+<key name="products_directory"> 15, </key>\r
+<key name="profil"> 9,16, </key>\r
+<key name="program"> 0,9,15, </key>\r
+<key name="progres"> 9,15, </key>\r
+<key name="prompt"> 9,15,16, </key>\r
+<key name="prop"> 9,15, </key>\r
+<key name="proper"> 15, </key>\r
+<key name="properti"> 7,12, </key>\r
+<key name="propos"> 9,15, </key>\r
+<key name="proprietary"> 2, </key>\r
+<key name="provid"> 0,15,10,11,16,20,21,23, </key>\r
+<key name="purpos"> 8,9,22, </key>\r
+<key name="py"> 15,16, </key>\r
+<key name="pyqt"> 9,15, </key>\r
+<key name="pyqtdir"> 9,15, </key>\r
+<key name="python"> 0,9,15,11,16,17,19, </key>\r
+<key name="python2"> 9,15, </key>\r
+<key name="pythonhom"> 9,15, </key>\r
+<key name="qt"> 9,15, </key>\r
+<key name="qtdir"> 9,15, </key>\r
+<key name="quality"> 10, </key>\r
+<key name="question"> 9,15, </key>\r
+<key name="quick"> 15,19,22,24, </key>\r
+<key name="quit"> 9,15,18, </key>\r
+<key name="quot"> 15, </key>\r
+<key name="qwt"> 9,15, </key>\r
+<key name="qwthom"> 9,15, </key>\r
+<key name="radiobutton"> 9,15, </key>\r
+<key name="rais"> 9,15, </key>\r
+<key name="rapid"> 0, </key>\r
+<key name="razel"> 2, </key>\r
+<key name="rc2"> 9,15, </key>\r
+<key name="re"> 13, </key>\r
+<key name="reactivity"> 10, </key>\r
+<key name="read"> 9,15,13, </key>\r
+<key name="readm"> 15, </key>\r
+<key name="realiz"> 8, </key>\r
+<key name="recommend"> 9,15, </key>\r
+<key name="record"> 2,7, </key>\r
+<key name="rectangl"> 17, </key>\r
+<key name="red"> 9,15,22, </key>\r
+<key name="redhat"> 9,15, </key>\r
+<key name="redhat8"> 15, </key>\r
+<key name="redirection"> 16, </key>\r
+<key name="redo"> 6, </key>\r
+<key name="reduc"> 10, </key>\r
+<key name="reduction"> 10, </key>\r
+<key name="referenc"> 1,13,19,22, </key>\r
+<key name="refin"> 10, </key>\r
+<key name="refresh"> 23, </key>\r
+<key name="refreshment"> 23, </key>\r
+<key name="register"> 2, </key>\r
+<key name="registry"> 11,23, </key>\r
+<key name="reinstal"> 9,15, </key>\r
+<key name="reinstall"> 9,15, </key>\r
+<key name="reinstallation"> 15, </key>\r
+<key name="relat"> 9,15,13,21, </key>\r
+<key name="relativ"> 15, </key>\r
+<key name="relevant"> 13, </key>\r
+<key name="reliability"> 10, </key>\r
+<key name="reload"> 18, </key>\r
+<key name="relocat"> 4, </key>\r
+<key name="remain"> 0, </key>\r
+<key name="remov"> 9,15,24, </key>\r
+<key name="renam"> 24, </key>\r
+<key name="rené"> 2, </key>\r
+<key name="repeat"> 9, </key>\r
+<key name="represent"> 0,8,9,10,11,12,21, </key>\r
+<key name="representation"> 5, </key>\r
+<key name="reproduc"> 2, </key>\r
+<key name="requir"> 9,15,10,14,18, </key>\r
+<key name="requirement"> 0,10, </key>\r
+<key name="reserv"> 2, </key>\r
+<key name="reset"> 9,15,17, </key>\r
+<key name="resiz"> 17,19, </key>\r
+<key name="respectiv"> 2, </key>\r
+<key name="respond"> 0, </key>\r
+<key name="responsibility"> 2, </key>\r
+<key name="responsibl"> 15, </key>\r
+<key name="restor"> 19, </key>\r
+<key name="result"> 8,18, </key>\r
+<key name="retrieval"> 2, </key>\r
+<key name="reus"> 0,10, </key>\r
+<key name="reusabl"> 12, </key>\r
+<key name="right"> 2,9,15,13,14,17,18,21,22,24, </key>\r
+<key name="risk"> 10, </key>\r
+<key name="robustnes"> 10, </key>\r
+<key name="rol"> 0, </key>\r
+<key name="root"> 9,15,24, </key>\r
+<key name="rotation"> 17, </key>\r
+<key name="ru"> 2, </key>\r
+<key name="rul"> 15, </key>\r
+<key name="run"> 0,9,15,16,20,23, </key>\r
+<key name="runinstall"> 9,15, </key>\r
+<key name="runsalom"> 16,20, </key>\r
+<key name="runsalomewithport"> 20, </key>\r
+<key name="s"> 0,2,9,15,13,17, </key>\r
+<key name="saclay"> 2, </key>\r
+<key name="salom"> 0,1,3,5,4,6,8,9,15,10,11,12,13,14,16,17,18,19,20,21,22,23,24, </key>\r
+<key name="salome_modulecatalog_serv"> 20, </key>\r
+<key name="salome_root_dir"> 9,15, </key>\r
+<key name="salome_src"> 15, </key>\r
+<key name="salomebin"> 9, </key>\r
+<key name="salomecsh"> 9, </key>\r
+<key name="salomedoc"> 9, </key>\r
+<key name="salomepro_src"> 9, </key>\r
+<key name="salomesh"> 9, </key>\r
+<key name="salomesourc"> 9, </key>\r
+<key name="sam"> 13,18,20,23,24, </key>\r
+<key name="sav"> 9,15,11,17,18,19, </key>\r
+<key name="say"> 9,15, </key>\r
+<key name="scal"> 0, </key>\r
+<key name="schem"> 0,15, </key>\r
+<key name="scientific"> 0, </key>\r
+<key name="script"> 0,9,15,16,20, </key>\r
+<key name="scroll"> 7, </key>\r
+<key name="se"> 7,9,15,14,18,20,22,24, </key>\r
+<key name="search"> 1,9,15,14,18,21, </key>\r
+<key name="second"> 9,15,24, </key>\r
+<key name="section"> 9,15,17, </key>\r
+<key name="select"> 3,5,7,9,15,14,18,19,21,24, </key>\r
+<key name="selectall"> 17, </key>\r
+<key name="send"> 9,15, </key>\r
+<key name="sensitiv"> 4,17,22,24, </key>\r
+<key name="separat"> 15, </key>\r
+<key name="serv"> 0,20, </key>\r
+<key name="server"> 0,16, </key>\r
+<key name="servic"> 0,9,15,20, </key>\r
+<key name="session"> 14,18,19,22,23,24, </key>\r
+<key name="set"> 1,9,15,16,17,18,19,22,23,24, </key>\r
+<key name="setting"> 9,15, </key>\r
+<key name="sever"> 10, </key>\r
+<key name="sh"> 9,15, </key>\r
+<key name="shar"> 10, </key>\r
+<key name="shell"> 9,15,11,16, </key>\r
+<key name="shin"> 15, </key>\r
+<key name="short"> 21, </key>\r
+<key name="should"> 2,8,9,15,18,20, </key>\r
+<key name="show"> 9,15,17,19,22, </key>\r
+<key name="shown"> 7, </key>\r
+<key name="sid"> 15, </key>\r
+<key name="signal"> 9,15, </key>\r
+<key name="signatur"> 15, </key>\r
+<key name="sigterm"> 9,15, </key>\r
+<key name="simpl"> 0, </key>\r
+<key name="simplify"> 15, </key>\r
+<key name="simulat"> 0, </key>\r
+<key name="simulation"> 10,12, </key>\r
+<key name="simultaneous"> 8, </key>\r
+<key name="singl"> 15, </key>\r
+<key name="sip"> 9,15, </key>\r
+<key name="sipdir"> 9,15, </key>\r
+<key name="sit"> 9,15, </key>\r
+<key name="situation"> 0, </key>\r
+<key name="siz"> 17,19, </key>\r
+<key name="skip"> 9,15, </key>\r
+<key name="small"> 18, </key>\r
+<key name="smesh"> 0,4,12, </key>\r
+<key name="so"> 0,9,15,19,21,22,24, </key>\r
+<key name="softwar"> 0,2,9,10,12, </key>\r
+<key name="solution"> 10, </key>\r
+<key name="solver"> 12, </key>\r
+<key name="somewher"> 9, </key>\r
+<key name="sort"> 19,22, </key>\r
+<key name="sourc"> 9,15,12,16, </key>\r
+<key name="spac"> 9,15,17, </key>\r
+<key name="special"> 9,15,14,16,18, </key>\r
+<key name="specifi"> 0, </key>\r
+<key name="specific"> 0,4,10,12,21, </key>\r
+<key name="specifical"> 10, </key>\r
+<key name="specification"> 12, </key>\r
+<key name="specify"> 18,20, </key>\r
+<key name="spent"> 10, </key>\r
+<key name="src"> 9,15, </key>\r
+<key name="standard"> 3,9,15,11,14,17,18,20, </key>\r
+<key name="start"> 8,9,15,20,23, </key>\r
+<key name="stat"> 9,15, </key>\r
+<key name="station"> 0, </key>\r
+<key name="statu"> 9,15, </key>\r
+<key name="step"> 9,15, </key>\r
+<key name="still"> 9,15, </key>\r
+<key name="stor"> 0,9,15,14,18,20, </key>\r
+<key name="storag"> 2, </key>\r
+<key name="str"> 15, </key>\r
+<key name="strict"> 9, </key>\r
+<key name="strong"> 9,15, </key>\r
+<key name="structur"> 10,14,22,24, </key>\r
+<key name="structural"> 10, </key>\r
+<key name="studi"> 3,5,6,8,11,14,17,18, </key>\r
+<key name="study"> 0,3,5,6,7,8,11,12,14,17,18,19,20,22,23,24, </key>\r
+<key name="study1"> 3, </key>\r
+<key name="sub"> 15,21, </key>\r
+<key name="subject"> 2, </key>\r
+<key name="submenu"> 3,4,19, </key>\r
+<key name="successful"> 9,15, </key>\r
+<key name="sufficient"> 9, </key>\r
+<key name="summariz"> 9,15, </key>\r
+<key name="superstructur"> 9, </key>\r
+<key name="superv"> 16, </key>\r
+<key name="supervision"> 11,12,16,20, </key>\r
+<key name="supplementary"> 22,23, </key>\r
+<key name="suppli"> 9,15, </key>\r
+<key name="support"> 9,15,20, </key>\r
+<key name="supported_installation_mod"> 15, </key>\r
+<key name="suppos"> 15, </key>\r
+<key name="sur"> 9,15, </key>\r
+<key name="swig"> 9,15, </key>\r
+<key name="switch"> 5,9,15,11, </key>\r
+<key name="symbolic"> 9, </key>\r
+<key name="system"> 0,1,2,9,15,13,21, </key>\r
+<key name="t"> 9,15,16,18,20, </key>\r
+<key name="tab"> 21,23,24, </key>\r
+<key name="tabl"> 9,15, </key>\r
+<key name="tag"> 15, </key>\r
+<key name="tak"> 0,9,15, </key>\r
+<key name="taken"> 9,15,16, </key>\r
+<key name="target"> 9,15, </key>\r
+<key name="target_directory"> 15, </key>\r
+<key name="target_paltform"> 15, </key>\r
+<key name="targetdir"> 15, </key>\r
+<key name="tcl"> 9,15, </key>\r
+<key name="tclhom"> 9,15, </key>\r
+<key name="tclsh8"> 9,15, </key>\r
+<key name="technologi"> 0, </key>\r
+<key name="technological"> 10, </key>\r
+<key name="technologiqu"> 2, </key>\r
+<key name="technology"> 0, </key>\r
+<key name="temp"> 9,15, </key>\r
+<key name="temp_directory"> 15, </key>\r
+<key name="temp_fold"> 15, </key>\r
+<key name="tempdir"> 15, </key>\r
+<key name="temporary"> 9,15, </key>\r
+<key name="temporarydiskspac"> 15, </key>\r
+<key name="term"> 2,10,13,21, </key>\r
+<key name="terminal"> 9,16, </key>\r
+<key name="test"> 0,15,20, </key>\r
+<key name="text"> 9,15,13,21, </key>\r
+<key name="them"> 0,9,15,12,16,23, </key>\r
+<key name="therefor"> 9,15, </key>\r
+<key name="this_is_"> 9,15, </key>\r
+<key name="this_is_omninotify_1_2"> 9,15, </key>\r
+<key name="this_is_omniorb_3_0_5"> 9,15, </key>\r
+<key name="this_is_omniorbpy_1_5"> 9,15, </key>\r
+<key name="thos"> 9,15,21, </key>\r
+<key name="thre"> 9, </key>\r
+<key name="thu"> 0, </key>\r
+<key name="til"> 5, </key>\r
+<key name="tim"> 0,7,9,15,10,19,20,23, </key>\r
+<key name="titl"> 15, </key>\r
+<key name="tmp"> 9,15, </key>\r
+<key name="tmp_disk_spac"> 15, </key>\r
+<key name="togeth"> 9,15, </key>\r
+<key name="too"> 9, </key>\r
+<key name="tool"> 0,11,17,20,23, </key>\r
+<key name="toolbar"> 3,4,6,11,14,17,18, </key>\r
+<key name="top"> 3,4,15,17, </key>\r
+<key name="topic"> 1,13,21, </key>\r
+<key name="topmost"> 9,15, </key>\r
+<key name="total"> 9,15, </key>\r
+<key name="totality"> 0, </key>\r
+<key name="tr"> 9,15, </key>\r
+<key name="trademark"> 2, </key>\r
+<key name="train"> 10, </key>\r
+<key name="transmit"> 2, </key>\r
+<key name="tre"> 15,22,24, </key>\r
+<key name="tri"> 9,15, </key>\r
+<key name="trihedron"> 17,19, </key>\r
+<key name="troubl"> 9, </key>\r
+<key name="tru"> 15, </key>\r
+<key name="try"> 7,9,15,18,20, </key>\r
+<key name="try_nativ"> 15, </key>\r
+<key name="try_preinstal"> 15, </key>\r
+<key name="two"> 9,15,13,18,20, </key>\r
+<key name="typ"> 9,15,20, </key>\r
+<key name="typical"> 20, </key>\r
+<key name="ultimat"> 0, </key>\r
+<key name="understand"> 10, </key>\r
+<key name="undo"> 6,19, </key>\r
+<key name="undon"> 19, </key>\r
+<key name="unfortunate"> 9,15, </key>\r
+<key name="unix"> 1, </key>\r
+<key name="unload"> 14,18, </key>\r
+<key name="unmark"> 4, </key>\r
+<key name="unnecessary"> 15, </key>\r
+<key name="unselect"> 9,15, </key>\r
+<key name="up"> 9,15,13,14,17,18,22,24, </key>\r
+<key name="updat"> 9,17,18,20, </key>\r
+<key name="upload"> 4,11,17, </key>\r
+<key name="us"> 0,2,6,7,8,9,15,10,16,18,19,20,21,22,23,24, </key>\r
+<key name="usag"> 15, </key>\r
+<key name="usecas"> 11,17,19,24, </key>\r
+<key name="user"> 7,20, </key>\r
+<key name="usr"> 9,15, </key>\r
+<key name="utiliti"> 1, </key>\r
+<key name="v"> 9,15, </key>\r
+<key name="valid"> 19, </key>\r
+<key name="validation"> 0, </key>\r
+<key name="valu"> 15,19,22, </key>\r
+<key name="variabl"> 9,15,16, </key>\r
+<key name="variety"> 1,13, </key>\r
+<key name="variou"> 15,12, </key>\r
+<key name="ve"> 9,15, </key>\r
+<key name="ver"> 9,15, </key>\r
+<key name="version"> 9,15,20, </key>\r
+<key name="very"> 9,15,10, </key>\r
+<key name="view"> 3,4,7,9,15,11,13,17,19,21,23,24, </key>\r
+<key name="viewer"> 3,11,17, </key>\r
+<key name="visu"> 0,4,6,12, </key>\r
+<key name="visualization"> 8,11,12,17, </key>\r
+<key name="vtk"> 3,9,15,11,17,19, </key>\r
+<key name="vtkhom"> 9,15, </key>\r
+<key name="wait"> 9,15, </key>\r
+<key name="want"> 9,15,13, </key>\r
+<key name="warn"> 7,9,15, </key>\r
+<key name="way"> 5,9,15,12,20,21, </key>\r
+<key name="welcom"> 1,10, </key>\r
+<key name="well"> 17, </key>\r
+<key name="what"> 0,9,15,13,22,24, </key>\r
+<key name="whichpython"> 15, </key>\r
+<key name="whichswig"> 15, </key>\r
+<key name="whil"> 0, </key>\r
+<key name="whol"> 17,18,19, </key>\r
+<key name="wid"> 1, </key>\r
+<key name="will"> 1,3,5,4,7,8,9,15,14,16,17,18,19,20,22,23,24, </key>\r
+<key name="window"> 1,3,5,4,8,9,15,11,13,16,17,18,19,23,24, </key>\r
+<key name="wish8"> 9,15, </key>\r
+<key name="within"> 0,6,17,19,23, </key>\r
+<key name="without"> 0,2,9,15,16,24, </key>\r
+<key name="wizard"> 9,15, </key>\r
+<key name="won"> 9,15, </key>\r
+<key name="word"> 21, </key>\r
+<key name="work"> 0,8,9,15,18,21, </key>\r
+<key name="would"> 4,9,15,18,20,24, </key>\r
+<key name="writ"> 2,18, </key>\r
+<key name="written"> 18, </key>\r
+<key name="wrong"> 9,15, </key>\r
+<key name="www"> 0, </key>\r
+<key name="x"> 16, </key>\r
+<key name="xml"> 15,16,20, </key>\r
+<key name="xterm"> 16, </key>\r
+<key name="y"> 9,15, </key>\r
+<key name="year"> 10, </key>\r
+<key name="yes"> 7, </key>\r
+<key name="yet"> 9,15, </key>\r
+<key name="your"> 3,5,6,7,9,15,12,16,17,18,20,21,24, </key>\r
+<key name="zon"> 3, </key>\r
+<key name="zoom"> 17, </key>\r
+\r
+</ftswdata> \r
--- /dev/null
+var gIEA = new Array();\r
+function aGE(sName, sDef)\r
+{\r
+ var len = gIEA.length;\r
+ gIEA[len] = new gloEntry(sName, sDef);\r
+}\r
+\r
+function gloEntry(sName, sDef) \r
+{\r
+ this.sName = sName;\r
+ this.sDef = sDef;\r
+ this.nNKOff = 0;\r
+}\r
+\r
+function window_OnLoad()\r
+{\r
+ if (parent && parent != this) {\r
+ if (parent.putData) \r
+ {\r
+ parent.putData(gIEA);\r
+ }\r
+ }\r
+}\r
+\r
+window.onload = window_OnLoad;
\ No newline at end of file
--- /dev/null
+<html>\r
+<head>\r
+<META HTTP-EQUIV="content-type" CONTENT="text/html; charset=iso-8859-1">\r
+</head>\r
+<body>\r
+<script language="javascript" src="whgdata.js"></script>\r
+<script language="javascript">\r
+<!--\r
+ aGE("Cell","Element of a mesh. Cells are determined by their connectivity. They can have 0,1,2 or 3 dimension.");\r
+ aGE("Component","One integer or real value can correspond to each component of a field and to each entity of a mesh");\r
+ aGE("Descendant connectivity","It is a description of the entities of the mesh with dimension N. This description is made by an ordered list of geometrical entities (nodes, edges, or faces) with dimension N-1.");\r
+ aGE("Edge","An edge of a volumetric or surface mesh. It is composed of 2 or 3 nodes (2 vertex nodes and optionally one middle node).");\r
+ aGE("Entity of a mesh","Geometrical component of the mesh: node, cell, face and edge. Faces and edges are only intermediate entities allowing to define the cells in descendant connectivity.");\r
+ aGE("Equivalence","Equivalence represents a list of correspondance 2 by 2 of the entities of the same dimension.");\r
+ aGE("Face","Face of a volumetrical cell (triangle, quadrangle).");\r
+ aGE("Family","Entities of a mesh are described by a certain number of characteristics (boundary conditions, groups membership). Families represent classes equivalent to these characteristics (two entities of a mesh can belong to the same family if they have the same characteristics). Every family is determined by a set of attributes and a list of groups membership.");\r
+ aGE("Field","Field consists of one or several scalar components. One definite type is associated to the given field and the values corresponding to different components are all of the same type.");\r
+ aGE("Field profile","Fields can be defined only on one part of the mesh. Profile of the field or profile of the component of a field indicates which entities of the mesh contain values.");\r
+ aGE("Group","Unordered set of entities of a mesh. One entity can belong to several groups.");\r
+ aGE("Mesh","Mesh is described by its geometry: list of nodes and list of cells which constitute this mesh. Supplementary information is added with the help of families (initial, boundary conditions).");\r
+ aGE("Nodal connectivity","It is a description of an entity of the mesh by an ordered list of nodes constituting this entity.");\r
+ aGE("Node","Node can be an isolated node of a mesh, a vertex or middle node of an edge. A node is associated to a point.");\r
+ aGE("Point","Geometrical entity determined by its coordinates in the space.");\r
+ aGE("Reference connectivity","For each type of entity of a mesh, reference connectivity define the topology of an entity.");\r
+ aGE("Result","List of fields referring to one mesh.");\r
+ aGE("Study","Study represents a chain of sequences of calculations.");\r
+\r
+//-->\r
+</script>\r
+</body>\r
+</html>\r
--- /dev/null
+<?xml version='1.0' encoding='ISO-8859-1' ?>\r
+<glossarydata>\r
+ <entry name="Cell" value="Element of a mesh. Cells are determined by their connectivity. They can have 0,1,2 or 3 dimension." />\r
+ <entry name="Component" value="One integer or real value can correspond to each component of a field and to each entity of a mesh" />\r
+ <entry name="Descendant connectivity" value="It is a description of the entities of the mesh with dimension N. This description is made by an ordered list of geometrical entities (nodes, edges, or faces) with dimension N-1." />\r
+ <entry name="Edge" value="An edge of a volumetric or surface mesh. It is composed of 2 or 3 nodes (2 vertex nodes and optionally one middle node)." />\r
+ <entry name="Entity of a mesh" value="Geometrical component of the mesh: node, cell, face and edge. Faces and edges are only intermediate entities allowing to define the cells in descendant connectivity." />\r
+ <entry name="Equivalence" value="Equivalence represents a list of correspondance 2 by 2 of the entities of the same dimension." />\r
+ <entry name="Face" value="Face of a volumetrical cell (triangle, quadrangle)." />\r
+ <entry name="Family" value="Entities of a mesh are described by a certain number of characteristics (boundary conditions, groups membership). Families represent classes equivalent to these characteristics (two entities of a mesh can belong to the same family if they have the same characteristics). Every family is determined by a set of attributes and a list of groups membership." />\r
+ <entry name="Field" value="Field consists of one or several scalar components. One definite type is associated to the given field and the values corresponding to different components are all of the same type." />\r
+ <entry name="Field profile" value="Fields can be defined only on one part of the mesh. Profile of the field or profile of the component of a field indicates which entities of the mesh contain values." />\r
+ <entry name="Group" value="Unordered set of entities of a mesh. One entity can belong to several groups." />\r
+ <entry name="Mesh" value="Mesh is described by its geometry: list of nodes and list of cells which constitute this mesh. Supplementary information is added with the help of families (initial, boundary conditions)." />\r
+ <entry name="Nodal connectivity" value="It is a description of an entity of the mesh by an ordered list of nodes constituting this entity." />\r
+ <entry name="Node" value="Node can be an isolated node of a mesh, a vertex or middle node of an edge. A node is associated to a point." />\r
+ <entry name="Point" value="Geometrical entity determined by its coordinates in the space." />\r
+ <entry name="Reference connectivity" value="For each type of entity of a mesh, reference connectivity define the topology of an entity." />\r
+ <entry name="Result" value="List of fields referring to one mesh." />\r
+ <entry name="Study" value="Study represents a chain of sequences of calculations." />\r
+\r
+</glossarydata>\r
--- /dev/null
+<html>\r
+<head>\r
+<META HTTP-EQUIV="content-type" CONTENT="text/html; charset=iso-8859-1">\r
+</head>\r
+<body>\r
+<script language="javascript" src="whglo.js"></script>\r
+<script language="javascript">\r
+<!--\r
+iFM("Cell","Study","whgdata0.htm",18);\r
+\r
+//-->\r
+</script>\r
+</body>\r
+</html>
\ No newline at end of file
--- /dev/null
+var gaFileMapping = new Array();\r
+function fileMapping(sBK, sEK, sFileName, nNum)\r
+{\r
+ this.sBK = sBK;\r
+ this.sEK = sEK;\r
+ this.sFileName = sFileName;\r
+ this.aKs = null;\r
+ this.nNum = nNum;\r
+ this.oUsedItems = null;\r
+}\r
+\r
+\r
+function iFM(sBK, sEK, sFileName, nNum)\r
+{\r
+ var i = gaFileMapping.length;\r
+ gaFileMapping[i] = new fileMapping(sBK, sEK, sFileName, nNum); \r
+ if (i == 0) {\r
+ gaFileMapping[i].nTotal = nNum;\r
+ }\r
+ else {\r
+ gaFileMapping[i].nTotal = nNum + gaFileMapping[i - 1].nTotal;\r
+ }\r
+}\r
+\r
+function window_OnLoad()\r
+{\r
+ if (parent && parent != this && parent.projReady)\r
+ {\r
+ parent.projReady(gaFileMapping);\r
+ } \r
+}\r
+\r
+window.onload = window_OnLoad;\r
--- /dev/null
+<?xml version='1.0' encoding='ISO-8859-1' ?>\r
+<glossary>\r
+<chunkinfo url="whgdata0.xml" first="Cell" last="Study" num="18" />\r
+\r
+</glossary>
\ No newline at end of file
--- /dev/null
+// const strings\r
+var gIEA = new Array();\r
+function aIE()\r
+{\r
+ var len = gIEA.length;\r
+ gIEA[len] = new indexEntry(aIE.arguments);\r
+}\r
+\r
+function topic(sName, sURL)\r
+{\r
+ this.sName = sName;\r
+ this.sURL = sURL;\r
+}\r
+\r
+function indexEntry(fn_arguments) \r
+{\r
+ if (fn_arguments.length && fn_arguments.length >= 3) \r
+ {\r
+ this.nType = fn_arguments[0];\r
+ this.nPKOff = 0;\r
+ this.nNKOff = fn_arguments[1];\r
+ this.sName = fn_arguments[2];\r
+ this.aTopics = null;\r
+ var nLen = fn_arguments.length;\r
+ if (Math.floor(nLen / 2) * 2 == nLen)\r
+ {\r
+ this.sTarget = fn_arguments[3];\r
+ if (nLen > 5)\r
+ {\r
+ this.aTopics = new Array();\r
+ for (var i = 0; i < (nLen - 5)/2; i++)\r
+ {\r
+ this.aTopics[i] = new topic(fn_arguments[i * 2 + 4], fn_arguments[i * 2 + 5]);\r
+ }\r
+ }\r
+\r
+ }\r
+ else \r
+ {\r
+ if (nLen > 4) \r
+ {\r
+ this.aTopics = new Array();\r
+ for (var i = 0; i < (nLen - 4)/2; i++)\r
+ {\r
+ this.aTopics[i] = new topic(fn_arguments[i * 2 + 3], fn_arguments[i * 2 + 4]);\r
+ }\r
+ }\r
+ }\r
+ }\r
+}\r
+\r
+function getIndexTopicMappingList(nItemIndex)\r
+{\r
+ var sTopics = "";\r
+ if (gIEA.length > nItemIndex)\r
+ {\r
+ if (gIEA[nItemIndex].aTopics) \r
+ {\r
+ var i = 0;\r
+ var nLen = gIEA[nItemIndex].aTopics.length;\r
+ for (i = 0; i < nLen; i ++) \r
+ {\r
+ sTopics += "," + gIEA[nItemIndex].aTopics[i];\r
+ }\r
+ }\r
+ }\r
+ return sTopics; \r
+}\r
+\r
+function window_OnLoad()\r
+{\r
+ if (parent && parent != this) {\r
+ if (parent.putData) \r
+ {\r
+ for (var i = 0; i < gIEA.length; i ++ )\r
+ {\r
+ if (gIEA[i].nNKOff != 0 && i + gIEA[i].nNKOff + 1 < gIEA.length)\r
+ {\r
+ \r
+ gIEA[i + gIEA[i].nNKOff + 1].nPKOff = gIEA[i].nNKOff;\r
+ }\r
+ }\r
+ parent.putData(gIEA);\r
+ }\r
+ }\r
+}\r
+\r
+window.onload = window_OnLoad;
\ No newline at end of file
--- /dev/null
+<html>\r
+<head>\r
+<META HTTP-EQUIV="content-type" CONTENT="text/html; charset=iso-8859-1">\r
+</head>\r
+<body>\r
+<script language="javascript" src="whidx.js"></script>\r
+<script language="javascript">\r
+<!--\r
+\r
+-->\r
+</script>\r
+</body>\r
+</html
\ No newline at end of file
--- /dev/null
+var gaFileMapping = new Array();\r
+function fileMapping(sBK, sEK, sFileName, nNum)\r
+{\r
+ this.sBK = sBK;\r
+ this.sEK = sEK;\r
+ this.sFileName = sFileName;\r
+ this.aKs = null;\r
+ this.nNum = nNum;\r
+ this.oUsedItems = null;\r
+}\r
+\r
+\r
+function iFM(sBK, sEK, sFileName, nNum)\r
+{\r
+ var i = gaFileMapping.length;\r
+ gaFileMapping[i] = new fileMapping(sBK, sEK, sFileName, nNum); \r
+ if (i == 0) {\r
+ gaFileMapping[i].nTotal = nNum;\r
+ }\r
+ else {\r
+ gaFileMapping[i].nTotal = nNum + gaFileMapping[i - 1].nTotal;\r
+ }\r
+}\r
+\r
+function window_OnLoad()\r
+{\r
+ if (parent && parent != this && parent.projReady)\r
+ {\r
+ parent.projReady(gaFileMapping);\r
+ } \r
+}\r
+\r
+window.onload = window_OnLoad;\r
--- /dev/null
+<?xml version='1.0' encoding='ISO-8859-1' ?>\r
+<index>\r
+\r
+</index>\r
--- /dev/null
+var gTEA = new Array();\r
+function aTE()\r
+{\r
+ gTEA[gTEA.length] = new tocEntry(aTE.arguments);\r
+}\r
+\r
+function tocEntry(fn_arguments) \r
+{\r
+ if (fn_arguments.length < 3) \r
+ {\r
+ alert ("data format wrong!!!");\r
+ return;\r
+ }\r
+ \r
+ this.nType = fn_arguments[0];\r
+ this.nContents = fn_arguments[1];\r
+ this.sItemName = fn_arguments[2];\r
+ \r
+ if (this.nType == 1 || this.nType == 2 || this.nType == 16)\r
+ {\r
+ if (fn_arguments.length > 3)\r
+ {\r
+ this.sItemURL = fn_arguments[3];\r
+ if (fn_arguments.length > 4)\r
+ {\r
+ this.sTarget = fn_arguments[4];\r
+ if (fn_arguments.length > 5)\r
+ this.sIconRef = fn_arguments[5];\r
+ }\r
+ }\r
+ }\r
+ if (this.nType == 4 || this.nType == 8)\r
+ {\r
+ if (fn_arguments.length > 3)\r
+ {\r
+ this.sRefURL = fn_arguments[3];\r
+ if (fn_arguments.length > 4)\r
+ {\r
+ this.sItemURL = fn_arguments[4];\r
+ if (fn_arguments.length > 5)\r
+ {\r
+ this.sTarget = fn_arguments[5];\r
+ if (fn_arguments.length > 6)\r
+ this.sIconRef = fn_arguments[6];\r
+ }\r
+ }\r
+ }\r
+ }\r
+}\r
+\r
+\r
+function window_OnLoad()\r
+{\r
+ if (parent && parent != this && parent.putData) {\r
+ parent.putData(gTEA);\r
+ }\r
+}\r
+window.onload = window_OnLoad;
\ No newline at end of file
--- /dev/null
+<html>\r
+<head>\r
+<META HTTP-EQUIV="content-type" CONTENT="text/html; charset=iso-8859-1">\r
+</head>\r
+<body>\r
+<script LANGUAGE="JavaScript" SRC="whtdata.js"></script>\r
+<script language="javascript">\r
+<!--\r
+ aTE(2,0,"Welcome to SALOME","files/introduction.htm");\r
+ aTE(1,3,"Using this reference manual");\r
+ aTE(2,0,"About SALOME help system","files/about_salome_pro_help_system.htm");\r
+ aTE(2,0,"Navigating topics","files/navigating_topics.htm");\r
+ aTE(2,0,"Using left-hand tabs","files/using_left-hand_tabs.htm");\r
+ aTE(1,4,"About SALOME");\r
+ aTE(2,0,"Introduction to SALOME","files/introduction_to_salome_pro.htm");\r
+ aTE(2,0,"About SALOME architecture","files/about_salome_pro_architecture.htm");\r
+ aTE(2,0,"Installing SALOME","files/readme.html");\r
+ aTE(2,0,"Running SALOME","files/running_salome_pro.htm");\r
+ aTE(1,16,"IAPP module");\r
+ aTE(2,0,"Introduction to IAPP","files/introduction_to_iapp.htm");\r
+ aTE(2,0,"Getting started","files/getting_started2.htm");\r
+ aTE(2,0,"SALOME desktop","files/salome_pro_desktop.htm");\r
+ aTE(2,0,"Displaying/hiding toolbars","files/displaying_hiding_toolbars.htm");\r
+ aTE(1,6,"Study management");\r
+ aTE(2,0,"Creating a new study","files/creating_a_new_study.htm");\r
+ aTE(2,0,"Opening studies","files/opening_studies.htm");\r
+ aTE(2,0,"Saving and closing studies","files/saving_a_study.htm");\r
+ aTE(2,0,"Editing studies","files/editing_studies.htm");\r
+ aTE(2,0,"Displaying studies","files/displaying_studies.htm");\r
+ aTE(2,0,"Getting and setting study properties","files/getting_properties_of_the_study.htm");\r
+ aTE(2,0,"Using Object Browser","files/using_object_browser.htm");\r
+ aTE(2,0,"Using UseCase Browser","files/using_usecase_browser.htm");\r
+ aTE(2,0,"Using Registry tool","files/using_registry.htm");\r
+ aTE(2,0,"Using Catalog Generator","files/using_catalog_generator.htm");\r
+ aTE(2,0,"Setting preferences","files/setting_preferences.htm");\r
+\r
+//-->\r
+</script>\r
+</body>\r
+</html>\r
--- /dev/null
+<?xml version='1.0' encoding='ISO-8859-1' ?>\r
+<tocdata>\r
+<item name="Welcome to SALOME" url="files/introduction.htm" />\r
+<book name="Using this reference manual" >\r
+ <item name="About SALOME help system" url="files/about_salome_pro_help_system.htm" />\r
+ <item name="Navigating topics" url="files/navigating_topics.htm" />\r
+ <item name="Using left-hand tabs" url="files/using_left-hand_tabs.htm" />\r
+</book>\r
+<book name="About SALOME" >\r
+ <item name="Introduction to SALOME" url="files/introduction_to_salome_pro.htm" />\r
+ <item name="About SALOME architecture" url="files/about_salome_pro_architecture.htm" />\r
+ <item name="Installing SALOME" url="files/readme.html" />\r
+ <item name="Running SALOME" url="files/running_salome_pro.htm" />\r
+</book>\r
+<book name="IAPP module" >\r
+ <item name="Introduction to IAPP" url="files/introduction_to_iapp.htm" />\r
+ <item name="Getting started" url="files/getting_started2.htm" />\r
+ <item name="SALOME desktop" url="files/salome_pro_desktop.htm" />\r
+ <item name="Displaying/hiding toolbars" url="files/displaying_hiding_toolbars.htm" />\r
+ <book name="Study management" >\r
+ <item name="Creating a new study" url="files/creating_a_new_study.htm" />\r
+ <item name="Opening studies" url="files/opening_studies.htm" />\r
+ <item name="Saving and closing studies" url="files/saving_a_study.htm" />\r
+ <item name="Editing studies" url="files/editing_studies.htm" />\r
+ <item name="Displaying studies" url="files/displaying_studies.htm" />\r
+ <item name="Getting and setting study properties" url="files/getting_properties_of_the_study.htm" />\r
+ </book>\r
+ <item name="Using Object Browser" url="files/using_object_browser.htm" />\r
+ <item name="Using UseCase Browser" url="files/using_usecase_browser.htm" />\r
+ <item name="Using Registry tool" url="files/using_registry.htm" />\r
+ <item name="Using Catalog Generator" url="files/using_catalog_generator.htm" />\r
+ <item name="Setting preferences" url="files/setting_preferences.htm" />\r
+</book>\r
+\r
+</tocdata>\r
--- /dev/null
+<html>\r
+<head>\r
+<META HTTP-EQUIV="content-type" CONTENT="text/html; charset=iso-8859-1">\r
+</head>\r
+<body>\r
+<script LANGUAGE="JavaScript" SRC="whtoc.js"></script>\r
+<script language="javascript">\r
+<!--\r
+ setRoot("whtdata0.htm");\r
+\r
+//-->\r
+</script>\r
+</body>\r
+</html>
\ No newline at end of file
--- /dev/null
+// const strings\r
+var gaProj = new Array();\r
+var gsRoot = "";\r
+\r
+function setRoot(sRoot)\r
+{\r
+ gsRoot = sRoot\r
+}\r
+\r
+function aPE(sProjPath, sRootPath)\r
+{\r
+ gaProj[gaProj.length] = new tocProjEntry(sProjPath, sRootPath);\r
+}\r
+\r
+function tocProjEntry(sProjPath, sRootPath) \r
+{\r
+ this.sPPath = sProjPath;\r
+ this.sRPath = sRootPath;\r
+}\r
+\r
+\r
+function window_OnLoad()\r
+{\r
+ if (parent && parent != this && parent.projReady) {\r
+ parent.projReady(gsRoot, gaProj);\r
+ }\r
+}\r
+window.onload = window_OnLoad;
\ No newline at end of file
--- /dev/null
+<?xml version='1.0' encoding='ISO-8859-1' ?>\r
+<toc root="whtdata0.xml">\r
+\r
+</toc>\r
--- /dev/null
+<html>\r
+<head>\r
+<title>Search Result</title>\r
+<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
+<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">\r
+<meta name "description" content="WebHelp 2002">\r
+<base target="bsscright">\r
+<script language="javascript" src="whver.js"></script>\r
+<script language="javascript1.2" src="whmozemu.js"></script>\r
+<script language="javascript1.2" src="whutils.js"></script>\r
+<script language="javascript1.2" src="whmsg.js"></script>\r
+<script language="javascript1.2" src="whproxy.js"></script>\r
+<script language="javascript1.2" src="whlang.js"></script>\r
+<script language="javascript1.2" src="whfhost.js"></script>\r
+<script language="javascript1.2">\r
+<!--\r
+if(window.gbWhFHost)\r
+{\r
+ setBackgroundcolor("White"); \r
+ \r
+ setFont("Normal", "Tahoma","8pt","Black","Normal","Normal","none");\r
+ setFont("Error", "Tahoma","8pt","Black","Normal","Normal","none");\r
+ setFont("Hover", "Tahoma","8pt","Navy","Normal","Normal","underline");\r
+ setActiveBgColor("Silver");\r
+ \r
+ \r
+ FtsWriteClassStyle();\r
+}\r
+else\r
+ document.location.reload();\r
+//-->\r
+</script>\r
+</head>\r
+<body topmargin="2" leftmargin="2" marginwidth="0" marginheight="0" bgproperties="fixed" scroll="auto" bgcolor="white">\r
+</body>\r
+</html>\r
+\r
--- /dev/null
+<html>\r
+<head>\r
+<title>Search Frame</TITLE>\r
+<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
+<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">\r
+<meta name "description" content="WebHelp 2002">\r
+</head>\r
+<script language="javascript" src="whver.js"></script>\r
+<script language="javascript1.2" src="whproxy.js"></script>\r
+<script language="javascript1.2" src="whmsg.js"></script>\r
+<script LANGUAGE="javascript1.2">\r
+<!--\r
+var gbIndexLayerInit = false;\r
+var strWrite="";\r
+if (window.gbWhVer&&window.gbWhProxy&&window.gbWhMsg)\r
+{\r
+ if (gbMac)\r
+ strWrite="<FRAMESET ROWS='45,100%' framespacing=0 frameborder=0>";\r
+ else\r
+ strWrite="<FRAMESET ROWS='60,100%' framespacing=0 frameborder=0>";\r
+ strWrite +="<FRAME SRC='whfform.htm' title='search form frame' name='ftsform' noresize='yes' scrolling='no'>";\r
+ strWrite +="<FRAME SRC='whfbody.htm' title='search result frame' name='ftsbody' scrolling='yes'>";\r
+ strWrite +="</FRAMESET>";\r
+ document.write(strWrite);\r
+}\r
+else\r
+ document.location.reload();\r
+//-->\r
+</script>\r
+</html>\r
--- /dev/null
+<html>\r
+<head>\r
+<title>Search Form</title>\r
+<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
+<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">\r
+<meta name "description" content="WebHelp 2002">\r
+</head>\r
+<style>\r
+<!--\r
+body {margin:0;}\r
+-->\r
+</style>\r
+<body bgcolor="#c0c0c0">\r
+<script language="javascript" src="whver.js"></script>\r
+<script language="javascript1.2" src="whmsg.js"></script>\r
+<script language="javascript1.2" src="whproxy.js"></script>\r
+<script language="javascript1.2" src="whutils.js"></script>\r
+<script language="javascript1.2" src="whform.js"></script>\r
+<script language="javascript1.2">\r
+<!--\r
+var gstrInput = "";\r
+function ftsLookup(bCR)\r
+{\r
+ if (bCR)\r
+ {\r
+ var strInput = document.FtsInputForm.keywordField.value.toUpperCase();\r
+ if (strInput != "") {\r
+ var oMsg = new whMessage(WH_MSG_SEARCHFTSKEY, this, 1, strInput);\r
+ if (!SendMessage(oMsg))\r
+ {\r
+ gstrInput = strInput;\r
+ }\r
+ else\r
+ gstrInput = "";\r
+ }\r
+\r
+ if (gbMac) {\r
+ document.FtsInputForm.keywordField.focus();\r
+ }\r
+ }\r
+ return;\r
+}\r
+\r
+function beforeInit()\r
+{\r
+ var oParam = new Object();\r
+ oParam.sValue = "";\r
+ var oMsg = new whMessage(WH_MSG_GETSEARCHS, this, 1, oParam);\r
+ if (SendMessage(oMsg))\r
+ {\r
+ if (oParam.sValue != "" && oParam.sValue != "- Search -")\r
+ {\r
+ document.FtsInputForm.keywordField.value = oParam.sValue;\r
+ gfunLookUp(true);\r
+ }\r
+ }\r
+ init(); \r
+}\r
+\r
+function window_unload()\r
+{\r
+ UnRegisterListener2(this, WH_MSG_SHOWTOC);\r
+ UnRegisterListener2(this, WH_MSG_SHOWIDX);\r
+ UnRegisterListener2(this, WH_MSG_SHOWFTS);\r
+ UnRegisterListener2(this, WH_MSG_SHOWGLO);\r
+ UnRegisterListener2(this, WH_MSG_SEARCHTHIS);\r
+ UnRegisterListener2(this, WH_MSG_BACKUPSEARCH);\r
+}\r
+\r
+function onSendMessage(oMsg)\r
+{\r
+ if (oMsg.nMessageId == WH_MSG_SHOWFTS)\r
+ {\r
+ document.FtsInputForm.keywordField.focus();\r
+ }\r
+ else if (oMsg.nMessageId == WH_MSG_SHOWIDX ||\r
+ oMsg.nMessageId == WH_MSG_SHOWTOC || \r
+ oMsg.nMessageId == WH_MSG_SHOWGLO)\r
+ {\r
+ document.FtsInputForm.keywordField.blur();\r
+ }\r
+ else if (oMsg.nMessageId == WH_MSG_SEARCHTHIS)\r
+ {\r
+ if (oMsg.oParam != "- Search -")\r
+ {\r
+ document.FtsInputForm.keywordField.value = oMsg.oParam;\r
+ gfunLookUp(true);\r
+ }\r
+ }\r
+ else if (oMsg.nMessageId == WH_MSG_BACKUPSEARCH)\r
+ {\r
+ if (gstrInput)\r
+ {\r
+ oMsg.oParam = gstrInput;\r
+ gstrInput = "";\r
+ return false;\r
+ }\r
+ }\r
+ return true;\r
+}\r
+\r
+if (window.gbWhForm)\r
+{\r
+ RegisterListener2(this, WH_MSG_SHOWTOC);\r
+ RegisterListener2(this, WH_MSG_SHOWIDX);\r
+ RegisterListener2(this, WH_MSG_SHOWFTS);\r
+ RegisterListener2(this, WH_MSG_SHOWGLO);\r
+ RegisterListener2(this, WH_MSG_SEARCHTHIS);\r
+ RegisterListener2(this, WH_MSG_BACKUPSEARCH);\r
+ gfunLookUp = ftsLookup;\r
+ gfunInit = null;\r
+ gstrFormName = "FtsInputForm"\r
+ gsTitle = "Type in the word(s) to search for:";\r
+ gsTitle = "Type in the word(s) to search for:";\r
+ setGoImage1("wht_go.gif");\r
+ setBackgroundcolor("White");\r
+ \r
+ setBtnType("image");\r
+ \r
+ \r
+ \r
+ setGoText("Go");\r
+ setFont("Title", "Tahoma","8pt","Navy","Normal","Normal","none");\r
+ \r
+ \r
+ document.write(getFormHTML());\r
+ writeFormStyle();\r
+ window.onload = beforeInit;\r
+ window.onunload=window_unload;\r
+}\r
+else\r
+ document.location.reload();\r
+//-->\r
+</script>\r
+</body>\r
+</html>
\ No newline at end of file
--- /dev/null
+var gsSK2=null;\r
+var gsSK=null;\r
+var gsFtsBreakChars="\t\r\n\"\\ .,!@#$%^&*()~'`:;<>?/{}[]|+-=\x85\x92\x93\x94\x95\x96\x97\x99\xA9\xAE\xB7";\r
+var gnCLF=0;\r
+var gsHelpCannotSearch="Cannot search for that phrase.";\r
+var gsNoTopics="No Topics Found.";\r
+var gsLoadingDivID="LoadingDiv";\r
+var gsLoadingMsg="Loading data, please wait...";\r
+var gsSearchMsg="Searching...";\r
+var gsResultDivID="ResultDiv";\r
+var gaaFCD=new Array();\r
+var gaaFTCD=new Array();\r
+var goCF=null;\r
+var goCTF=null;\r
+var gaTI=null;\r
+var gnCurrentOp=0;\r
+var gbNot=false;\r
+var gbReady=false;\r
+var gnLoadFts=1;\r
+var gnCacheLimits=5;\r
+var gaCCD=new Array();\r
+var gbXML=false;\r
+var gaData=new Array();\r
+var gsBgColor="#ffffff";\r
+var gsBgImage="";\r
+var gsMargin="0pt";\r
+var gsIndent="0pt";\r
+var gsCheckKey=null;\r
+var gnIndexNum=0;\r
+var gaFtsContentsCon=null;\r
+var gaTopicCheckInfo=null;\r
+var gnTopicCheck=0;\r
+var goFont=null;\r
+var goErrFont=null;\r
+var goHoverFont=null;\r
+var gsABgColor="#cccccc";\r
+var gbWhFHost=false;\r
+\r
+function setBackground(sBgImage)\r
+{\r
+ gsBgImage=sBgImage;\r
+}\r
+\r
+function setBackgroundcolor(sBgColor)\r
+{\r
+ gsBgColor=sBgColor;\r
+}\r
+\r
+function setFont(sType,sFontName,sFontSize,sFontColor,sFontStyle,sFontWeight,sFontDecoration)\r
+{\r
+ var vFont=new whFont(sFontName,sFontSize,sFontColor,sFontStyle,sFontWeight,sFontDecoration);\r
+ if(sType=="Normal")\r
+ goFont=vFont;\r
+ else if(sType=="Error")\r
+ goErrFont=vFont;\r
+ else if(sType=="Hover")\r
+ goHoverFont=vFont;\r
+}\r
+\r
+function setActiveBgColor(sBgColor)\r
+{\r
+ gsABgColor=sBgColor;\r
+}\r
+\r
+function setMargin(sMargin)\r
+{\r
+ gsMargin=sMargin;\r
+}\r
+\r
+function setIndent(sIndent)\r
+{\r
+ gsIndent=sIndent;\r
+}\r
+\r
+function updateCache(oCF)\r
+{\r
+ var len=gaCCD.length;\r
+ if(len<gnCacheLimits*gnCLF)\r
+ gaCCD[len]=oCF;\r
+ else{\r
+ gaCCD[0].aTopics=null;\r
+ gaCCD[0].aFtsKeys=null;\r
+ removeItemFromArray(gaCCD,0);\r
+ gaCCD[len-1]=oCF;\r
+ }\r
+}\r
+\r
+function addFtsInfo(sPPath,sDPath,sFtsFile)\r
+{\r
+ gaData[gaData.length]=new ftsInfo(sPPath,sDPath,sFtsFile);\r
+}\r
+\r
+function putDataXML(xmlDoc,sDocPath)\r
+{\r
+ if(gnLoadFts==1)\r
+ {\r
+ var node=xmlDoc.lastChild;\r
+ if(node)\r
+ {\r
+ var oChild=node.firstChild;\r
+ var aFCD=new Array();\r
+ var aFTCD=new Array();\r
+ while(oChild)\r
+ {\r
+ if(oChild.nodeName=="chunkinfo")\r
+ {\r
+ var sURL=oChild.getAttribute("url");\r
+ var sFirst=oChild.getAttribute("first");\r
+ var sLast=oChild.getAttribute("last");\r
+ if(sURL&&sFirst&&sLast)\r
+ {\r
+ item=new Object();\r
+ item.sStartKey=sFirst;\r
+ item.sEndKey=sLast;\r
+ item.sFileName=sURL;\r
+ aFCD[aFCD.length]=item;\r
+ }\r
+ }\r
+ else if(oChild.nodeName=="tchunkinfo")\r
+ {\r
+ var sURL=oChild.getAttribute("url");\r
+ var nB=parseInt(oChild.getAttribute("first"));\r
+ var nE=parseInt(oChild.getAttribute("last"));\r
+ if(sURL&&sFirst&&sLast)\r
+ {\r
+ item=new Object();\r
+ item.nBegin=nB;\r
+ item.nEnd=nE;\r
+ item.sFileName=sURL;\r
+ aFTCD[aFTCD.length]=item;\r
+ }\r
+\r
+ }\r
+ oChild=oChild.nextSibling;\r
+ }\r
+ ftsReady(aFCD,aFTCD);\r
+ }\r
+ }\r
+ else if(gnLoadFts==3)\r
+ {\r
+ var node=xmlDoc.lastChild;\r
+ if(node)\r
+ {\r
+ var oChild=node.firstChild;\r
+ var aTopics=new Array();\r
+ while(oChild)\r
+ {\r
+ if(oChild.nodeName=="topic")\r
+ {\r
+ var name=oChild.getAttribute("name");\r
+ var sURL=oChild.getAttribute("url");\r
+ if(name&&name.length>0&&sURL)\r
+ {\r
+ var topic=new Object();\r
+ topic.sTopicTitle=name;\r
+ topic.sTopicURL=sURL;\r
+ aTopics[aTopics.length]=topic;\r
+ }\r
+ }\r
+ oChild=oChild.nextSibling;\r
+ }\r
+ putFtsTData(aTopics);\r
+ }\r
+ }\r
+ else if(gnLoadFts==2)\r
+ {\r
+ var node=xmlDoc.lastChild;\r
+ if(node)\r
+ {\r
+ var oChild=node.firstChild;\r
+ var aFtsContents=new Array();\r
+ while(oChild)\r
+ {\r
+ if(oChild.nodeName=="key")\r
+ {\r
+ var name=oChild.getAttribute("name");\r
+ if(name&&name.length>0)\r
+ {\r
+ var item=new Object();\r
+ item.sItemName=name;\r
+ aFtsContents[aFtsContents.length]=item;\r
+ var oChildChild=oChild.firstChild;\r
+ while(oChildChild)\r
+ {\r
+ if(oChildChild.nodeName=="#text")\r
+ {\r
+ var sIDs=oChildChild.nodeValue;\r
+ if(sIDs)\r
+ {\r
+ var nBPos=0;\r
+ do\r
+ {\r
+ var nPos=sIDs.indexOf(",",nBPos);\r
+ var sID=null;\r
+ if(nPos!=-1)\r
+ sID=sIDs.substring(nBPos,nPos);\r
+ else\r
+ sID=sIDs.substring(nBPos);\r
+\r
+ if(sID)\r
+ {\r
+ var id=parseInt(sID);\r
+ if(!isNaN(id))\r
+ {\r
+ if(!item.aTopics)\r
+ item.aTopics=new Array();\r
+ item.aTopics[item.aTopics.length]=id;\r
+ }\r
+ }\r
+ nBPos=nPos+1;\r
+ }while(nBPos!=0&&nBPos<sIDs.length);\r
+ }\r
+ }\r
+ oChildChild=oChildChild.nextSibling;\r
+ }\r
+ }\r
+ }\r
+ oChild=oChild.nextSibling;\r
+ }\r
+ putFtsWData(aFtsContents);\r
+ }\r
+ }\r
+}\r
+\r
+function ftsInfo(sPPath,sDPath,sFtsFile)\r
+{\r
+ this.sPPath=sPPath;\r
+ this.sDPath=sDPath;\r
+ this.sFtsFile=sFtsFile;\r
+}\r
+\r
+function window_OnLoad()\r
+{\r
+ if(gsBgImage&&gsBgImage.length>0)\r
+ {\r
+ document.body.background=gsBgImage;\r
+ }\r
+ if(gsBgColor&&gsBgColor.length>0)\r
+ {\r
+ document.body.bgColor=gsBgColor;\r
+ }\r
+ writeResultDiv();\r
+ loadFts();\r
+ var oMsg=new whMessage(WH_MSG_SHOWFTS,this,1,null)\r
+ SendMessage(oMsg);\r
+}\r
+\r
+function writeResultDiv()\r
+{\r
+ var sHTML="<div id=\""+gsResultDivID+"\" style=\"POSITION:absolute;\"></div>";\r
+ document.body.insertAdjacentHTML("beforeEnd",sHTML);\r
+}\r
+\r
+function loadFts()\r
+{\r
+ if(!gbReady)\r
+ {\r
+ var oResMsg=new whMessage(WH_MSG_GETPROJINFO,this,1,null);\r
+ if(SendMessage(oResMsg)&&oResMsg.oParam)\r
+ {\r
+ gbReady=true;\r
+ var oProj=oResMsg.oParam;\r
+ var aProj=oProj.aProj;\r
+ gbXML=oProj.bXML;\r
+ if(aProj.length>0)\r
+ {\r
+ var sLangId=aProj[0].sLangId;\r
+ for(var i=0;i<aProj.length;i++)\r
+ {\r
+ if(aProj[i].sFts!=null&&aProj[i].sFts!=""&&aProj[i].sLangId==sLangId)\r
+ {\r
+ addFtsInfo(aProj[i].sPPath,aProj[i].sDPath,aProj[i].sFts);\r
+ }\r
+ }\r
+ }\r
+ loadFD();\r
+\r
+ } \r
+ }\r
+}\r
+\r
+function loadFD()\r
+{\r
+ if(gnCLF<gaData.length)\r
+ {\r
+ gnLoadFts=1;\r
+ loadData2(gaData[gnCLF].sPPath+gaData[gnCLF].sDPath+gaData[gnCLF].sFtsFile);\r
+ }\r
+ else \r
+ {\r
+ var oMsg = new whMessage(WH_MSG_BACKUPSEARCH, this, 1, null);\r
+ if (SendMessage(oMsg))\r
+ {\r
+ if (oMsg.oParam)\r
+ {\r
+ gsSK=oMsg.oParam.toLowerCase();\r
+ findFTSKey();\r
+ }\r
+ }\r
+ RegisterListener2(this, WH_MSG_SEARCHFTSKEY);\r
+ }\r
+}\r
+\r
+function loadData2(sFile)\r
+{\r
+ if(gbXML)\r
+ loadDataXML(sFile);\r
+ else\r
+ loadData(sFile);\r
+}\r
+\r
+function findFTSKey()\r
+{\r
+ gaTI=new Array();\r
+ gnCurrentOp=0;\r
+ gbNot=false;\r
+ displayMsg(gsSearchMsg);\r
+ if(gsSK!="")\r
+ findOneKey();\r
+}\r
+\r
+function findOneKey()\r
+{\r
+ if(gsSK && gsSK!="")\r
+ {\r
+ var sInput=gsSK;\r
+ var sCW="";\r
+ var nS=-1;\r
+ var nSep=-1;\r
+ for(var nChar=0;nChar<gsFtsBreakChars.length;nChar++){\r
+ var nFound=sInput.indexOf(gsFtsBreakChars.charAt(nChar));\r
+ if((nFound!=-1)&&((nS==-1)||(nFound<nS))){\r
+ nS=nFound;\r
+ nSep=nChar;\r
+ }\r
+ }\r
+ if(nS==-1){\r
+ sCW=sInput;\r
+ sInput="";\r
+ }else{\r
+ sCW=sInput.substring(0,nS);\r
+ sInput=sInput.substring(nS+1);\r
+ }\r
+\r
+ gsSK=sInput;\r
+ \r
+ if((sCW=="or")||((nSep>=0)&&(gsFtsBreakChars.charAt(nSep)=="|"))){\r
+ gnCurrentOp=0;\r
+ gbNot=false;\r
+ }else if((sCW=="and")||((nSep>=0)&&(gsFtsBreakChars.charAt(nSep)=="&"))){\r
+ gnCurrentOp=1;\r
+ gbNot=false;\r
+ }else if((sCW=="not")||\r
+ ((nSep>=0)&&(gsFtsBreakChars.charAt(nSep)=="~"))){\r
+ gbNot=!gbNot;\r
+ }else if(sCW!=""&&!IsStopWord(sCW,gaFtsStop)){\r
+ var sCurrentStem=GetStem(sCW);\r
+ gsCW=sCurrentStem;\r
+ ftsFindKeyword();\r
+ return;\r
+ }\r
+ findOneKey();\r
+ return;\r
+ }\r
+ else{\r
+ displayTopics();\r
+ checkAgain();\r
+ }\r
+}\r
+\r
+function checkAgain()\r
+{\r
+ gsSK=gsSK2;\r
+ gsSK2=null;\r
+ if(gsSK!=null)\r
+ setTimeout("findFTSKey();",1);\r
+}\r
+\r
+function displayTopics()\r
+{\r
+ var sHTML="";\r
+ var sLine="";\r
+ for(var i=0;i<gaTI.length;i++){\r
+ sLine+="<dt><nobr><a href='"+_textToHtml(gaTI[i].sTopicURL)+"'>"+_textToHtml(gaTI[i].sTopicTitle)+"</a></nobr></dt>";\r
+ if(i>>4<<4==i)\r
+ {\r
+ sHTML+=sLine;\r
+ sLine="";\r
+ }\r
+ }\r
+ if(sLine.length>0)\r
+ sHTML+=sLine;\r
+\r
+ if(sHTML.length==0)\r
+ sHTML="<P>"+gsNoTopics+"</P>"\r
+ else\r
+ sHTML="<dl>"+sHTML+"</dl>";\r
+\r
+ var resultDiv=getElement(gsResultDivID);\r
+ if(resultDiv)\r
+ resultDiv.innerHTML=sHTML;\r
+}\r
+\r
+function displayMsg(sErrorMsg)\r
+{\r
+ var sHTML="<P>"+sErrorMsg+"</P>";\r
+\r
+ var resultDiv=getElement(gsResultDivID);\r
+ if(resultDiv)\r
+ resultDiv.innerHTML=sHTML;\r
+}\r
+\r
+function ftsFindKeyword()\r
+{\r
+ var sKey=gsCW;\r
+ var bNeedLoad=false;\r
+ var aFtsContentsCon=null;\r
+ var s=0;\r
+ if(sKey==null) return;\r
+ if(!gsCheckKey||sKey!=gsCheckKey||gnIndexNum==0)\r
+ {\r
+ aFtsContentsCon=new Array();\r
+ gnCheck=0;\r
+ gsCheckKey=sKey;\r
+ gnTopicCheck=0;\r
+ gaTopicCheckInfo=null;\r
+ }\r
+ else{\r
+ s=gnIndexNum;\r
+ aFtsContentsCon=gaFtsContentsCon;\r
+ }\r
+ for(var i=gnCheck;i<gaaFCD.length;i++)\r
+ {\r
+ var oCF=getChunkedFts(i,sKey);\r
+ if(oCF)\r
+ {\r
+ if(!oCF.aFtsKeys&&oCF.sFileName!=null)\r
+ {\r
+ bNeedLoad=true;\r
+ oCF.nProjId=i;\r
+ goCF=oCF;\r
+ gnIndexNum=s;\r
+ gnCheck=i;\r
+ gaFtsContentsCon=aFtsContentsCon;\r
+ gnLoadFts=2;\r
+ beginLoading();\r
+ loadData2(gaData[i].sPPath+gaData[i].sDPath+oCF.sFileName);\r
+ break;\r
+ }\r
+ else{\r
+ aFtsContentsCon[s++]=oCF;\r
+ }\r
+ }\r
+ }\r
+ if(!bNeedLoad)\r
+ {\r
+ var aTI=gaTopicCheckInfo;\r
+ for(var m=gnTopicCheck;m<aFtsContentsCon.length;m++)\r
+ {\r
+ var aTIPart=getTopics(aFtsContentsCon[m],sKey);\r
+ if(aTIPart==null)\r
+ {\r
+ gnCheck=gaaFCD.length;\r
+ gnTopicCheck=m;\r
+ gaTopicCheckInfo=aTI;\r
+ gaFtsContentsCon=aFtsContentsCon;\r
+ return;\r
+ }\r
+ if(m==0)\r
+ aTI=aTIPart;\r
+ else\r
+ aTI=mergeTopics(aTI,aTIPart);\r
+ }\r
+ if(mergewithPreviousResult(aTI))\r
+ findOneKey();\r
+ else\r
+ checkAgain();\r
+ }\r
+}\r
+\r
+function mergewithPreviousResult(aTI)\r
+{\r
+ if(aTI!=null&&aTI.length!=0)\r
+ {\r
+ var nNumTopics=aTI.length;\r
+ if(gnCurrentOp==0){\r
+ if(gbNot){\r
+ displayMsg(gsHelpCannotSearch);\r
+ return false;\r
+ }else{\r
+ var aLS,aSS;\r
+ if(gaTI.length>=aTI.length)\r
+ {\r
+ aLS=gaTI;\r
+ aSS=aTI;\r
+ }\r
+ else\r
+ {\r
+ aLS=aTI;\r
+ aSS=gaTI;\r
+ }\r
+ var s=0;\r
+ for(var i=0;i<aSS.length;i++)\r
+ {\r
+ var bAlreadyThere=false;\r
+ for(var j=s;j<aLS.length;j++)\r
+ {\r
+ if(aSS[i].equalTo(aLS[j]))\r
+ {\r
+ bAlreadyThere=true;\r
+ s=j;\r
+ break;\r
+ }\r
+ }\r
+ if(!bAlreadyThere)\r
+ {\r
+ insertTopic(aLS,aSS[i]);\r
+ }\r
+ }\r
+ gaTI=aLS;\r
+ }\r
+ }else if(gnCurrentOp==1){\r
+ if(gbNot){\r
+ var s=0;\r
+ for(var i=0;i<aTI.length;i++)\r
+ {\r
+ for(var j=s;j<gaTI.length;j++)\r
+ {\r
+ if(aTI[i].equalTo(gaTI[j]))\r
+ {\r
+ removeItemFromArray(gaTI,j);\r
+ s=j;\r
+ break;\r
+ }\r
+ }\r
+ }\r
+ }else{\r
+ var s=0;\r
+ for(var i=0;i<gaTI.length;i++)\r
+ {\r
+ var bFound=false;\r
+ for(var j=s;j<aTI.length;j++)\r
+ {\r
+ if(gaTI[i].equalTo(aTI[j]))\r
+ {\r
+ bFound=true;\r
+ s=j;\r
+ }\r
+ }\r
+ if(!bFound)\r
+ {\r
+ removeItemFromArray(gaTI,i);\r
+ i--;\r
+ }\r
+ } \r
+ }\r
+ }\r
+ }else{\r
+ if((gnCurrentOp==1)&&(!gbNot)){\r
+ gaTI.length=0;\r
+ }else if((gnCurrentOp==0)&&(gbNot)){\r
+ displayMsg(gsHelpCannotSearch);\r
+ return false;\r
+ }\r
+ }\r
+ return true;\r
+}\r
+\r
+function insertTopic(aTI,oTI)\r
+{\r
+ var nB=0;\r
+ var nE=aTI.length-1;\r
+ if(nE>=0)\r
+ {\r
+ var nM;\r
+ var bFound=false;\r
+ do{\r
+ nM=(nB+nE)>>1;\r
+ if(compare(aTI[nM].sTopicTitle,oTI.sTopicTitle)>0)\r
+ nE=nM-1;\r
+ else if(compare(aTI[nM].sTopicTitle,oTI.sTopicTitle)<0)\r
+ nB=nM+1;\r
+ else\r
+ {\r
+ bFound=true;\r
+ break;\r
+ }\r
+ }while(nB<=nE);\r
+ if(bFound)\r
+ insertItemIntoArray(aTI,nM,oTI);\r
+ else\r
+ {\r
+ if(compare(aTI[nM].sTopicTitle,oTI.sTopicTitle)<0)\r
+ insertItemIntoArray(aTI,nM+1,oTI);\r
+ else\r
+ insertItemIntoArray(aTI,nM,oTI);\r
+ }\r
+ }\r
+ else\r
+ aTI[0]=oTI;\r
+}\r
+\r
+function mergeTopics(aTI1,aTI2)\r
+{\r
+ var i1=0;\r
+ var i2=0;\r
+ var len1=aTI1.length;\r
+ var len2=aTI2.length;\r
+ var aTopicNew=new Array();\r
+ var i=0;\r
+ while(i1<len1||i2<len2)\r
+ {\r
+ if(i1<len1&&i2<len2)\r
+ {\r
+ if(compare(aTI1[i1].sTopicTitle,aTI2[i2].sTopicTitle)<0)\r
+ aTopicNew[i++]=aTI1[i1++];\r
+ else\r
+ aTopicNew[i++]=aTI2[i2++];\r
+ }\r
+ else if(i1<len1)\r
+ aTopicNew[i++]=aTI1[i1++];\r
+ else if(i2<len2)\r
+ aTopicNew[i++]=aTI2[i2++];\r
+ }\r
+ return aTopicNew;\r
+}\r
+\r
+function getTopics(oCF,sKey)\r
+{\r
+ var aTIPart=new Array();\r
+ if(oCF&&oCF.aFtsKeys)\r
+ {\r
+ var keys=oCF.aFtsKeys;\r
+ var nB=0;\r
+ var nE=keys.length-1;\r
+ var nM=-1;\r
+ var bFound=false;\r
+ do{\r
+ nM=(nB+nE)>>1;\r
+ if(compare(keys[nM].sItemName,sKey)>0)\r
+ nE=nM-1;\r
+ else if(compare(keys[nM].sItemName,sKey)<0)\r
+ nB=nM+1;\r
+ else{\r
+ bFound=true;\r
+ break;\r
+ }\r
+ }while(nB<=nE);\r
+ if(bFound)\r
+ {\r
+ if(keys[nM].aTopics)\r
+ {\r
+ for(var i=0;i<keys[nM].aTopics.length;i++)\r
+ {\r
+ var oTC=getTopicChunk(gaaFTCD[oCF.nProjId],keys[nM].aTopics[i]);\r
+ if(oTC.aTopics)\r
+ {\r
+ aTIPart[aTIPart.length]=\r
+ new topicInfo(oTC.aTopics[keys[nM].aTopics[i]-oTC.nBegin].sTopicTitle,\r
+ gaData[oCF.nProjId].sPPath+oTC.aTopics[keys[nM].aTopics[i]-oTC.nBegin].sTopicURL);\r
+ }\r
+ else{\r
+ goCTF=oTC;\r
+ gnLoadFts=3;\r
+ beginLoading();\r
+ loadData2(gaData[oCF.nProjId].sPPath+gaData[oCF.nProjId].sDPath+oTC.sFileName);\r
+ return null;\r
+ }\r
+ }\r
+ }\r
+ }\r
+ }\r
+ return aTIPart;\r
+}\r
+\r
+function getTopicChunk(aFTCD,nTopicId)\r
+{\r
+ if(aFTCD&&aFTCD.length)\r
+ {\r
+ var nB=0;\r
+ var nE=aFTCD.length-1;\r
+ var nM=-1;\r
+ var bFound=false;\r
+ do{\r
+ nM=(nB+nE)>>1;\r
+ if(aFTCD[nM].nBegin>nTopicId)\r
+ nE=nM-1;\r
+ else if(aFTCD[nM].nEnd<nTopicId)\r
+ nB=nM+1;\r
+ else{\r
+ bFound=true;\r
+ break;\r
+ }\r
+ }while(nB<=nE);\r
+ if(bFound)\r
+ return aFTCD[nM];\r
+ }\r
+ return null;\r
+}\r
+\r
+function endLoading()\r
+{\r
+ var oDiv=getElement(gsLoadingDivID);\r
+ if(oDiv)\r
+ oDiv.style.visibility="hidden";\r
+}\r
+\r
+function beginLoading()\r
+{\r
+ var oDiv=getElement(gsLoadingDivID);\r
+ if(!oDiv)\r
+ {\r
+ document.body.insertAdjacentHTML("afterBegin",writeLoadingDiv());\r
+ oDiv=getElement(gsLoadingDivID);\r
+ }\r
+ \r
+ if(oDiv)\r
+ {\r
+ oDiv.style.top=document.body.scrollTop;\r
+ oDiv.style.visibility="visible";\r
+ }\r
+}\r
+\r
+function writeLoadingDiv(nIIdx)\r
+{\r
+ return "<div id=\""+gsLoadingDivID+"\" style=\"position:absolute;top:0;left:0;z-index:600;visibility:hidden;padding-left:4px;background-color:ivory;border-width:1;border-style:solid;border-color:black;width:150px;\">"+gsLoadingMsg+"</div>";\r
+}\r
+\r
+function topicInfo(sTopicTitle,sTopicURL)\r
+{\r
+ this.sTopicTitle=sTopicTitle;\r
+ this.sTopicURL=sTopicURL;\r
+ this.equalTo=function(oTI)\r
+ {\r
+ return ((this.sTopicTitle==oTI.sTopicTitle)&&\r
+ (this.sTopicURL==oTI.sTopicURL));\r
+ }\r
+}\r
+\r
+function getChunkedFts(nIndex,sKey)\r
+{\r
+ var oCF=null;\r
+ if(nIndex<gaaFCD.length)\r
+ {\r
+ var len=gaaFCD[nIndex].length;\r
+ if(len>0)\r
+ {\r
+ var nB=0;\r
+ var nE=len-1;\r
+ var bFound=false;\r
+ do{\r
+ var nM=(nB+nE)>>1;\r
+ if(compare(sKey,gaaFCD[nIndex][nM].sEndKey)>0)\r
+ {\r
+ nB=nM+1;\r
+ }\r
+ else if(compare(sKey,gaaFCD[nIndex][nM].sStartKey)<0)\r
+ {\r
+ nE=nM-1;\r
+ }\r
+ else{\r
+ bFound=true;\r
+ break;\r
+ }\r
+ }while(nE>=nB);\r
+ if(bFound)\r
+ oCF=gaaFCD[nIndex][nM];\r
+ }\r
+ }\r
+ return oCF;\r
+}\r
+\r
+function ftsReady(aFCD,aFTCD)\r
+{\r
+ endLoading();\r
+ gaaFTCD[gnCLF]=aFTCD;\r
+ gaaFCD[gnCLF++]=aFCD;\r
+ setTimeout("loadFD();",1);\r
+}\r
+\r
+function putFtsTData(aTopics)\r
+{\r
+ endLoading();\r
+ var oCTF=goCTF;\r
+ if(oCTF)\r
+ {\r
+ oCTF.aTopics=aTopics;\r
+ setTimeout("ftsFindKeyword();",1);\r
+ }\r
+}\r
+\r
+function putFtsWData(aFtsContents)\r
+{\r
+ endLoading();\r
+ var oCF=goCF;\r
+ if(oCF)\r
+ {\r
+ updateCache(oCF);\r
+ oCF.aFtsKeys=aFtsContents;\r
+ setTimeout("ftsFindKeyword();",1);\r
+ }\r
+}\r
+\r
+function IsStopWord(sCW,aFtsStopArray)\r
+{\r
+ var nStopArrayLen=aFtsStopArray.length;\r
+ var nB=0;\r
+ var nE=nStopArrayLen-1;\r
+ var nM=0;\r
+ var bFound=false;\r
+ var sStopWord="";\r
+ while(nB<=nE){\r
+ nM=(nB+nE);\r
+ nM>>=1;\r
+ sStopWord=aFtsStopArray[nM];\r
+ if(compare(sCW,sStopWord)>0){\r
+ nB=(nB==nM)?nM+1:nM;\r
+ }else{\r
+ if(compare(sCW,sStopWord)<0){\r
+ nE=(nE==nM)?nM-1:nM;\r
+ }else{\r
+ bFound=true;\r
+ break;\r
+ }\r
+ }\r
+ }\r
+ return bFound;\r
+}\r
+\r
+function GetStem(szWord)\r
+{\r
+ if(gaFtsStem==null||gaFtsStem.length==0)return szWord;\r
+ var aStems=gaFtsStem;\r
+\r
+ var nStemPos=0;\r
+ var csStem="";\r
+ for(var iStem=0;iStem<aStems.length;iStem++){\r
+\r
+ if(aStems[iStem].length>=szWord.length-1) break;\r
+ nStemPos=szWord.lastIndexOf(aStems[iStem]);\r
+ if(nStemPos>0){\r
+ var cssub=szWord.substring(nStemPos);\r
+ if(cssub==aStems[iStem]){\r
+ csStem=szWord;\r
+ if(szWord.charAt(nStemPos-2)==szWord.charAt(nStemPos-1)){\r
+ csStem=csStem.substring(0,nStemPos-1);\r
+ }else{\r
+ csStem=csStem.substring(0,nStemPos);\r
+ }\r
+ return csStem;\r
+ }\r
+ }\r
+ }\r
+ return szWord;\r
+}\r
+\r
+function FtsWriteClassStyle()\r
+{\r
+ var sStyle="<STYLE TYPE='text/css'>\n";\r
+ if (gsBgImage)\r
+ sStyle+="body {border-top:"+gsBgColor+" 1px solid;}\n";\r
+ else\r
+ sStyle+="body {border-top:black 1px solid;}\n";\r
+ sStyle+="P {"+getFontStyle(goErrFont)+"margin-left:"+gsIndent+";margin-top:"+gsMargin+";}\n";\r
+ sStyle+="dl {"+getFontStyle(goFont)+"margin-left:"+gsIndent+";margin-top:"+gsMargin+";}\n";\r
+ sStyle+="A:link {"+getFontStyle(goFont)+"}\n";\r
+ sStyle+="A:visited {"+getFontStyle(goFont)+"}\n";\r
+ sStyle+="A:active {background-color:"+gsABgColor+";}\n";\r
+ sStyle+="A:hover {"+getFontStyle(goHoverFont)+"}\n";\r
+ sStyle+="</STYLE>";\r
+ document.write(sStyle);\r
+}\r
+\r
+function window_Unload()\r
+{\r
+ UnRegisterListener2(this,WH_MSG_PROJECTREADY);\r
+ UnRegisterListener2(this, WH_MSG_SEARCHFTSKEY);\r
+}\r
+\r
+\r
+function onSendMessage(oMsg)\r
+{\r
+ var nMsgId=oMsg.nMessageId;\r
+ if(nMsgId==WH_MSG_SEARCHFTSKEY)\r
+ {\r
+ if(oMsg.oParam)\r
+ {\r
+ if(gsSK==null||gsSK=="")\r
+ {\r
+ gsSK=oMsg.oParam.toLowerCase();\r
+ findFTSKey();\r
+ }\r
+ else\r
+ gsSK2=oMsg.oParam.toLowerCase();\r
+ }\r
+ }\r
+ else if(nMsgId==WH_MSG_PROJECTREADY)\r
+ {\r
+ loadFts();\r
+ }\r
+ return true;\r
+}\r
+\r
+if (window.gbWhUtil&&window.gbWhLang&&window.gbWhProxy&&window.gbWhVer&&window.gbWhMsg)\r
+{\r
+ goFont=new whFont("Verdana","8pt","#000000","normal","normal","none");\r
+ goErrFont=new whFont("Verdana","8pt","#000000","normal","bold","none");\r
+ goHoverFont=new whFont("Verdana","8pt","#007f00","normal","normal","underline");\r
+ window.onload=window_OnLoad;\r
+ window.onbeforeunload=window_BUnload;\r
+ window.onunload=window_Unload;\r
+ RegisterListener2(this,WH_MSG_PROJECTREADY);\r
+ gbWhFHost=true;\r
+}\r
+else\r
+ document.location.reload();
\ No newline at end of file
--- /dev/null
+var gfunLookUp;\r
+var gbInputEnable;\r
+var gfunInit;\r
+var gstrFormName= "";\r
+var gbWithButton = false;\r
+var gsTitle="";\r
+var gsOverImage = "";\r
+var gsOutImage = "";\r
+var gsClickImage = "";\r
+var gsText = "";\r
+var gsBgColor = "#c0c0c0";\r
+var gsBgImage = "";\r
+var gbInImage = 0;\r
+var gbInputEnable = 0;\r
+\r
+var goTitleFont=null;\r
+var goInputFont=null;\r
+var goNormalFont=null;\r
+var goHoverFont=null;\r
+var gnType=-1;\r
+var gbWhForm=false;\r
+\r
+function setBackground(sBgImage)\r
+{\r
+ if (sBgImage != null && sBgImage.length > 0)\r
+ gsBgImage = sBgImage;\r
+\r
+ if (gsBgImage && gsBgImage .length > 0)\r
+ {\r
+ document.body.background = gsBgImage ;\r
+ }\r
+}\r
+\r
+function setBackgroundcolor(sBgColor)\r
+{\r
+ if (sBgColor != null && sBgColor.length > 0)\r
+ gsBgColor = sBgColor;\r
+\r
+ if (gsBgColor&& gsBgColor.length > 0)\r
+ {\r
+ document.body.bgColor = gsBgColor;\r
+ }\r
+}\r
+\r
+function setBtnType(sType)\r
+{\r
+ if (sType == "image")\r
+ {\r
+ gnType = 0;\r
+ }\r
+ else if (sType == "text")\r
+ {\r
+ gnType = 1;\r
+ }\r
+}\r
+\r
+function setGoImage1(sImage1)\r
+{\r
+ gsOutImage = sImage1;\r
+ if (gsOutImage && gsOutImage.length > 0)\r
+ gbWithButton = true;\r
+}\r
+\r
+function setGoImage2(sImage2)\r
+{\r
+ gsOverImage = sImage2;\r
+ if (gsOverImage && gsOverImage.length > 0)\r
+ gbWithButton = true;\r
+}\r
+\r
+function setGoImage3(sImage3)\r
+{\r
+ gsClickImage = sImage3;\r
+ if (gsClickImage && gsClickImage.length > 0)\r
+ gbWithButton = true;\r
+}\r
+\r
+function setGoText(sText)\r
+{\r
+ gsText = sText;\r
+ if (gsText.length > 0)\r
+ gbWithButton = true;\r
+}\r
+\r
+function setFont(sType, sFontName, sFontSize, sFontColor, sFontStyle, sFontWeight, sFontDecoration)\r
+{\r
+ var vFont = new whFont(sFontName, sFontSize, sFontColor, sFontStyle, sFontWeight, sFontDecoration);\r
+ if (sType == "Title")\r
+ {\r
+ goTitleFont = vFont;\r
+ var vFont1 = new whFont(sFontName, sFontSize, "black", sFontStyle, sFontWeight, sFontDecoration);\r
+ goInputFont=vFont1; \r
+ }\r
+ else if (sType == "Normal")\r
+ goNormalFont = vFont;\r
+ else if (sType == "Hover")\r
+ goHoverFont = vFont;\r
+}\r
+\r
+function writeFormStyle()\r
+{\r
+ var sStyle = "<style type='text/css'>";\r
+ sStyle += "p.title {" + getFontStyle(goTitleFont) + "margin-top:0;margin-bottom:0}\n";\r
+ sStyle += ".inputfield {" + getFontStyle(goInputFont) +"width:100%; }\n";\r
+ sStyle+="A:link {"+getFontStyle(goNormalFont)+"}\n";\r
+ sStyle+="A:visited {"+getFontStyle(goNormalFont)+"}\n";\r
+ sStyle +="A:hover {"+getFontStyle(goHoverFont)+"}\n";\r
+ sStyle+=".clsFormBackground{\n";\r
+ if (gsBgImage)\r
+ sStyle+="border-top:"+gsBgColor+" 1px solid;}\n";\r
+ else\r
+ sStyle+="border-top:black 1px solid;}\n";\r
+\r
+ sStyle += "</style>";\r
+ document.write(sStyle);\r
+}\r
+\r
+function lookupKeyDown()\r
+{\r
+ if (gbInputEnable)\r
+ {\r
+ if (gbIE4)\r
+ {\r
+ if (event.keyCode == 13) //Enter key\r
+ gfunLookUp(true);\r
+ else\r
+ gfunLookUp(false);\r
+ } \r
+ else\r
+ gfunLookUp(false);\r
+ }\r
+}\r
+\r
+function init()\r
+{\r
+ if (gfunInit)\r
+ gfunInit();\r
+ if (!window.Array) return;\r
+ document.onkeyup = lookupKeyDown;\r
+}\r
+\r
+function inputSubmit()\r
+{\r
+ if ((gbInputEnable && !gbIE4)|| gbInImage)\r
+ gfunLookUp(true);\r
+}\r
+\r
+function inputEnable(bEnable)\r
+{\r
+ gbInputEnable = bEnable;\r
+}\r
+\r
+function inImage(bImage)\r
+{\r
+ gbInImage = bImage;\r
+}\r
+\r
+function getFormHTML()\r
+{\r
+ var sForm = "";\r
+ sForm += "<table class=\"clsFormBackground\" width=\"100%\" cellspacing=\"0\" cellpadding=\"5\" border=\"0\">";\r
+ sForm += "<form name=\"" + gstrFormName + "\" method=\"POST\" action=\"javascript:inputSubmit()\" style=\"width:100%\">";\r
+ sForm += "<tr>";\r
+ sForm += "<td>";\r
+ sForm += "<p class=title><nobr>" + gsTitle + "</nobr><br><table width=\"100%\"><tr valign=\"middle\"><td width=\"100%\"><input class=\"inputfield\" type=\"text\" name=\"keywordField\" onfocus=\"inputEnable(1);\" onblur=\"inputEnable(0);\"></td>";\r
+ if (gbWithButton && gnType >= 0)\r
+ {\r
+ sForm += "<td><a title=\"submit button\" href=\"javascript:void(0);\" onclick=\"" + gstrFormName + ".submit(); return false;\" onfocus=\"inImage(1);\" onblur=\"inImage(0);\" onmouseup=\"onMouseUp();\" onmousedown=\"onMouseDown();\" onmouseover=\"onMouseOver();\" onmouseout=\"onMouseOut();\">"\r
+ if (gnType == 0)\r
+ {\r
+ if (!gsText)\r
+ gsText="Go";\r
+ sForm += "<img alt=\""+gsText+"\" id=\"go\" border=\"0\" src=\"" + gsOutImage + "\">";\r
+ }\r
+ else\r
+ sForm += gsText ;\r
+ sForm += "</a></td>";\r
+ }\r
+ sForm += "</tr></table></p></td></tr></form></table>";\r
+ return sForm;\r
+}\r
+\r
+function onMouseOver()\r
+{\r
+ if (getElement("go") && gsOverImage)\r
+ getElement("go").src = gsOverImage;\r
+}\r
+\r
+function onMouseDown()\r
+{\r
+ if (getElement("go") && gsClickImage)\r
+ getElement("go").src = gsClickImage;\r
+}\r
+\r
+function onMouseUp()\r
+{\r
+ if (getElement("go") && gsOutImage)\r
+ getElement("go").src = gsOutImage;\r
+}\r
+\r
+function onMouseOut()\r
+{\r
+ if (getElement("go") && gsOutImage)\r
+ getElement("go").src = gsOutImage;\r
+}\r
+\r
+if (window.gbWhUtil&&window.gbWhVer&&window.gbWhProxy&&window.gbWhMsg)\r
+{\r
+ goTitleFont=new whFont("Arial", "9pt", "#000000", "normal", "normal", "none");\r
+ goNormalFont=new whFont("Arial", "9pt", "#000000", "normal", "normal", "none");\r
+ goHoverFont=new whFont("Arial", "9pt", "#000000", "normal", "normal", "underline");\r
+ gbWhForm=true;\r
+}\r
+else\r
+ document.location.reload();
\ No newline at end of file
--- /dev/null
+// this value should be identical to the value used in whproxy.js\r
+window.whname = "wh_stub";\r
+\r
+// this file will be used by Topic and NavBar and NavPane and other components\r
+// and this file is used in child frame html.\r
+// and the whstub.js will be used in the start page.\r
+// see reference in whstub.js.\r
+// Internal Area\r
+var gbInited = false;\r
+var gWndStubPage = null;\r
+function getStubPage()\r
+{\r
+ if (!gbInited)\r
+ {\r
+ gWndStubPage = getStubPage_inter(window);\r
+ gbInited = true;\r
+ }\r
+ return gWndStubPage;\r
+}\r
+\r
+function getStubPage_inter(wCurrent) {\r
+ if (null == wCurrent.parent || wCurrent.parent == wCurrent)\r
+ return null;\r
+\r
+ if (wCurrent.parent.whname && "wh_stub" == wCurrent.parent.whname) \r
+ return wCurrent.parent;\r
+ else\r
+ if (wCurrent.parent.frames.length != 0 && wCurrent.parent != wCurrent)\r
+ return getStubPage_inter(wCurrent.parent);\r
+ else \r
+ return null;\r
+}\r
+\r
+// Public interface begin here................\r
+function RegisterListener(framename, nMessageId)\r
+{\r
+ var wStartPage = getStubPage();\r
+ if (wStartPage && wStartPage != this) {\r
+ return wStartPage.RegisterListener(framename, nMessageId);\r
+ }\r
+ else \r
+ return false;\r
+}\r
+\r
+function RegisterListener2(oframe, nMessageId)\r
+{\r
+ var wStartPage = getStubPage();\r
+ if (wStartPage && wStartPage != this) {\r
+ return wStartPage.RegisterListener2(oframe, nMessageId);\r
+ }\r
+ else \r
+ return false;\r
+}\r
+\r
+function UnRegisterListener2(oframe, nMessageId)\r
+{\r
+ var wStartPage = getStubPage();\r
+ if (wStartPage && wStartPage != this && wStartPage.UnRegisterListener2) {\r
+ return wStartPage.UnRegisterListener2(oframe, nMessageId);\r
+ }\r
+ else \r
+ return false;\r
+}\r
+\r
+function SendMessage(oMessage)\r
+{\r
+ var nMsgId = oMessage.nMessageId;\r
+ if (nMsgId == WH_MSG_ISINFRAMESET && oMessage.wSender != this)\r
+ return true;\r
+ var wStartPage = getStubPage();\r
+ if (wStartPage && wStartPage != this && wStartPage.SendMessage) \r
+ {\r
+ return wStartPage.SendMessage(oMessage);\r
+ }\r
+ else \r
+ return false;\r
+}\r
+var gbWhProxy=true;
\ No newline at end of file
--- /dev/null
+<html>\r
+<head>\r
+<title>Glossary Term</title>\r
+<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
+<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">\r
+<meta name "description" content="WebHelp 2002">\r
+<script language="javascript" src="whver.js"></script>\r
+<script language="javascript1.2" src="whmozemu.js"></script>\r
+<script language="javascript1.2" src="whutils.js"></script>\r
+<script language="javascript1.2" src="whmsg.js"></script>\r
+<script language="javascript1.2" src="whproxy.js"></script>\r
+<script language="javascript1.2" src="whlang.js"></script>\r
+<script language="javascript1.2" src="whhost.js"></script>\r
+<script language="javascript1.2" src="whghost.js"></script>\r
+<script language="javascript1.2">\r
+<!--\r
+if(window.gbWhGHost)\r
+{\r
+ setBackgroundcolor("White"); \r
+ \r
+ setFont("Normal", "Tahoma","8pt","Black","Normal","Normal","none");\r
+ setFont("Hover", "Tahoma","8pt","Navy","Normal","Normal","underline");\r
+ setActiveBgColor("Silver");\r
+ \r
+ \r
+ GloWriteClassStyle();\r
+}\r
+else\r
+ document.location.reload();\r
+//-->\r
+</script>\r
+</head>\r
+<body topmargin="2" leftmargin="2" marginwidth="0" marginheight="0" bgproperties="fixed" bgcolor="white">\r
+</body>\r
+</html>\r
--- /dev/null
+<html>\r
+<head>\r
+<title>Search Words List</title>\r
+<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
+<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">\r
+<meta name "description" content="WebHelp 2002">\r
+<base target="bsscright">\r
+<style>\r
+<!--\r
+body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}\r
+\r
+A:link {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
+A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
+A:active {background-color:#cccccc;}\r
+A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal; text-decoration:underline; }\r
+\r
+.tabs {background-color:#c0c0c0;}\r
+.ftsheader {margin-left:10pt; margin-top:0pt;}\r
+.ftsbody {margin-left:10pt; margin-top:0pt;}\r
+.inactive {color:#666666;}\r
+.ftsheader {background-color:White; } \r
+\r
+body {background-color:White; } \r
+p {color:Black; } p {font-family:Tahoma; } p {font-size:8pt; } p {font-style:Normal; } p {text-decoration:none; } \r
+A:link {color:Black; } A:link {font-family:Tahoma; } A:link {font-size:8pt; } A:link {font-style:Normal; } A:link {text-decoration:none; } \r
+A:visited {color:Black; } A:visited {font-family:Tahoma; } A:visited {font-size:8pt; } A:visited {font-style:Normal; } A:visited {text-decoration:none; } \r
+A:active {background-color:Silver; } \r
+A:hover {color:Navy; } A:hover {font-family:Tahoma; } A:hover {font-size:8pt; } A:hover {font-style:Normal; } A:hover {text-decoration:underline; } \r
+\r
+-->\r
+</style>\r
+</head>\r
+<body marginheight="0" marginwidth="0">\r
+<p class="ftsbody">\r
+\r
+\r
+<nobr><a name="bm_{"></a><a name="subkey_{N"></a>_numpy <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>_omnipymodule <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>0_glibc2 <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><a href="../files/readme.html"><b>2c</b></a> <br><nobr>3d <a href="../files/introduction_to_salome_pro.htm"><b>1</b></a> <a href="../files/salome_pro_desktop.htm"><b>2</b></a> </nobr><br>\r
+<br><br>\r
+<nobr><a name="bm_A"></a><a name="subkey_AB"></a>able <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> <a href="../files/about_salome_pro_architecture.htm"><b>3</b></a> </nobr><br><nobr>abort <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>above <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> <a href="../files/getting_properties_of_the_study.htm"><b>3</b></a> </nobr><br><a href="../files/installing_salome_pro.htm"><b>absolute</b></a> <br><nobr><a name="bms_AC"></a><a name="subkey_AC"></a>access <a href="../files/about_salome_pro_architecture.htm"><b>1</b></a> <a href="../files/using_usecase_browser.htm"><b>2</b></a> <a href="../files/using_object_browser.htm"><b>3</b></a> <a href="../files/salome_pro_desktop.htm"><b>4</b></a> </nobr><br><nobr>accidentally <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><a href="../files/copyright_notice.htm"><b>accordance</b></a> <br><nobr>according <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> <a href="../files/using_object_browser.htm"><b>3</b></a> <a href="../files/using_left-hand_tabs.htm"><b>4</b></a> <a href="../files/salome_pro_desktop.htm"><b>5</b></a> </nobr><br><nobr>accordingly <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>account <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><a href="../files/about_salome_pro_architecture.htm"><b>achieved</b></a> <br><a href="../files/about_salome_pro_architecture.htm"><b>achieves</b></a> <br><a href="../files/about_salome_pro_help_system.htm"><b>acquainted</b></a> <br><a href="../files/setting_preferences.htm"><b>actions</b></a> <br><nobr>activated <a href="../files/displaying_studies.htm"><b>1</b></a> <a href="../files/creating_a_new_study.htm"><b>2</b></a> </nobr><br><a href="../files/displaying_studies.htm"><b>activation</b></a> <br><a href="../files/creating_a_new_study.htm"><b>active</b></a> <br><a href="../files/installing_salome_pro.htm"><b>actually</b></a> <br><a name="bms_AD"></a><a name="subkey_AD"></a><a href="../files/about_salome_pro_architecture.htm"><b>adapted</b></a> <br><nobr>add <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> <a href="../files/displaying_hiding_toolbars.htm"><b>3</b></a> <a href="../files/using_usecase_browser.htm"><b>4</b></a> <a href="../files/using_catalog_generator.htm"><b>5</b></a> <a href="../files/running_salome_pro.htm"><b>6</b></a> </nobr><br><nobr>added <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><a href="../files/using_catalog_generator.htm"><b>adding</b></a> <br><a href="../files/creating_a_new_study.htm"><b>addition</b></a> <br><nobr>additional <a href="../files/readme.html"><b>1</b></a> <a href="../files/introduction_to_iapp.htm"><b>2</b></a> <a href="../files/installing_salome_pro.htm"><b>3</b></a> <a href="../files/editing_studies.htm"><b>4</b></a> <a href="../files/displaying_hiding_toolbars.htm"><b>5</b></a> <a href="../files/about_salome_pro_architecture.htm"><b>6</b></a> <a href="../files/using_object_browser.htm"><b>7</b></a> </nobr><br><a href="../files/using_usecase_browser.htm"><b>adds</b></a> <br><nobr>advanced <a href="../files/readme.html"><b>1</b></a> <a href="../files/using_catalog_generator.htm"><b>2</b></a> </nobr><br><a name="bms_AF"></a><a name="subkey_AF"></a><a href="../files/about_salome_pro_architecture.htm"><b>affecting</b></a> <br><nobr><a name="bms_AG"></a><a name="subkey_AG"></a>again <a href="../files/readme.html"><b>1</b></a> <a href="../files/navigating_topics.htm"><b>2</b></a> <a href="../files/installing_salome_pro.htm"><b>3</b></a> <a href="../files/saving_a_study.htm"><b>4</b></a> </nobr><br><nobr><a name="bms_AL"></a><a name="subkey_AL"></a>algorithm <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>algorithms <a href="../files/introduction_to_salome_pro.htm"><b>1</b></a> <a href="../files/about_salome_pro_architecture.htm"><b>2</b></a> </nobr><br><nobr>allowing <a href="../files/editing_studies.htm"><b>1</b></a> <a href="../files/displaying_studies.htm"><b>2</b></a> <a href="../files/using_usecase_browser.htm"><b>3</b></a> <a href="../files/setting_preferences.htm"><b>4</b></a> <a href="../files/salome_pro_desktop.htm"><b>5</b></a> <a href="../files/running_salome_pro.htm"><b>6</b></a> </nobr><br><nobr>allows <a href="../files/readme.html"><b>1</b></a> <a href="../files/introduction_to_salome_pro.htm"><b>2</b></a> <a href="../files/installing_salome_pro.htm"><b>3</b></a> <a href="../files/about_salome_pro_architecture.htm"><b>4</b></a> <a href="../files/using_registry.htm"><b>5</b></a> <a href="../files/using_catalog_generator.htm"><b>6</b></a> <a href="../files/setting_preferences.htm"><b>7</b></a> <a href="../files/saving_a_study.htm"><b>8</b></a> </nobr><br><a href="../files/introduction_to_salome_pro.htm"><b>along</b></a> <br><a href="../files/using_catalog_generator.htm"><b>alongside</b></a> <br><nobr>already <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><a href="../files/installing_salome_pro.htm"><b>always</b></a> <br><nobr><a name="bms_AM"></a><a name="subkey_AM"></a>amount <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr><a name="bms_AN"></a><a name="subkey_AN"></a>annoying <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>another <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> <a href="../files/about_salome_pro_architecture.htm"><b>3</b></a> <a href="../files/using_usecase_browser.htm"><b>4</b></a> <a href="../files/saving_a_study.htm"><b>5</b></a> </nobr><br><nobr>answer <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>any <a href="../files/readme.html"><b>1</b></a> <a href="../files/navigating_topics.htm"><b>2</b></a> <a href="../files/installing_salome_pro.htm"><b>3</b></a> <a href="../files/getting_properties_of_the_study.htm"><b>4</b></a> <a href="../files/displaying_hiding_toolbars.htm"><b>5</b></a> <a href="../files/copyright_notice.htm"><b>6</b></a> <a href="../files/about_salome_pro_help_system.htm"><b>7</b></a> <a href="../files/about_salome_pro_architecture.htm"><b>8</b></a> <a href="../files/using_usecase_browser.htm"><b>9</b></a> <a href="../files/running_salome_pro.htm"><b>10</b></a> </nobr><br><nobr>anything <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr><a name="bms_AP"></a><a name="subkey_AP"></a>appear <a href="../files/readme.html"><b>1</b></a> <a href="../files/getting_started2.htm"><b>2</b></a> <a href="../files/getting_properties_of_the_study.htm"><b>3</b></a> <a href="../files/copyright_notice.htm"><b>4</b></a> <a href="../files/using_registry.htm"><b>5</b></a> <a href="../files/using_catalog_generator.htm"><b>6</b></a> <a href="../files/setting_preferences.htm"><b>7</b></a> </nobr><br><a href="../files/readme.html"><b>appears</b></a> <br><a href="../files/about_salome_pro_help_system.htm"><b>applets</b></a> <br><nobr>application <a href="../files/introduction_to_iapp.htm"><b>1</b></a> <a href="../files/introduction.htm"><b>2</b></a> <a href="../files/getting_started2.htm"><b>3</b></a> <a href="../files/displaying_hiding_toolbars.htm"><b>4</b></a> <a href="../files/about_salome_pro_architecture.htm"><b>5</b></a> <a href="../files/using_object_browser.htm"><b>6</b></a> <a href="../files/using_catalog_generator.htm"><b>7</b></a> <a href="../files/setting_preferences.htm"><b>8</b></a> <a href="../files/saving_a_study.htm"><b>9</b></a> <a href="../files/salome_pro_desktop.htm"><b>10</b></a> <a href="../files/running_salome_pro.htm"><b>11</b></a> </nobr><br><nobr>applications <a href="../files/introduction_to_salome_pro.htm"><b>1</b></a> <a href="../files/about_salome_pro_architecture.htm"><b>2</b></a> <a href="../files/running_salome_pro.htm"><b>3</b></a> </nobr><br><nobr>applicative <a href="../files/introduction_to_iapp.htm"><b>1</b></a> <a href="../files/setting_preferences.htm"><b>2</b></a> </nobr><br><a href="../files/using_object_browser.htm"><b>apply</b></a> <br><nobr>approach <a href="../files/readme.html"><b>1</b></a> <a href="../files/introduction_to_salome_pro.htm"><b>2</b></a> <a href="../files/installing_salome_pro.htm"><b>3</b></a> </nobr><br><a href="../files/readme.html"><b>appropriate</b></a> <br><nobr>approximate <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><a name="bms_AR"></a><a name="subkey_AR"></a><a href="../files/readme.html"><b>ar</b></a> <br><a href="../files/about_salome_pro_architecture.htm"><b>architecture</b></a> <br><a href="../files/about_salome_pro_architecture.htm"><b>architectures</b></a> <br><a href="../files/installing_salome_pro.htm"><b>archives</b></a> <br><a href="../files/salome_pro_desktop.htm"><b>area</b></a> <br><a href="../files/readme.html"><b>argument</b></a> <br><a href="../files/readme.html"><b>arguments</b></a> <br><a href="../files/copyright_notice.htm"><b>ariane</b></a> <br><a href="../files/using_object_browser.htm"><b>arrow</b></a> <br><a name="bms_AS"></a><a name="subkey_AS"></a><a href="../files/using_object_browser.htm"><b>ascending</b></a> <br><nobr>ascii <a href="../files/setting_preferences.htm"><b>1</b></a> <a href="../files/saving_a_study.htm"><b>2</b></a> </nobr><br><nobr>ask <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>associated <a href="../files/opening_studies.htm"><b>1</b></a> <a href="../files/using_usecase_browser.htm"><b>2</b></a> <a href="../files/using_object_browser.htm"><b>3</b></a> <a href="../files/using_left-hand_tabs.htm"><b>4</b></a> </nobr><br><a name="bms_AT"></a><a name="subkey_AT"></a><a href="../files/using_object_browser.htm"><b>attribute</b></a> <br><a href="../files/using_object_browser.htm"><b>attributes</b></a> <br><nobr><a name="bms_AU"></a><a name="subkey_AU"></a>author <a href="../files/getting_properties_of_the_study.htm"><b>1</b></a> <a href="../files/using_catalog_generator.htm"><b>2</b></a> </nobr><br><nobr>auto <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> <a href="../files/setting_preferences.htm"><b>3</b></a> </nobr><br><nobr>automatically <a href="../files/readme.html"><b>1</b></a> <a href="../files/opening_studies.htm"><b>2</b></a> <a href="../files/installing_salome_pro.htm"><b>3</b></a> <a href="../files/displaying_hiding_toolbars.htm"><b>4</b></a> <a href="../files/using_usecase_browser.htm"><b>5</b></a> <a href="../files/setting_preferences.htm"><b>6</b></a> <a href="../files/saving_a_study.htm"><b>7</b></a> <a href="../files/running_salome_pro.htm"><b>8</b></a> </nobr><br><a href="../files/setting_preferences.htm"><b>autosize</b></a> <br><nobr><a name="bms_AV"></a><a name="subkey_AV"></a>available <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> <a href="../files/about_salome_pro_architecture.htm"><b>3</b></a> </nobr><br><nobr>avoid <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><a href="../files/installing_salome_pro.htm"><b>avoiding</b></a> <br><nobr><a name="bms_AW"></a><a name="subkey_AW"></a>awk <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br>\r
+<br><br>\r
+<nobr><a name="bm_B"></a><a name="subkey_B{"></a>b <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr><a name="bms_BA"></a><a name="subkey_BA"></a>back <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> <a href="../files/salome_pro_desktop.htm"><b>3</b></a> </nobr><br><a href="../files/setting_preferences.htm"><b>background</b></a> <br><a href="../files/saving_a_study.htm"><b>base</b></a> <br><nobr>based <a href="../files/introduction.htm"><b>1</b></a> <a href="../files/about_salome_pro_architecture.htm"><b>2</b></a> </nobr><br><a href="../files/readme.html"><b>bash</b></a> <br><nobr>basic <a href="../files/readme.html"><b>1</b></a> <a href="../files/salome_pro_desktop.htm"><b>2</b></a> </nobr><br><nobr>batch <a href="../files/readme.html"><b>1</b></a> <a href="../files/about_salome_pro_architecture.htm"><b>2</b></a> <a href="../files/running_salome_pro.htm"><b>3</b></a> </nobr><br><a name="bms_BE"></a><a name="subkey_BE"></a><a href="../files/installing_salome_pro.htm"><b>bear</b></a> <br><a href="../files/copyright_notice.htm"><b>bears</b></a> <br><nobr>before <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><a href="../files/installing_salome_pro.htm"><b>beginning</b></a> <br><a href="../files/using_registry.htm"><b>begins</b></a> <br><a href="../files/about_salome_pro_architecture.htm"><b>behave</b></a> <br><a href="../files/introduction.htm"><b>behavior</b></a> <br><a href="../files/installing_salome_pro.htm"><b>behaviour</b></a> <br><nobr>below <a href="../files/readme.html"><b>1</b></a> <a href="../files/navigating_topics.htm"><b>2</b></a> <a href="../files/installing_salome_pro.htm"><b>3</b></a> </nobr><br><a href="../files/using_usecase_browser.htm"><b>besides</b></a> <br><nobr><a name="bms_BI"></a><a name="subkey_BI"></a>bin <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> <a href="../files/using_catalog_generator.htm"><b>3</b></a> <a href="../files/running_salome_pro.htm"><b>4</b></a> </nobr><br><nobr>binaries <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><a name="bms_BL"></a><a name="subkey_BL"></a><a href="../files/readme.html"><b>blue</b></a> <br><a href="../files/about_salome_pro_architecture.htm"><b>blur</b></a> <br><a name="bms_BM"></a><a name="subkey_BM"></a><a href="../files/salome_pro_desktop.htm"><b>bmp</b></a> <br><a name="bms_BO"></a><a name="subkey_BO"></a><a href="../files/readme.html"><b>bold</b></a> <br><a href="../files/installing_salome_pro.htm"><b>bonus</b></a> <br><a href="../files/using_left-hand_tabs.htm"><b>book</b></a> <br><a href="../files/using_left-hand_tabs.htm"><b>books</b></a> <br><nobr>bottom <a href="../files/using_usecase_browser.htm"><b>1</b></a> <a href="../files/salome_pro_desktop.htm"><b>2</b></a> </nobr><br><nobr>box <a href="../files/readme.html"><b>1</b></a> <a href="../files/opening_studies.htm"><b>2</b></a> <a href="../files/installing_salome_pro.htm"><b>3</b></a> <a href="../files/getting_properties_of_the_study.htm"><b>4</b></a> <a href="../files/using_registry.htm"><b>5</b></a> <a href="../files/using_catalog_generator.htm"><b>6</b></a> <a href="../files/saving_a_study.htm"><b>7</b></a> </nobr><br><a name="bms_BR"></a><a name="subkey_BR"></a><a href="../files/readme.html"><b>brackets</b></a> <br><a href="../files/copyright_notice.htm"><b>brand</b></a> <br><nobr>brief <a href="../files/readme.html"><b>1</b></a> <a href="../files/navigating_topics.htm"><b>2</b></a> <a href="../files/installing_salome_pro.htm"><b>3</b></a> </nobr><br><nobr>browse <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>browser <a href="../files/opening_studies.htm"><b>1</b></a> <a href="../files/introduction_to_iapp.htm"><b>2</b></a> <a href="../files/about_salome_pro_help_system.htm"><b>3</b></a> <a href="../files/using_usecase_browser.htm"><b>4</b></a> <a href="../files/using_object_browser.htm"><b>5</b></a> <a href="../files/setting_preferences.htm"><b>6</b></a> <a href="../files/salome_pro_desktop.htm"><b>7</b></a> </nobr><br><nobr><a name="bms_BU"></a><a name="subkey_BU"></a>bug <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>build <a href="../files/readme.html"><b>1</b></a> <a href="../files/introduction_to_salome_pro.htm"><b>2</b></a> <a href="../files/installing_salome_pro.htm"><b>3</b></a> <a href="../files/using_catalog_generator.htm"><b>4</b></a> </nobr><br><a href="../files/readme.html"><b>building</b></a> <br><nobr>built <a href="../files/readme.html"><b>1</b></a> <a href="../files/introduction_to_salome_pro.htm"><b>2</b></a> <a href="../files/installing_salome_pro.htm"><b>3</b></a> </nobr><br><nobr>button <a href="../files/readme.html"><b>1</b></a> <a href="../files/opening_studies.htm"><b>2</b></a> <a href="../files/navigating_topics.htm"><b>3</b></a> <a href="../files/installing_salome_pro.htm"><b>4</b></a> <a href="../files/using_registry.htm"><b>5</b></a> <a href="../files/saving_a_study.htm"><b>6</b></a> </nobr><br><nobr>buttons <a href="../files/readme.html"><b>1</b></a> <a href="../files/navigating_topics.htm"><b>2</b></a> <a href="../files/installing_salome_pro.htm"><b>3</b></a> </nobr><br>\r
+<br><br>\r
+<a name="bm_C"></a><a name="subkey_C{"></a><a href="../files/running_salome_pro.htm"><b>c</b></a> <br><a name="bms_CA"></a><a name="subkey_CA"></a><a href="../files/introduction.htm"><b>cad</b></a> <br><a href="../files/copyright_notice.htm"><b>cade</b></a> <br><nobr>calculations <a href="../files/introduction_to_salome_pro.htm"><b>1</b></a> <a href="../files/getting_started2.htm"><b>2</b></a> </nobr><br><nobr>call <a href="../files/using_registry.htm"><b>1</b></a> <a href="../files/using_catalog_generator.htm"><b>2</b></a> <a href="../files/saving_a_study.htm"><b>3</b></a> </nobr><br><nobr>called <a href="../files/readme.html"><b>1</b></a> <a href="../files/about_salome_pro_architecture.htm"><b>2</b></a> </nobr><br><a href="../files/readme.html"><b>calling</b></a> <br><a href="../files/salome_pro_desktop.htm"><b>camera</b></a> <br><nobr>cancel <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><a href="../files/using_catalog_generator.htm"><b>capability</b></a> <br><a href="../files/readme.html"><b>caption</b></a> <br><nobr>care <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>carefully <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><a href="../files/introduction.htm"><b>cars</b></a> <br><nobr>cas <a href="../files/installing_salome_pro.htm"><b>1</b></a> <a href="../files/copyright_notice.htm"><b>2</b></a> </nobr><br><nobr>cascade <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> <a href="../files/displaying_studies.htm"><b>3</b></a> <a href="../files/copyright_notice.htm"><b>4</b></a> </nobr><br><nobr>case <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> <a href="../files/getting_properties_of_the_study.htm"><b>3</b></a> <a href="../files/about_salome_pro_architecture.htm"><b>4</b></a> <a href="../files/using_usecase_browser.htm"><b>5</b></a> <a href="../files/saving_a_study.htm"><b>6</b></a> </nobr><br><nobr>cases <a href="../files/installing_salome_pro.htm"><b>1</b></a> <a href="../files/using_usecase_browser.htm"><b>2</b></a> </nobr><br><nobr>casroot <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>cat <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><a href="../files/using_catalog_generator.htm"><b>catalog</b></a> <br><a href="../files/using_catalog_generator.htm"><b>catalogmodulegeneral</b></a> <br><a href="../files/using_catalog_generator.htm"><b>catalogmodulepersonnel</b></a> <br><nobr>catalogue <a href="../files/introduction_to_iapp.htm"><b>1</b></a> <a href="../files/running_salome_pro.htm"><b>2</b></a> </nobr><br><a href="../files/using_left-hand_tabs.htm"><b>categories</b></a> <br><br><br></p><p class="ftsbody" align="center"><a href="whlstf1.htm" target="_self" title="previous search group"><b>>></b></a>\r
+\r
+</body>\r
+\r
+</html>\r
+\r
--- /dev/null
+<html>\r
+<head>\r
+<title>Search Words List</title>\r
+<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
+<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">\r
+<meta name "description" content="WebHelp 2002">\r
+<base target="bsscright">\r
+<style>\r
+<!--\r
+body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}\r
+\r
+A:link {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
+A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
+A:active {background-color:#cccccc;}\r
+A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal; text-decoration:underline; }\r
+\r
+.tabs {background-color:#c0c0c0;}\r
+.ftsheader {margin-left:10pt; margin-top:0pt;}\r
+.ftsbody {margin-left:10pt; margin-top:0pt;}\r
+.inactive {color:#666666;}\r
+.ftsheader {background-color:White; } \r
+\r
+body {background-color:White; } \r
+p {color:Black; } p {font-family:Tahoma; } p {font-size:8pt; } p {font-style:Normal; } p {text-decoration:none; } \r
+A:link {color:Black; } A:link {font-family:Tahoma; } A:link {font-size:8pt; } A:link {font-style:Normal; } A:link {text-decoration:none; } \r
+A:visited {color:Black; } A:visited {font-family:Tahoma; } A:visited {font-size:8pt; } A:visited {font-style:Normal; } A:visited {text-decoration:none; } \r
+A:active {background-color:Silver; } \r
+A:hover {color:Navy; } A:hover {font-family:Tahoma; } A:hover {font-size:8pt; } A:hover {font-style:Normal; } A:hover {text-decoration:underline; } \r
+\r
+-->\r
+</style>\r
+</head>\r
+<body marginheight="0" marginwidth="0">\r
+<p class="ftsbody" align="center"><a href="whlstf0.htm" target="_self" title="previous search group"><b><<</b></a><br><br></p>\r
+<p class="ftsbody">\r
+<nobr><a name="bms_CH"></a><a name="subkey_CH"></a>change <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> <a href="../files/getting_properties_of_the_study.htm"><b>3</b></a> <a href="../files/copyright_notice.htm"><b>4</b></a> <a href="../files/about_salome_pro_architecture.htm"><b>5</b></a> </nobr><br><nobr>changes <a href="../files/getting_properties_of_the_study.htm"><b>1</b></a> <a href="../files/saving_a_study.htm"><b>2</b></a> </nobr><br><a href="../files/readme.html"><b>changing</b></a> <br><a href="../files/about_salome_pro_help_system.htm"><b>chapters</b></a> <br><a href="../files/readme.html"><b>charge</b></a> <br><nobr>check <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><a href="../files/readme.html"><b>check_version</b></a> <br><nobr>checkbox <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><a href="../files/installing_salome_pro.htm"><b>checkboxes</b></a> <br><nobr>checking <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>checks <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><a href="../files/using_usecase_browser.htm"><b>child</b></a> <br><nobr>choice <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>choose <a href="../files/readme.html"><b>1</b></a> <a href="../files/opening_studies.htm"><b>2</b></a> <a href="../files/installing_salome_pro.htm"><b>3</b></a> <a href="../files/getting_properties_of_the_study.htm"><b>4</b></a> <a href="../files/editing_studies.htm"><b>5</b></a> <a href="../files/displaying_studies.htm"><b>6</b></a> <a href="../files/displaying_hiding_toolbars.htm"><b>7</b></a> <a href="../files/creating_a_new_study.htm"><b>8</b></a> <a href="../files/using_registry.htm"><b>9</b></a> <a href="../files/using_catalog_generator.htm"><b>10</b></a> </nobr><br><a href="../files/using_catalog_generator.htm"><b>chosen</b></a> <br><a href="../files/setting_preferences.htm"><b>chronological</b></a> <br><nobr><a name="bms_CL"></a><a name="subkey_CL"></a>clear <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><a href="../files/salome_pro_desktop.htm"><b>clearall</b></a> <br><a href="../files/using_usecase_browser.htm"><b>clears</b></a> <br><nobr>click <a href="../files/readme.html"><b>1</b></a> <a href="../files/opening_studies.htm"><b>2</b></a> <a href="../files/navigating_topics.htm"><b>3</b></a> <a href="../files/installing_salome_pro.htm"><b>4</b></a> <a href="../files/getting_properties_of_the_study.htm"><b>5</b></a> <a href="../files/editing_studies.htm"><b>6</b></a> <a href="../files/creating_a_new_study.htm"><b>7</b></a> <a href="../files/using_usecase_browser.htm"><b>8</b></a> <a href="../files/using_registry.htm"><b>9</b></a> <a href="../files/using_object_browser.htm"><b>10</b></a> <a href="../files/using_left-hand_tabs.htm"><b>11</b></a> <a href="../files/saving_a_study.htm"><b>12</b></a> <a href="../files/salome_pro_desktop.htm"><b>13</b></a> </nobr><br><a href="../files/navigating_topics.htm"><b>clickable</b></a> <br><a href="../files/navigating_topics.htm"><b>clicked</b></a> <br><nobr>clicking <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><a href="../files/about_salome_pro_architecture.htm"><b>client</b></a> <br><nobr>close <a href="../files/readme.html"><b>1</b></a> <a href="../files/navigating_topics.htm"><b>2</b></a> <a href="../files/installing_salome_pro.htm"><b>3</b></a> <a href="../files/saving_a_study.htm"><b>4</b></a> </nobr><br><a href="../files/using_left-hand_tabs.htm"><b>closed</b></a> <br><nobr>closes <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> <a href="../files/using_left-hand_tabs.htm"><b>3</b></a> </nobr><br><nobr>closing <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> <a href="../files/saving_a_study.htm"><b>3</b></a> </nobr><br><a href="../files/about_salome_pro_architecture.htm"><b>clusters</b></a> <br><nobr><a name="bms_CO"></a><a name="subkey_CO"></a>code <a href="../files/readme.html"><b>1</b></a> <a href="../files/introduction.htm"><b>2</b></a> <a href="../files/about_salome_pro_architecture.htm"><b>3</b></a> </nobr><br><a href="../files/introduction.htm"><b>codes</b></a> <br><a href="../files/installing_salome_pro.htm"><b>coincide</b></a> <br><nobr>collect <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><a href="../files/readme.html"><b>collected</b></a> <br><nobr>collects <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><a href="../files/installing_salome_pro.htm"><b>collisions</b></a> <br><nobr>color <a href="../files/using_object_browser.htm"><b>1</b></a> <a href="../files/setting_preferences.htm"><b>2</b></a> </nobr><br><nobr>column <a href="../files/using_object_browser.htm"><b>1</b></a> <a href="../files/setting_preferences.htm"><b>2</b></a> </nobr><br><nobr>columns <a href="../files/using_registry.htm"><b>1</b></a> <a href="../files/using_object_browser.htm"><b>2</b></a> <a href="../files/setting_preferences.htm"><b>3</b></a> </nobr><br><a href="../files/salome_pro_desktop.htm"><b>combination</b></a> <br><a href="../files/introduction_to_salome_pro.htm"><b>combines</b></a> <br><nobr>comfort <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><a href="../files/readme.html"><b>comma</b></a> <br><nobr>command <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> <a href="../files/running_salome_pro.htm"><b>3</b></a> </nobr><br><a href="../files/about_salome_pro_architecture.htm"><b>commands</b></a> <br><a href="../files/copyright_notice.htm"><b>commitment</b></a> <br><nobr>common <a href="../files/readme.html"><b>1</b></a> <a href="../files/introduction_to_iapp.htm"><b>2</b></a> <a href="../files/saving_a_study.htm"><b>3</b></a> </nobr><br><a href="../files/about_salome_pro_architecture.htm"><b>compared</b></a> <br><a href="../files/using_usecase_browser.htm"><b>comparison</b></a> <br><nobr>compiled <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>compiling <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>complete <a href="../files/getting_properties_of_the_study.htm"><b>1</b></a> <a href="../files/using_registry.htm"><b>2</b></a> </nobr><br><nobr>completed <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> <a href="../files/using_left-hand_tabs.htm"><b>3</b></a> </nobr><br><nobr>complex <a href="../files/introduction.htm"><b>1</b></a> <a href="../files/about_salome_pro_architecture.htm"><b>2</b></a> </nobr><br><nobr>component <a href="../files/opening_studies.htm"><b>1</b></a> <a href="../files/introduction_to_salome_pro.htm"><b>2</b></a> <a href="../files/introduction_to_iapp.htm"><b>3</b></a> <a href="../files/editing_studies.htm"><b>4</b></a> <a href="../files/displaying_hiding_toolbars.htm"><b>5</b></a> <a href="../files/about_salome_pro_architecture.htm"><b>6</b></a> <a href="../files/using_usecase_browser.htm"><b>7</b></a> <a href="../files/using_registry.htm"><b>8</b></a> <a href="../files/using_object_browser.htm"><b>9</b></a> <a href="../files/using_catalog_generator.htm"><b>10</b></a> <a href="../files/setting_preferences.htm"><b>11</b></a> <a href="../files/saving_a_study.htm"><b>12</b></a> <a href="../files/salome_pro_desktop.htm"><b>13</b></a> </nobr><br><nobr>components <a href="../files/opening_studies.htm"><b>1</b></a> <a href="../files/navigating_topics.htm"><b>2</b></a> <a href="../files/introduction_to_salome_pro.htm"><b>3</b></a> <a href="../files/introduction_to_iapp.htm"><b>4</b></a> <a href="../files/about_salome_pro_help_system.htm"><b>5</b></a> <a href="../files/about_salome_pro_architecture.htm"><b>6</b></a> <a href="../files/using_registry.htm"><b>7</b></a> <a href="../files/using_object_browser.htm"><b>8</b></a> <a href="../files/using_catalog_generator.htm"><b>9</b></a> <a href="../files/saving_a_study.htm"><b>10</b></a> <a href="../files/salome_pro_desktop.htm"><b>11</b></a> </nobr><br><nobr>computation <a href="../files/introduction.htm"><b>1</b></a> <a href="../files/about_salome_pro_architecture.htm"><b>2</b></a> </nobr><br><nobr>computer <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>concept <a href="../files/navigating_topics.htm"><b>1</b></a> <a href="../files/about_salome_pro_architecture.htm"><b>2</b></a> </nobr><br><nobr>concerning <a href="../files/introduction.htm"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>concerns <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><a href="../files/about_salome_pro_architecture.htm"><b>conclusion</b></a> <br><a href="../files/readme.html"><b>config</b></a> <br><a href="../files/readme.html"><b>config_files</b></a> <br><a href="../files/readme.html"><b>config_redhat8_0</b></a> <br><a href="../files/introduction_to_salome_pro.htm"><b>configurable</b></a> <br><a href="../files/readme.html"><b>configuration</b></a> <br><nobr>configure <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>confirm <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><a href="../files/getting_started2.htm"><b>connected</b></a> <br><a href="../files/copyright_notice.htm"><b>connection</b></a> <br><a href="../files/salome_pro_desktop.htm"><b>consists</b></a> <br><nobr>console <a href="../files/setting_preferences.htm"><b>1</b></a> <a href="../files/salome_pro_desktop.htm"><b>2</b></a> <a href="../files/running_salome_pro.htm"><b>3</b></a> </nobr><br><a href="../files/about_salome_pro_architecture.htm"><b>constant</b></a> <br><a href="../files/introduction_to_salome_pro.htm"><b>construction</b></a> <br><a href="../files/copyright_notice.htm"><b>construed</b></a> <br><nobr>contain <a href="../files/readme.html"><b>1</b></a> <a href="../files/opening_studies.htm"><b>2</b></a> <a href="../files/installing_salome_pro.htm"><b>3</b></a> <a href="../files/using_object_browser.htm"><b>4</b></a> <a href="../files/setting_preferences.htm"><b>5</b></a> <a href="../files/salome_pro_desktop.htm"><b>6</b></a> </nobr><br><a href="../files/copyright_notice.htm"><b>contained</b></a> <br><a href="../files/running_salome_pro.htm"><b>containers</b></a> <br><nobr>containing <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> <a href="../files/using_left-hand_tabs.htm"><b>3</b></a> <a href="../files/using_catalog_generator.htm"><b>4</b></a> <a href="../files/setting_preferences.htm"><b>5</b></a> </nobr><br><nobr>contains <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> <a href="../files/getting_properties_of_the_study.htm"><b>3</b></a> <a href="../files/about_salome_pro_help_system.htm"><b>4</b></a> <a href="../files/using_registry.htm"><b>5</b></a> <a href="../files/using_object_browser.htm"><b>6</b></a> <a href="../files/salome_pro_desktop.htm"><b>7</b></a> <a href="../files/running_salome_pro.htm"><b>8</b></a> </nobr><br><a href="../files/using_left-hand_tabs.htm"><b>content</b></a> <br><nobr>contents <a href="../files/readme.html"><b>1</b></a> <a href="../files/using_left-hand_tabs.htm"><b>2</b></a> </nobr><br><nobr>context <a href="../files/displaying_hiding_toolbars.htm"><b>1</b></a> <a href="../files/using_usecase_browser.htm"><b>2</b></a> <a href="../files/using_object_browser.htm"><b>3</b></a> <a href="../files/salome_pro_desktop.htm"><b>4</b></a> </nobr><br><nobr>continue <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><a href="../files/introduction.htm"><b>contributes</b></a> <br><nobr>control <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> <a href="../files/creating_a_new_study.htm"><b>3</b></a> </nobr><br><a href="../files/salome_pro_desktop.htm"><b>convenience</b></a> <br><a href="../files/installing_salome_pro.htm"><b>convenient</b></a> <br><a href="../files/introduction_to_salome_pro.htm"><b>cooperate</b></a> <br><nobr>copied <a href="../files/copyright_notice.htm"><b>1</b></a> <a href="../files/using_usecase_browser.htm"><b>2</b></a> </nobr><br><nobr>copy <a href="../files/readme.html"><b>1</b></a> <a href="../files/editing_studies.htm"><b>2</b></a> <a href="../files/saving_a_study.htm"><b>3</b></a> <a href="../files/salome_pro_desktop.htm"><b>4</b></a> </nobr><br><a href="../files/salome_pro_desktop.htm"><b>copying</b></a> <br><nobr>copyright <a href="../files/readme.html"><b>1</b></a> <a href="../files/copyright_notice.htm"><b>2</b></a> </nobr><br><a href="../files/about_salome_pro_architecture.htm"><b>corba</b></a> <br><a href="../files/saving_a_study.htm"><b>corner</b></a> <br><a href="../files/salome_pro_desktop.htm"><b>correcting</b></a> <br><nobr>corresponding <a href="../files/readme.html"><b>1</b></a> <a href="../files/opening_studies.htm"><b>2</b></a> <a href="../files/installing_salome_pro.htm"><b>3</b></a> <a href="../files/using_left-hand_tabs.htm"><b>4</b></a> <a href="../files/running_salome_pro.htm"><b>5</b></a> </nobr><br><nobr>correspondingly <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><a href="../files/installing_salome_pro.htm"><b>corrupted</b></a> <br><a href="../files/introduction.htm"><b>cost</b></a> <br><a href="../files/introduction.htm"><b>costs</b></a> <br><nobr>coupling <a href="../files/introduction.htm"><b>1</b></a> <a href="../files/about_salome_pro_architecture.htm"><b>2</b></a> </nobr><br><a name="bms_CP"></a><a name="subkey_CP"></a><a href="../files/running_salome_pro.htm"><b>cpp</b></a> <br><nobr><a name="bms_CR"></a><a name="subkey_CR"></a>create <a href="../files/readme.html"><b>1</b></a> <a href="../files/getting_started2.htm"><b>2</b></a> <a href="../files/creating_a_new_study.htm"><b>3</b></a> <a href="../files/about_salome_pro_architecture.htm"><b>4</b></a> <a href="../files/using_usecase_browser.htm"><b>5</b></a> <a href="../files/using_catalog_generator.htm"><b>6</b></a> <a href="../files/setting_preferences.htm"><b>7</b></a> <a href="../files/saving_a_study.htm"><b>8</b></a> <a href="../files/running_salome_pro.htm"><b>9</b></a> </nobr><br><nobr>created <a href="../files/readme.html"><b>1</b></a> <a href="../files/opening_studies.htm"><b>2</b></a> <a href="../files/introduction_to_iapp.htm"><b>3</b></a> <a href="../files/creating_a_new_study.htm"><b>4</b></a> <a href="../files/about_salome_pro_help_system.htm"><b>5</b></a> <a href="../files/about_salome_pro_architecture.htm"><b>6</b></a> <a href="../files/using_usecase_browser.htm"><b>7</b></a> <a href="../files/using_object_browser.htm"><b>8</b></a> <a href="../files/setting_preferences.htm"><b>9</b></a> <a href="../files/salome_pro_desktop.htm"><b>10</b></a> <a href="../files/running_salome_pro.htm"><b>11</b></a> </nobr><br><nobr>creates <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> <a href="../files/using_usecase_browser.htm"><b>3</b></a> </nobr><br><nobr>creating <a href="../files/creating_a_new_study.htm"><b>1</b></a> <a href="../files/salome_pro_desktop.htm"><b>2</b></a> </nobr><br><nobr>creation <a href="../files/readme.html"><b>1</b></a> <a href="../files/introduction_to_iapp.htm"><b>2</b></a> <a href="../files/introduction.htm"><b>3</b></a> <a href="../files/installing_salome_pro.htm"><b>4</b></a> <a href="../files/about_salome_pro_architecture.htm"><b>5</b></a> </nobr><br><a href="../files/introduction.htm"><b>critical</b></a> <br><nobr>cross <a href="../files/navigating_topics.htm"><b>1</b></a> <a href="../files/saving_a_study.htm"><b>2</b></a> </nobr><br><nobr><a name="bms_CS"></a><a name="subkey_CS"></a>csh <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> <a href="../files/running_salome_pro.htm"><b>3</b></a> </nobr><br><a href="../files/running_salome_pro.htm"><b>cshell</b></a> <br><nobr><a name="bms_CU"></a><a name="subkey_CU"></a>current <a href="../files/getting_properties_of_the_study.htm"><b>1</b></a> <a href="../files/using_usecase_browser.htm"><b>2</b></a> <a href="../files/using_registry.htm"><b>3</b></a> <a href="../files/using_object_browser.htm"><b>4</b></a> <a href="../files/setting_preferences.htm"><b>5</b></a> <a href="../files/saving_a_study.htm"><b>6</b></a> <a href="../files/running_salome_pro.htm"><b>7</b></a> </nobr><br><nobr>currently <a href="../files/readme.html"><b>1</b></a> <a href="../files/navigating_topics.htm"><b>2</b></a> <a href="../files/installing_salome_pro.htm"><b>3</b></a> <a href="../files/editing_studies.htm"><b>4</b></a> <a href="../files/using_usecase_browser.htm"><b>5</b></a> <a href="../files/using_registry.htm"><b>6</b></a> <a href="../files/using_object_browser.htm"><b>7</b></a> <a href="../files/setting_preferences.htm"><b>8</b></a> </nobr><br><nobr>custom <a href="../files/using_usecase_browser.htm"><b>1</b></a> <a href="../files/using_catalog_generator.htm"><b>2</b></a> <a href="../files/setting_preferences.htm"><b>3</b></a> </nobr><br><a href="../files/introduction.htm"><b>customer</b></a> <br><nobr>cut <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br>\r
+<br><br>\r
+<nobr><a name="bm_D"></a><a name="subkey_D{"></a>d <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr><a name="bms_DA"></a><a name="subkey_DA"></a>data <a href="../files/readme.html"><b>1</b></a> <a href="../files/introduction_to_salome_pro.htm"><b>2</b></a> <a href="../files/introduction_to_iapp.htm"><b>3</b></a> <a href="../files/installing_salome_pro.htm"><b>4</b></a> <a href="../files/getting_started2.htm"><b>5</b></a> <a href="../files/about_salome_pro_architecture.htm"><b>6</b></a> <a href="../files/setting_preferences.htm"><b>7</b></a> <a href="../files/saving_a_study.htm"><b>8</b></a> </nobr><br><a href="../files/about_salome_pro_architecture.htm"><b>database</b></a> <br><nobr>date <a href="../files/getting_properties_of_the_study.htm"><b>1</b></a> <a href="../files/using_registry.htm"><b>2</b></a> </nobr><br><a name="bms_DE"></a><a name="subkey_DE"></a><a href="../files/copyright_notice.htm"><b>de</b></a> <br><a href="../files/using_object_browser.htm"><b>debugging</b></a> <br><a href="../files/installing_salome_pro.htm"><b>decrease</b></a> <br><nobr>default <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> <a href="../files/displaying_hiding_toolbars.htm"><b>3</b></a> <a href="../files/creating_a_new_study.htm"><b>4</b></a> <a href="../files/using_usecase_browser.htm"><b>5</b></a> <a href="../files/using_object_browser.htm"><b>6</b></a> <a href="../files/setting_preferences.htm"><b>7</b></a> <a href="../files/saving_a_study.htm"><b>8</b></a> <a href="../files/running_salome_pro.htm"><b>9</b></a> </nobr><br><nobr>define <a href="../files/readme.html"><b>1</b></a> <a href="../files/setting_preferences.htm"><b>2</b></a> </nobr><br><a href="../files/using_usecase_browser.htm"><b>defined</b></a> <br><nobr>definite <a href="../files/installing_salome_pro.htm"><b>1</b></a> <a href="../files/editing_studies.htm"><b>2</b></a> <a href="../files/displaying_hiding_toolbars.htm"><b>3</b></a> <a href="../files/creating_a_new_study.htm"><b>4</b></a> <a href="../files/about_salome_pro_architecture.htm"><b>5</b></a> <a href="../files/using_usecase_browser.htm"><b>6</b></a> <a href="../files/using_registry.htm"><b>7</b></a> <a href="../files/using_object_browser.htm"><b>8</b></a> <a href="../files/setting_preferences.htm"><b>9</b></a> <a href="../files/saving_a_study.htm"><b>10</b></a> <a href="../files/running_salome_pro.htm"><b>11</b></a> </nobr><br><nobr>definition <a href="../files/about_salome_pro_architecture.htm"><b>1</b></a> <a href="../files/using_left-hand_tabs.htm"><b>2</b></a> </nobr><br><a href="../files/using_left-hand_tabs.htm"><b>definitions</b></a> <br><a href="../files/introduction.htm"><b>demands</b></a> <br><a href="../files/readme.html"><b>dependancies</b></a> <br><a href="../files/readme.html"><b>dependencies</b></a> <br><nobr>depending <a href="../files/readme.html"><b>1</b></a> <a href="../files/setting_preferences.htm"><b>2</b></a> </nobr><br><nobr>depends <a href="../files/using_usecase_browser.htm"><b>1</b></a> <a href="../files/using_object_browser.htm"><b>2</b></a> </nobr><br><nobr>derived <a href="../files/introduction.htm"><b>1</b></a> <a href="../files/about_salome_pro_architecture.htm"><b>2</b></a> </nobr><br><a href="../files/using_object_browser.htm"><b>descending</b></a> <br><nobr>described <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> <a href="../files/copyright_notice.htm"><b>3</b></a> <a href="../files/about_salome_pro_architecture.htm"><b>4</b></a> </nobr><br><nobr>describes <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>describing <a href="../files/about_salome_pro_help_system.htm"><b>1</b></a> <a href="../files/using_catalog_generator.htm"><b>2</b></a> </nobr><br><nobr>description <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> <a href="../files/using_catalog_generator.htm"><b>3</b></a> <a href="../files/running_salome_pro.htm"><b>4</b></a> </nobr><br><nobr>descriptions <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> <a href="../files/using_catalog_generator.htm"><b>3</b></a> </nobr><br><a href="../files/introduction.htm"><b>design</b></a> <br><a href="../files/using_catalog_generator.htm"><b>desired</b></a> <br><nobr>desktop <a href="../files/readme.html"><b>1</b></a> <a href="../files/introduction_to_iapp.htm"><b>2</b></a> <a href="../files/getting_started2.htm"><b>3</b></a> <a href="../files/displaying_studies.htm"><b>4</b></a> <a href="../files/displaying_hiding_toolbars.htm"><b>5</b></a> <a href="../files/saving_a_study.htm"><b>6</b></a> <a href="../files/salome_pro_desktop.htm"><b>7</b></a> </nobr><br><a href="../files/navigating_topics.htm"><b>destination</b></a> <br><nobr>destined <a href="../files/getting_started2.htm"><b>1</b></a> <a href="../files/using_usecase_browser.htm"><b>2</b></a> <a href="../files/using_registry.htm"><b>3</b></a> <a href="../files/using_object_browser.htm"><b>4</b></a> <a href="../files/salome_pro_desktop.htm"><b>5</b></a> </nobr><br><a href="../files/installing_salome_pro.htm"><b>detail</b></a> <br><a href="../files/installing_salome_pro.htm"><b>detailed</b></a> <br><a href="../files/readme.html"><b>details</b></a> <br><a href="../files/about_salome_pro_architecture.htm"><b>developer</b></a> <br><nobr>development <a href="../files/introduction.htm"><b>1</b></a> <a href="../files/about_salome_pro_architecture.htm"><b>2</b></a> </nobr><br><nobr>developments <a href="../files/introduction.htm"><b>1</b></a> <a href="../files/about_salome_pro_architecture.htm"><b>2</b></a> </nobr><br><br><br></p><p class="ftsbody" align="center"><a href="whlstf2.htm" target="_self" title="previous search group"><b>>></b></a>\r
+\r
+</body>\r
+\r
+</html>\r
+\r
--- /dev/null
+<html>\r
+<head>\r
+<title>Search Words List</title>\r
+<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
+<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">\r
+<meta name "description" content="WebHelp 2002">\r
+<base target="bsscright">\r
+<style>\r
+<!--\r
+body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}\r
+\r
+A:link {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
+A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
+A:active {background-color:#cccccc;}\r
+A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal; text-decoration:underline; }\r
+\r
+.tabs {background-color:#c0c0c0;}\r
+.ftsheader {margin-left:10pt; margin-top:0pt;}\r
+.ftsbody {margin-left:10pt; margin-top:0pt;}\r
+.inactive {color:#666666;}\r
+.ftsheader {background-color:White; } \r
+\r
+body {background-color:White; } \r
+p {color:Black; } p {font-family:Tahoma; } p {font-size:8pt; } p {font-style:Normal; } p {text-decoration:none; } \r
+A:link {color:Black; } A:link {font-family:Tahoma; } A:link {font-size:8pt; } A:link {font-style:Normal; } A:link {text-decoration:none; } \r
+A:visited {color:Black; } A:visited {font-family:Tahoma; } A:visited {font-size:8pt; } A:visited {font-style:Normal; } A:visited {text-decoration:none; } \r
+A:active {background-color:Silver; } \r
+A:hover {color:Navy; } A:hover {font-family:Tahoma; } A:hover {font-size:8pt; } A:hover {font-style:Normal; } A:hover {text-decoration:underline; } \r
+\r
+-->\r
+</style>\r
+</head>\r
+<body marginheight="0" marginwidth="0">\r
+<p class="ftsbody" align="center"><a href="whlstf1.htm" target="_self" title="previous search group"><b><<</b></a><br><br></p>\r
+<p class="ftsbody">\r
+<nobr><a name="bms_DI"></a><a name="subkey_DI"></a>dialog <a href="../files/readme.html"><b>1</b></a> <a href="../files/opening_studies.htm"><b>2</b></a> <a href="../files/installing_salome_pro.htm"><b>3</b></a> <a href="../files/getting_properties_of_the_study.htm"><b>4</b></a> <a href="../files/using_registry.htm"><b>5</b></a> <a href="../files/using_left-hand_tabs.htm"><b>6</b></a> <a href="../files/using_catalog_generator.htm"><b>7</b></a> <a href="../files/saving_a_study.htm"><b>8</b></a> </nobr><br><nobr>differ <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>different <a href="../files/readme.html"><b>1</b></a> <a href="../files/opening_studies.htm"><b>2</b></a> <a href="../files/installing_salome_pro.htm"><b>3</b></a> <a href="../files/getting_started2.htm"><b>4</b></a> <a href="../files/displaying_studies.htm"><b>5</b></a> <a href="../files/creating_a_new_study.htm"><b>6</b></a> <a href="../files/about_salome_pro_help_system.htm"><b>7</b></a> <a href="../files/about_salome_pro_architecture.htm"><b>8</b></a> <a href="../files/using_usecase_browser.htm"><b>9</b></a> <a href="../files/using_object_browser.htm"><b>10</b></a> <a href="../files/salome_pro_desktop.htm"><b>11</b></a> </nobr><br><a href="../files/introduction.htm"><b>digital</b></a> <br><a href="../files/readme.html"><b>dir</b></a> <br><a href="../files/using_left-hand_tabs.htm"><b>direct</b></a> <br><a href="../files/installing_salome_pro.htm"><b>directly</b></a> <br><nobr>directories <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> <a href="../files/setting_preferences.htm"><b>3</b></a> </nobr><br><nobr>directory <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> <a href="../files/using_catalog_generator.htm"><b>3</b></a> <a href="../files/setting_preferences.htm"><b>4</b></a> <a href="../files/saving_a_study.htm"><b>5</b></a> <a href="../files/running_salome_pro.htm"><b>6</b></a> </nobr><br><nobr>disable <a href="../files/readme.html"><b>1</b></a> <a href="../files/setting_preferences.htm"><b>2</b></a> </nobr><br><a href="../files/readme.html"><b>disable_flag</b></a> <br><a href="../files/installing_salome_pro.htm"><b>disabled</b></a> <br><nobr>disk <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> <a href="../files/running_salome_pro.htm"><b>3</b></a> </nobr><br><nobr>display <a href="../files/displaying_studies.htm"><b>1</b></a> <a href="../files/displaying_hiding_toolbars.htm"><b>2</b></a> <a href="../files/using_registry.htm"><b>3</b></a> <a href="../files/using_left-hand_tabs.htm"><b>4</b></a> </nobr><br><nobr>displayed <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> <a href="../files/displaying_studies.htm"><b>3</b></a> <a href="../files/using_usecase_browser.htm"><b>4</b></a> <a href="../files/using_object_browser.htm"><b>5</b></a> <a href="../files/using_left-hand_tabs.htm"><b>6</b></a> <a href="../files/setting_preferences.htm"><b>7</b></a> <a href="../files/salome_pro_desktop.htm"><b>8</b></a> <a href="../files/running_salome_pro.htm"><b>9</b></a> </nobr><br><nobr>displaying <a href="../files/displaying_studies.htm"><b>1</b></a> <a href="../files/displaying_hiding_toolbars.htm"><b>2</b></a> <a href="../files/using_usecase_browser.htm"><b>3</b></a> <a href="../files/using_object_browser.htm"><b>4</b></a> </nobr><br><nobr>displays <a href="../files/readme.html"><b>1</b></a> <a href="../files/navigating_topics.htm"><b>2</b></a> <a href="../files/installing_salome_pro.htm"><b>3</b></a> <a href="../files/using_registry.htm"><b>4</b></a> <a href="../files/using_object_browser.htm"><b>5</b></a> <a href="../files/using_left-hand_tabs.htm"><b>6</b></a> <a href="../files/setting_preferences.htm"><b>7</b></a> <a href="../files/salome_pro_desktop.htm"><b>8</b></a> </nobr><br><a href="../files/about_salome_pro_architecture.htm"><b>distinction</b></a> <br><a href="../files/about_salome_pro_architecture.htm"><b>distributed</b></a> <br><nobr>divided <a href="../files/about_salome_pro_help_system.htm"><b>1</b></a> <a href="../files/using_registry.htm"><b>2</b></a> </nobr><br><a name="bms_DO"></a><a name="subkey_DO"></a><a href="../files/installing_salome_pro.htm"><b>docs</b></a> <br><nobr>document <a href="../files/readme.html"><b>1</b></a> <a href="../files/getting_started2.htm"><b>2</b></a> <a href="../files/copyright_notice.htm"><b>3</b></a> <a href="../files/salome_pro_desktop.htm"><b>4</b></a> </nobr><br><nobr>does <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><a href="../files/installing_salome_pro.htm"><b>doesn</b></a> <br><nobr>domain <a href="../files/introduction_to_salome_pro.htm"><b>1</b></a> <a href="../files/introduction.htm"><b>2</b></a> <a href="../files/about_salome_pro_architecture.htm"><b>3</b></a> </nobr><br><a href="../files/copyright_notice.htm"><b>domaine</b></a> <br><a href="../files/using_catalog_generator.htm"><b>don</b></a> <br><nobr>done <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>dot <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><a href="../files/using_registry.htm"><b>double</b></a> <br><nobr>down <a href="../files/navigating_topics.htm"><b>1</b></a> <a href="../files/getting_properties_of_the_study.htm"><b>2</b></a> <a href="../files/using_object_browser.htm"><b>3</b></a> </nobr><br><nobr>doxygen <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>doxysearch <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>doxytag <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>doxywizard <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><a name="bms_DR"></a><a name="subkey_DR"></a><a href="../files/using_usecase_browser.htm"><b>drag</b></a> <br><a href="../files/displaying_hiding_toolbars.htm"><b>dragging</b></a> <br><a href="../files/about_salome_pro_architecture.htm"><b>dramatically</b></a> <br><nobr>drive <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>driver <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>drivers <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>drop <a href="../files/navigating_topics.htm"><b>1</b></a> <a href="../files/using_usecase_browser.htm"><b>2</b></a> </nobr><br><a href="../files/displaying_hiding_toolbars.htm"><b>dropping</b></a> <br><a name="bms_DU"></a><a name="subkey_DU"></a><a href="../files/salome_pro_desktop.htm"><b>dump</b></a> <br><a name="bms_DY"></a><a name="subkey_DY"></a><a href="../files/introduction_to_salome_pro.htm"><b>dynamically</b></a> <br>\r
+<br><br>\r
+<nobr><a name="bm_E"></a><a name="subkey_E{"></a>e <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><a name="bms_EA"></a><a name="subkey_EA"></a><a href="../files/introduction.htm"><b>eases</b></a> <br><a href="../files/about_salome_pro_architecture.htm"><b>easily</b></a> <br><a href="../files/about_salome_pro_architecture.htm"><b>easy</b></a> <br><nobr><a name="bms_EC"></a><a name="subkey_EC"></a>echo <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><a href="../files/about_salome_pro_architecture.htm"><b>economically</b></a> <br><nobr><a name="bms_ED"></a><a name="subkey_ED"></a>edit <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> <a href="../files/getting_properties_of_the_study.htm"><b>3</b></a> <a href="../files/editing_studies.htm"><b>4</b></a> </nobr><br><nobr>editing <a href="../files/introduction_to_iapp.htm"><b>1</b></a> <a href="../files/editing_studies.htm"><b>2</b></a> </nobr><br><a name="bms_EF"></a><a name="subkey_EF"></a><a href="../files/introduction.htm"><b>efficient</b></a> <br><a name="bms_EI"></a><a name="subkey_EI"></a><a href="../files/using_catalog_generator.htm"><b>either</b></a> <br><a name="bms_EL"></a><a name="subkey_EL"></a><a href="../files/introduction.htm"><b>electrical</b></a> <br><nobr>electronic <a href="../files/introduction.htm"><b>1</b></a> <a href="../files/copyright_notice.htm"><b>2</b></a> </nobr><br><a href="../files/installing_salome_pro.htm"><b>else</b></a> <br><nobr><a name="bms_EM"></a><a name="subkey_EM"></a>empty <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><a name="bms_EN"></a><a name="subkey_EN"></a><a href="../files/setting_preferences.htm"><b>enable</b></a> <br><a href="../files/installing_salome_pro.htm"><b>enabled</b></a> <br><a href="../files/using_left-hand_tabs.htm"><b>enables</b></a> <br><a href="../files/introduction_to_salome_pro.htm"><b>enabling</b></a> <br><a href="../files/introduction_to_salome_pro.htm"><b>encapsulates</b></a> <br><a href="../files/about_salome_pro_architecture.htm"><b>encouraging</b></a> <br><nobr>end <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> <a href="../files/setting_preferences.htm"><b>3</b></a> </nobr><br><a href="../files/about_salome_pro_architecture.htm"><b>enforcing</b></a> <br><a href="../files/introduction_to_iapp.htm"><b>eng</b></a> <br><nobr>enough <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><a href="../files/introduction.htm"><b>ensure</b></a> <br><a href="../files/about_salome_pro_architecture.htm"><b>ensuring</b></a> <br><nobr>enter <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> <a href="../files/getting_properties_of_the_study.htm"><b>3</b></a> <a href="../files/saving_a_study.htm"><b>4</b></a> <a href="../files/running_salome_pro.htm"><b>5</b></a> </nobr><br><nobr>entered <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>entry <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> <a href="../files/using_object_browser.htm"><b>3</b></a> <a href="../files/setting_preferences.htm"><b>4</b></a> </nobr><br><a href="../files/running_salome_pro.htm"><b>env</b></a> <br><a href="../files/readme.html"><b>env_</b></a> <br><a href="../files/readme.html"><b>env_products</b></a> <br><a href="../files/readme.html"><b>env_vtk</b></a> <br><nobr>environment <a href="../files/readme.html"><b>1</b></a> <a href="../files/introduction_to_iapp.htm"><b>2</b></a> <a href="../files/introduction.htm"><b>3</b></a> <a href="../files/installing_salome_pro.htm"><b>4</b></a> <a href="../files/getting_started2.htm"><b>5</b></a> <a href="../files/running_salome_pro.htm"><b>6</b></a> </nobr><br><nobr>environments <a href="../files/introduction.htm"><b>1</b></a> <a href="../files/about_salome_pro_architecture.htm"><b>2</b></a> </nobr><br><nobr><a name="bms_EQ"></a><a name="subkey_EQ"></a>equal <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><a href="../files/introduction.htm"><b>equipment</b></a> <br><nobr><a name="bms_ER"></a><a name="subkey_ER"></a>error <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><a href="../files/copyright_notice.htm"><b>errors</b></a> <br><nobr><a name="bms_ET"></a><a name="subkey_ET"></a>etc <a href="../files/readme.html"><b>1</b></a> <a href="../files/displaying_hiding_toolbars.htm"><b>2</b></a> <a href="../files/about_salome_pro_architecture.htm"><b>3</b></a> </nobr><br><nobr><a name="bms_EV"></a><a name="subkey_EV"></a>even <a href="../files/installing_salome_pro.htm"><b>1</b></a> <a href="../files/about_salome_pro_architecture.htm"><b>2</b></a> </nobr><br><a href="../files/using_registry.htm"><b>ever</b></a> <br><nobr>every <a href="../files/introduction_to_salome_pro.htm"><b>1</b></a> <a href="../files/introduction.htm"><b>2</b></a> <a href="../files/using_left-hand_tabs.htm"><b>3</b></a> </nobr><br><nobr>everything <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><a href="../files/introduction.htm"><b>evolutions</b></a> <br><a href="../files/about_salome_pro_architecture.htm"><b>evolve</b></a> <br><a name="bms_EX"></a><a name="subkey_EX"></a><a href="../files/running_salome_pro.htm"><b>ex</b></a> <br><nobr>exact <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>exactly <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><a href="../files/readme.html"><b>examle</b></a> <br><nobr>example <a href="../files/readme.html"><b>1</b></a> <a href="../files/introduction.htm"><b>2</b></a> <a href="../files/installing_salome_pro.htm"><b>3</b></a> <a href="../files/using_catalog_generator.htm"><b>4</b></a> </nobr><br><a href="../files/installing_salome_pro.htm"><b>except</b></a> <br><a href="../files/about_salome_pro_architecture.htm"><b>exchanges</b></a> <br><a href="../files/introduction_to_salome_pro.htm"><b>execution</b></a> <br><nobr>exist <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><a href="../files/installing_salome_pro.htm"><b>existance</b></a> <br><nobr>existence <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><a href="../files/installing_salome_pro.htm"><b>existense</b></a> <br><a href="../files/installing_salome_pro.htm"><b>existent</b></a> <br><nobr>existing <a href="../files/opening_studies.htm"><b>1</b></a> <a href="../files/introduction_to_salome_pro.htm"><b>2</b></a> <a href="../files/about_salome_pro_architecture.htm"><b>3</b></a> <a href="../files/using_catalog_generator.htm"><b>4</b></a> <a href="../files/saving_a_study.htm"><b>5</b></a> </nobr><br><a href="../files/about_salome_pro_architecture.htm"><b>expandability</b></a> <br><a href="../files/navigating_topics.htm"><b>expanding</b></a> <br><a href="../files/introduction.htm"><b>expectations</b></a> <br><a href="../files/about_salome_pro_architecture.htm"><b>exploits</b></a> <br><a href="../files/about_salome_pro_help_system.htm"><b>explorer</b></a> <br><a href="../files/about_salome_pro_architecture.htm"><b>exposes</b></a> <br><a href="../files/saving_a_study.htm"><b>extensions</b></a> <br><a href="../files/setting_preferences.htm"><b>external</b></a> <br><a href="../files/installing_salome_pro.htm"><b>extracted</b></a> <br><nobr>extracting <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><a href="../files/introduction.htm"><b>extremely</b></a> <br>\r
+<br><br>\r
+<nobr><a name="bm_F"></a><a name="subkey_F{"></a>f <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><a name="bms_FA"></a><a name="subkey_FA"></a><a href="../files/about_salome_pro_architecture.htm"><b>facilitated</b></a> <br><a href="../files/using_catalog_generator.htm"><b>factory</b></a> <br><nobr>fail <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>fails <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr><a name="bms_FE"></a><a name="subkey_FE"></a>feature <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>features <a href="../files/editing_studies.htm"><b>1</b></a> <a href="../files/about_salome_pro_help_system.htm"><b>2</b></a> </nobr><br><nobr><a name="bms_FI"></a><a name="subkey_FI"></a>field <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> <a href="../files/getting_properties_of_the_study.htm"><b>3</b></a> </nobr><br><nobr>fig <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>figure <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>file <a href="../files/readme.html"><b>1</b></a> <a href="../files/opening_studies.htm"><b>2</b></a> <a href="../files/installing_salome_pro.htm"><b>3</b></a> <a href="../files/getting_properties_of_the_study.htm"><b>4</b></a> <a href="../files/creating_a_new_study.htm"><b>5</b></a> <a href="../files/using_catalog_generator.htm"><b>6</b></a> <a href="../files/setting_preferences.htm"><b>7</b></a> <a href="../files/saving_a_study.htm"><b>8</b></a> <a href="../files/running_salome_pro.htm"><b>9</b></a> </nobr><br><nobr>files <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> <a href="../files/using_catalog_generator.htm"><b>3</b></a> <a href="../files/setting_preferences.htm"><b>4</b></a> <a href="../files/saving_a_study.htm"><b>5</b></a> <a href="../files/salome_pro_desktop.htm"><b>6</b></a> </nobr><br><nobr>find <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> <a href="../files/using_left-hand_tabs.htm"><b>3</b></a> </nobr><br><a href="../files/installing_salome_pro.htm"><b>finds</b></a> <br><a href="../files/about_salome_pro_architecture.htm"><b>finely</b></a> <br><nobr>finish <a href="../files/readme.html"><b>1</b></a> <a href="../files/navigating_topics.htm"><b>2</b></a> <a href="../files/installing_salome_pro.htm"><b>3</b></a> </nobr><br><nobr>finishes <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>first <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> <a href="../files/using_object_browser.htm"><b>3</b></a> </nobr><br><a href="../files/salome_pro_desktop.htm"><b>fits</b></a> <br><a name="bms_FL"></a><a name="subkey_FL"></a><a href="../files/readme.html"><b>flag</b></a> <br><a href="../files/about_salome_pro_architecture.htm"><b>flexibility</b></a> <br><a href="../files/readme.html"><b>flexible</b></a> <br><a name="bms_FO"></a><a name="subkey_FO"></a><a href="../files/navigating_topics.htm"><b>focus</b></a> <br><nobr>folder <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> <a href="../files/using_usecase_browser.htm"><b>3</b></a> <a href="../files/using_object_browser.htm"><b>4</b></a> <a href="../files/setting_preferences.htm"><b>5</b></a> </nobr><br><a href="../files/installing_salome_pro.htm"><b>folders</b></a> <br><nobr>follow <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> <a href="../files/about_salome_pro_architecture.htm"><b>3</b></a> </nobr><br><nobr>following <a href="../files/readme.html"><b>1</b></a> <a href="../files/opening_studies.htm"><b>2</b></a> <a href="../files/navigating_topics.htm"><b>3</b></a> <a href="../files/introduction_to_salome_pro.htm"><b>4</b></a> <a href="../files/installing_salome_pro.htm"><b>5</b></a> <a href="../files/getting_started2.htm"><b>6</b></a> <a href="../files/getting_properties_of_the_study.htm"><b>7</b></a> <a href="../files/about_salome_pro_architecture.htm"><b>8</b></a> <a href="../files/using_usecase_browser.htm"><b>9</b></a> <a href="../files/using_registry.htm"><b>10</b></a> <a href="../files/using_left-hand_tabs.htm"><b>11</b></a> <a href="../files/using_catalog_generator.htm"><b>12</b></a> <a href="../files/setting_preferences.htm"><b>13</b></a> <a href="../files/saving_a_study.htm"><b>14</b></a> <a href="../files/salome_pro_desktop.htm"><b>15</b></a> <a href="../files/running_salome_pro.htm"><b>16</b></a> </nobr><br><a href="../files/displaying_studies.htm"><b>follows</b></a> <br><a href="../files/setting_preferences.htm"><b>font</b></a> <br><a href="../files/installing_salome_pro.htm"><b>forces</b></a> <br><a href="../files/using_catalog_generator.htm"><b>forget</b></a> <br><nobr>format <a href="../files/readme.html"><b>1</b></a> <a href="../files/opening_studies.htm"><b>2</b></a> <a href="../files/about_salome_pro_help_system.htm"><b>3</b></a> <a href="../files/setting_preferences.htm"><b>4</b></a> </nobr><br><a href="../files/introduction_to_iapp.htm"><b>four</b></a> <br><br><br></p><p class="ftsbody" align="center"><a href="whlstf3.htm" target="_self" title="previous search group"><b>>></b></a>\r
+\r
+</body>\r
+\r
+</html>\r
+\r
--- /dev/null
+<html>\r
+<head>\r
+<title>Search Words List</title>\r
+<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
+<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">\r
+<meta name "description" content="WebHelp 2002">\r
+<base target="bsscright">\r
+<style>\r
+<!--\r
+body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}\r
+\r
+A:link {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
+A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
+A:active {background-color:#cccccc;}\r
+A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal; text-decoration:underline; }\r
+\r
+.tabs {background-color:#c0c0c0;}\r
+.ftsheader {margin-left:10pt; margin-top:0pt;}\r
+.ftsbody {margin-left:10pt; margin-top:0pt;}\r
+.inactive {color:#666666;}\r
+.ftsheader {background-color:White; } \r
+\r
+body {background-color:White; } \r
+p {color:Black; } p {font-family:Tahoma; } p {font-size:8pt; } p {font-style:Normal; } p {text-decoration:none; } \r
+A:link {color:Black; } A:link {font-family:Tahoma; } A:link {font-size:8pt; } A:link {font-style:Normal; } A:link {text-decoration:none; } \r
+A:visited {color:Black; } A:visited {font-family:Tahoma; } A:visited {font-size:8pt; } A:visited {font-style:Normal; } A:visited {text-decoration:none; } \r
+A:active {background-color:Silver; } \r
+A:hover {color:Navy; } A:hover {font-family:Tahoma; } A:hover {font-size:8pt; } A:hover {font-style:Normal; } A:hover {text-decoration:underline; } \r
+\r
+-->\r
+</style>\r
+</head>\r
+<body marginheight="0" marginwidth="0">\r
+<p class="ftsbody" align="center"><a href="whlstf2.htm" target="_self" title="previous search group"><b><<</b></a><br><br></p>\r
+<p class="ftsbody">\r
+<a name="bms_FR"></a><a name="subkey_FR"></a><a href="../files/introduction_to_iapp.htm"><b>fr</b></a> <br><nobr>frame <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>framework <a href="../files/introduction_to_iapp.htm"><b>1</b></a> <a href="../files/using_object_browser.htm"><b>2</b></a> </nobr><br><a href="../files/copyright_notice.htm"><b>france</b></a> <br><a href="../files/introduction.htm"><b>friendly</b></a> <br><a href="../files/salome_pro_desktop.htm"><b>front</b></a> <br><a name="bms_FU"></a><a name="subkey_FU"></a><a href="../files/using_left-hand_tabs.htm"><b>full</b></a> <br><nobr>function <a href="../files/readme.html"><b>1</b></a> <a href="../files/introduction_to_salome_pro.htm"><b>2</b></a> </nobr><br><a href="../files/readme.html"><b>function_name</b></a> <br><a href="../files/salome_pro_desktop.htm"><b>functional</b></a> <br><nobr>functionality <a href="../files/getting_started2.htm"><b>1</b></a> <a href="../files/editing_studies.htm"><b>2</b></a> <a href="../files/about_salome_pro_help_system.htm"><b>3</b></a> <a href="../files/about_salome_pro_architecture.htm"><b>4</b></a> <a href="../files/using_catalog_generator.htm"><b>5</b></a> <a href="../files/salome_pro_desktop.htm"><b>6</b></a> </nobr><br><a href="../files/saving_a_study.htm"><b>functioning</b></a> <br><nobr>functions <a href="../files/readme.html"><b>1</b></a> <a href="../files/salome_pro_desktop.htm"><b>2</b></a> </nobr><br><a href="../files/about_salome_pro_architecture.htm"><b>fundamental</b></a> <br><a href="../files/copyright_notice.htm"><b>furnished</b></a> <br><nobr>further <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br>\r
+<br><br>\r
+<nobr><a name="bm_G"></a><a name="subkey_G{"></a>g <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> <a href="../files/running_salome_pro.htm"><b>3</b></a> </nobr><br><nobr><a name="bms_GC"></a><a name="subkey_GC"></a>gcc <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><a href="../files/installing_salome_pro.htm"><b>gcc3</b></a> <br><nobr><a name="bms_GE"></a><a name="subkey_GE"></a>general <a href="../files/readme.html"><b>1</b></a> <a href="../files/getting_started2.htm"><b>2</b></a> <a href="../files/salome_pro_desktop.htm"><b>3</b></a> </nobr><br><nobr>generate <a href="../files/readme.html"><b>1</b></a> <a href="../files/using_catalog_generator.htm"><b>2</b></a> </nobr><br><nobr>generated <a href="../files/readme.html"><b>1</b></a> <a href="../files/using_catalog_generator.htm"><b>2</b></a> </nobr><br><a href="../files/introduction_to_salome_pro.htm"><b>generation</b></a> <br><nobr>generator <a href="../files/introduction_to_iapp.htm"><b>1</b></a> <a href="../files/using_catalog_generator.htm"><b>2</b></a> </nobr><br><nobr>generic <a href="../files/introduction_to_salome_pro.htm"><b>1</b></a> <a href="../files/introduction.htm"><b>2</b></a> </nobr><br><nobr>geom <a href="../files/introduction_to_salome_pro.htm"><b>1</b></a> <a href="../files/editing_studies.htm"><b>2</b></a> <a href="../files/displaying_hiding_toolbars.htm"><b>3</b></a> <a href="../files/about_salome_pro_architecture.htm"><b>4</b></a> </nobr><br><nobr>get <a href="../files/installing_salome_pro.htm"><b>1</b></a> <a href="../files/about_salome_pro_help_system.htm"><b>2</b></a> </nobr><br><nobr>getting <a href="../files/introduction.htm"><b>1</b></a> <a href="../files/getting_started2.htm"><b>2</b></a> <a href="../files/getting_properties_of_the_study.htm"><b>3</b></a> <a href="../files/using_usecase_browser.htm"><b>4</b></a> <a href="../files/using_object_browser.htm"><b>5</b></a> </nobr><br><nobr><a name="bms_GI"></a><a name="subkey_GI"></a>given <a href="../files/readme.html"><b>1</b></a> <a href="../files/introduction_to_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>gives <a href="../files/readme.html"><b>1</b></a> <a href="../files/getting_properties_of_the_study.htm"><b>2</b></a> <a href="../files/salome_pro_desktop.htm"><b>3</b></a> </nobr><br><a name="bms_GL"></a><a name="subkey_GL"></a><a href="../files/salome_pro_desktop.htm"><b>global</b></a> <br><a href="../files/using_left-hand_tabs.htm"><b>glossary</b></a> <br><a name="bms_GN"></a><a name="subkey_GN"></a><a href="../files/installing_salome_pro.htm"><b>gnu</b></a> <br><nobr><a name="bms_GO"></a><a name="subkey_GO"></a>go <a href="../files/readme.html"><b>1</b></a> <a href="../files/navigating_topics.htm"><b>2</b></a> <a href="../files/installing_salome_pro.htm"><b>3</b></a> </nobr><br><a name="bms_GR"></a><a name="subkey_GR"></a><a href="../files/introduction_to_salome_pro.htm"><b>graphs</b></a> <br><nobr>graphviz <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>grep <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr><a name="bms_GU"></a><a name="subkey_GU"></a>gui <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> <a href="../files/about_salome_pro_architecture.htm"><b>3</b></a> <a href="../files/running_salome_pro.htm"><b>4</b></a> </nobr><br>\r
+<br><br>\r
+<nobr><a name="bm_H"></a><a name="subkey_H{"></a>h <a href="../files/installing_salome_pro.htm"><b>1</b></a> <a href="../files/running_salome_pro.htm"><b>2</b></a> </nobr><br><nobr><a name="bms_HA"></a><a name="subkey_HA"></a>hand <a href="../files/navigating_topics.htm"><b>1</b></a> <a href="../files/about_salome_pro_architecture.htm"><b>2</b></a> <a href="../files/using_left-hand_tabs.htm"><b>3</b></a> </nobr><br><a href="../files/introduction.htm"><b>handled</b></a> <br><nobr>handler <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><a href="../files/introduction_to_iapp.htm"><b>handling</b></a> <br><nobr>happydoc <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>hard <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> <a href="../files/running_salome_pro.htm"><b>3</b></a> </nobr><br><a href="../files/saving_a_study.htm"><b>hasn</b></a> <br><nobr>hat <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>having <a href="../files/navigating_topics.htm"><b>1</b></a> <a href="../files/using_object_browser.htm"><b>2</b></a> </nobr><br><nobr><a name="bms_HD"></a><a name="subkey_HD"></a>hdf <a href="../files/readme.html"><b>1</b></a> <a href="../files/opening_studies.htm"><b>2</b></a> <a href="../files/installing_salome_pro.htm"><b>3</b></a> <a href="../files/setting_preferences.htm"><b>4</b></a> <a href="../files/saving_a_study.htm"><b>5</b></a> </nobr><br><nobr>hdf5 <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>hdf5home <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><a name="bms_HE"></a><a name="subkey_HE"></a><a href="../files/installing_salome_pro.htm"><b>header</b></a> <br><a href="../files/using_registry.htm"><b>hello</b></a> <br><nobr>help <a href="../files/readme.html"><b>1</b></a> <a href="../files/opening_studies.htm"><b>2</b></a> <a href="../files/navigating_topics.htm"><b>3</b></a> <a href="../files/installing_salome_pro.htm"><b>4</b></a> <a href="../files/about_salome_pro_help_system.htm"><b>5</b></a> <a href="../files/about_salome_pro_architecture.htm"><b>6</b></a> <a href="../files/using_registry.htm"><b>7</b></a> <a href="../files/using_object_browser.htm"><b>8</b></a> <a href="../files/using_left-hand_tabs.htm"><b>9</b></a> <a href="../files/running_salome_pro.htm"><b>10</b></a> </nobr><br><nobr>helps <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>here <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> <a href="../files/setting_preferences.htm"><b>3</b></a> </nobr><br><a name="bms_HI"></a><a name="subkey_HI"></a><a href="../files/displaying_hiding_toolbars.htm"><b>hide</b></a> <br><nobr>hides <a href="../files/setting_preferences.htm"><b>1</b></a> <a href="../files/salome_pro_desktop.htm"><b>2</b></a> </nobr><br><nobr>hiding <a href="../files/displaying_hiding_toolbars.htm"><b>1</b></a> <a href="../files/using_object_browser.htm"><b>2</b></a> </nobr><br><a href="../files/introduction.htm"><b>high</b></a> <br><nobr>highlighted <a href="../files/readme.html"><b>1</b></a> <a href="../files/using_object_browser.htm"><b>2</b></a> </nobr><br><a href="../files/readme.html"><b>hints</b></a> <br><a href="../files/using_registry.htm"><b>history</b></a> <br><a name="bms_HO"></a><a name="subkey_HO"></a><a href="../files/copyright_notice.htm"><b>holders</b></a> <br><a href="../files/running_salome_pro.htm"><b>home</b></a> <br><a href="../files/about_salome_pro_architecture.htm"><b>host</b></a> <br><a href="../files/navigating_topics.htm"><b>hotspot</b></a> <br><a href="../files/navigating_topics.htm"><b>hotspots</b></a> <br><nobr>how <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> <a href="../files/about_salome_pro_architecture.htm"><b>3</b></a> </nobr><br><nobr><a name="bms_HT"></a><a name="subkey_HT"></a>html <a href="../files/about_salome_pro_help_system.htm"><b>1</b></a> <a href="../files/using_left-hand_tabs.htm"><b>2</b></a> </nobr><br>\r
+<br><br>\r
+<nobr><a name="bm_I"></a><a name="subkey_I{"></a>i586_linux_2 <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr><a name="bms_IA"></a><a name="subkey_IA"></a>iapp <a href="../files/introduction_to_salome_pro.htm"><b>1</b></a> <a href="../files/introduction_to_iapp.htm"><b>2</b></a> <a href="../files/about_salome_pro_architecture.htm"><b>3</b></a> </nobr><br><nobr><a name="bms_IC"></a><a name="subkey_IC"></a>icon <a href="../files/creating_a_new_study.htm"><b>1</b></a> <a href="../files/using_catalog_generator.htm"><b>2</b></a> </nobr><br><nobr>icons <a href="../files/editing_studies.htm"><b>1</b></a> <a href="../files/salome_pro_desktop.htm"><b>2</b></a> </nobr><br><nobr><a name="bms_ID"></a><a name="subkey_ID"></a>identification <a href="../files/using_registry.htm"><b>1</b></a> <a href="../files/using_object_browser.htm"><b>2</b></a> </nobr><br><nobr>identify <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>idl <a href="../files/about_salome_pro_architecture.htm"><b>1</b></a> <a href="../files/using_catalog_generator.htm"><b>2</b></a> </nobr><br><a name="bms_IE"></a><a name="subkey_IE"></a><a href="../files/setting_preferences.htm"><b>ie</b></a> <br><nobr><a name="bms_IF"></a><a name="subkey_IF"></a>if <a href="../files/readme.html"><b>1</b></a> <a href="../files/opening_studies.htm"><b>2</b></a> <a href="../files/installing_salome_pro.htm"><b>3</b></a> <a href="../files/creating_a_new_study.htm"><b>4</b></a> <a href="../files/using_usecase_browser.htm"><b>5</b></a> <a href="../files/using_object_browser.htm"><b>6</b></a> <a href="../files/using_left-hand_tabs.htm"><b>7</b></a> <a href="../files/using_catalog_generator.htm"><b>8</b></a> <a href="../files/setting_preferences.htm"><b>9</b></a> <a href="../files/saving_a_study.htm"><b>10</b></a> <a href="../files/running_salome_pro.htm"><b>11</b></a> </nobr><br><a name="bms_IM"></a><a name="subkey_IM"></a><a href="../files/salome_pro_desktop.htm"><b>images</b></a> <br><a href="../files/navigating_topics.htm"><b>immediately</b></a> <br><a href="../files/copyright_notice.htm"><b>immeuble</b></a> <br><nobr>implement <a href="../files/readme.html"><b>1</b></a> <a href="../files/about_salome_pro_architecture.htm"><b>2</b></a> </nobr><br><nobr>implementation <a href="../files/about_salome_pro_architecture.htm"><b>1</b></a> <a href="../files/using_catalog_generator.htm"><b>2</b></a> </nobr><br><a href="../files/readme.html"><b>implementing</b></a> <br><a href="../files/readme.html"><b>implied</b></a> <br><a href="../files/readme.html"><b>important</b></a> <br><nobr>imported <a href="../files/introduction_to_iapp.htm"><b>1</b></a> <a href="../files/salome_pro_desktop.htm"><b>2</b></a> </nobr><br><a href="../files/installing_salome_pro.htm"><b>impossibility</b></a> <br><nobr><a name="bms_IN"></a><a name="subkey_IN"></a>includes <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> <a href="../files/using_left-hand_tabs.htm"><b>3</b></a> </nobr><br><nobr>including <a href="../files/navigating_topics.htm"><b>1</b></a> <a href="../files/copyright_notice.htm"><b>2</b></a> </nobr><br><a href="../files/about_salome_pro_architecture.htm"><b>inclusive</b></a> <br><a href="../files/introduction.htm"><b>increasingly</b></a> <br><a href="../files/about_salome_pro_architecture.htm"><b>incrementally</b></a> <br><a href="../files/about_salome_pro_architecture.htm"><b>independence</b></a> <br><a href="../files/about_salome_pro_architecture.htm"><b>independent</b></a> <br><nobr>index <a href="../files/using_object_browser.htm"><b>1</b></a> <a href="../files/using_left-hand_tabs.htm"><b>2</b></a> </nobr><br><a href="../files/introduction.htm"><b>industry</b></a> <br><nobr>information <a href="../files/readme.html"><b>1</b></a> <a href="../files/navigating_topics.htm"><b>2</b></a> <a href="../files/installing_salome_pro.htm"><b>3</b></a> <a href="../files/getting_properties_of_the_study.htm"><b>4</b></a> <a href="../files/copyright_notice.htm"><b>5</b></a> <a href="../files/about_salome_pro_architecture.htm"><b>6</b></a> <a href="../files/using_registry.htm"><b>7</b></a> <a href="../files/using_left-hand_tabs.htm"><b>8</b></a> <a href="../files/saving_a_study.htm"><b>9</b></a> </nobr><br><nobr>initial <a href="../files/getting_started2.htm"><b>1</b></a> <a href="../files/salome_pro_desktop.htm"><b>2</b></a> </nobr><br><a href="../files/using_catalog_generator.htm"><b>input</b></a> <br><a href="../files/readme.html"><b>insert</b></a> <br><nobr>inside <a href="../files/navigating_topics.htm"><b>1</b></a> <a href="../files/using_catalog_generator.htm"><b>2</b></a> </nobr><br><a href="../files/readme.html"><b>inspect</b></a> <br><a href="../files/installing_salome_pro.htm"><b>inspects</b></a> <br><nobr>instal <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>install <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> <a href="../files/running_salome_pro.htm"><b>3</b></a> </nobr><br><a href="../files/readme.html"><b>install_binary</b></a> <br><a href="../files/readme.html"><b>install_disk_space</b></a> <br><a href="../files/readme.html"><b>install_source</b></a> <br><a href="../files/readme.html"><b>install_wizard_caption</b></a> <br><a href="../files/readme.html"><b>install_wizard_copyright</b></a> <br><a href="../files/readme.html"><b>install_wizard_license_info</b></a> <br><a href="../files/readme.html"><b>install_wizard_root_directory</b></a> <br><a href="../files/readme.html"><b>install_wizard_version</b></a> <br><nobr>installation <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> <a href="../files/running_salome_pro.htm"><b>3</b></a> </nobr><br><a href="../files/readme.html"><b>installation_mode</b></a> <br><a href="../files/readme.html"><b>installation_script_name</b></a> <br><a href="../files/readme.html"><b>installdiskspace</b></a> <br><nobr>installed <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> <a href="../files/using_catalog_generator.htm"><b>3</b></a> </nobr><br><nobr>installing <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><a href="../files/readme.html"><b>installwizard_root_directory</b></a> <br><a href="../files/about_salome_pro_architecture.htm"><b>instrumental</b></a> <br><a href="../files/readme.html"><b>integer</b></a> <br><a href="../files/introduction_to_salome_pro.htm"><b>integrate</b></a> <br><nobr>integrated <a href="../files/introduction_to_iapp.htm"><b>1</b></a> <a href="../files/about_salome_pro_architecture.htm"><b>2</b></a> <a href="../files/salome_pro_desktop.htm"><b>3</b></a> </nobr><br><nobr>integration <a href="../files/introduction_to_iapp.htm"><b>1</b></a> <a href="../files/introduction.htm"><b>2</b></a> <a href="../files/about_salome_pro_architecture.htm"><b>3</b></a> <a href="../files/using_catalog_generator.htm"><b>4</b></a> </nobr><br><a href="../files/using_left-hand_tabs.htm"><b>intended</b></a> <br><a href="../files/introduction.htm"><b>inter</b></a> <br><nobr>interface <a href="../files/introduction_to_salome_pro.htm"><b>1</b></a> <a href="../files/introduction_to_iapp.htm"><b>2</b></a> <a href="../files/introduction.htm"><b>3</b></a> <a href="../files/about_salome_pro_architecture.htm"><b>4</b></a> <a href="../files/using_catalog_generator.htm"><b>5</b></a> <a href="../files/setting_preferences.htm"><b>6</b></a> </nobr><br><nobr>interfaces <a href="../files/about_salome_pro_architecture.htm"><b>1</b></a> <a href="../files/using_catalog_generator.htm"><b>2</b></a> </nobr><br><nobr>internal <a href="../files/readme.html"><b>1</b></a> <a href="../files/introduction.htm"><b>2</b></a> </nobr><br><a href="../files/about_salome_pro_help_system.htm"><b>internet</b></a> <br><a href="../files/using_object_browser.htm"><b>interoperable</b></a> <br><nobr>interpreter <a href="../files/introduction_to_iapp.htm"><b>1</b></a> <a href="../files/salome_pro_desktop.htm"><b>2</b></a> </nobr><br><a href="../files/using_registry.htm"><b>interval</b></a> <br><nobr>introduction <a href="../files/readme.html"><b>1</b></a> <a href="../files/introduction_to_salome_pro.htm"><b>2</b></a> <a href="../files/introduction_to_iapp.htm"><b>3</b></a> <a href="../files/introduction.htm"><b>4</b></a> <a href="../files/installing_salome_pro.htm"><b>5</b></a> </nobr><br><a href="../files/saving_a_study.htm"><b>invalid</b></a> <br><nobr>invoke <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><a href="../files/salome_pro_desktop.htm"><b>invoked</b></a> <br><nobr><a name="bms_IO"></a><a name="subkey_IO"></a>ior <a href="../files/using_object_browser.htm"><b>1</b></a> <a href="../files/setting_preferences.htm"><b>2</b></a> </nobr><br><br><br></p><p class="ftsbody" align="center"><a href="whlstf4.htm" target="_self" title="previous search group"><b>>></b></a>\r
+\r
+</body>\r
+\r
+</html>\r
+\r
--- /dev/null
+<html>\r
+<head>\r
+<title>Search Words List</title>\r
+<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
+<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">\r
+<meta name "description" content="WebHelp 2002">\r
+<base target="bsscright">\r
+<style>\r
+<!--\r
+body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}\r
+\r
+A:link {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
+A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
+A:active {background-color:#cccccc;}\r
+A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal; text-decoration:underline; }\r
+\r
+.tabs {background-color:#c0c0c0;}\r
+.ftsheader {margin-left:10pt; margin-top:0pt;}\r
+.ftsbody {margin-left:10pt; margin-top:0pt;}\r
+.inactive {color:#666666;}\r
+.ftsheader {background-color:White; } \r
+\r
+body {background-color:White; } \r
+p {color:Black; } p {font-family:Tahoma; } p {font-size:8pt; } p {font-style:Normal; } p {text-decoration:none; } \r
+A:link {color:Black; } A:link {font-family:Tahoma; } A:link {font-size:8pt; } A:link {font-style:Normal; } A:link {text-decoration:none; } \r
+A:visited {color:Black; } A:visited {font-family:Tahoma; } A:visited {font-size:8pt; } A:visited {font-style:Normal; } A:visited {text-decoration:none; } \r
+A:active {background-color:Silver; } \r
+A:hover {color:Navy; } A:hover {font-family:Tahoma; } A:hover {font-size:8pt; } A:hover {font-style:Normal; } A:hover {text-decoration:underline; } \r
+\r
+-->\r
+</style>\r
+</head>\r
+<body marginheight="0" marginwidth="0">\r
+<p class="ftsbody" align="center"><a href="whlstf3.htm" target="_self" title="previous search group"><b><<</b></a><br><br></p>\r
+<p class="ftsbody">\r
+<nobr><a name="bms_IS"></a><a name="subkey_IS"></a>ispython <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>isswig <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr><a name="bms_IT"></a><a name="subkey_IT"></a>item <a href="../files/getting_properties_of_the_study.htm"><b>1</b></a> <a href="../files/setting_preferences.htm"><b>2</b></a> </nobr><br><a href="../files/installing_salome_pro.htm"><b>items</b></a> <br><nobr>itself <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br>\r
+<br><br>\r
+<a name="bm_J"></a><a name="subkey_JA"></a><a href="../files/about_salome_pro_help_system.htm"><b>java</b></a> <br><a name="bms_JP"></a><a name="subkey_JP"></a><a href="../files/salome_pro_desktop.htm"><b>jpeg</b></a> <br><a href="../files/salome_pro_desktop.htm"><b>jpg</b></a> <br><nobr><a name="bms_JU"></a><a name="subkey_JU"></a>just <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br>\r
+<br><br>\r
+<a name="bm_K"></a><a name="subkey_K{"></a><a href="../files/running_salome_pro.htm"><b>k</b></a> <br><a name="bms_KB"></a><a name="subkey_KB"></a><a href="../files/readme.html"><b>kbytes</b></a> <br><nobr><a name="bms_KE"></a><a name="subkey_KE"></a>kernel <a href="../files/introduction_to_salome_pro.htm"><b>1</b></a> <a href="../files/running_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>key <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><a href="../files/using_left-hand_tabs.htm"><b>keyword</b></a> <br><a href="../files/using_left-hand_tabs.htm"><b>keywords</b></a> <br><a name="bms_KI"></a><a name="subkey_KI"></a><a href="../files/running_salome_pro.htm"><b>kill</b></a> <br><a href="../files/running_salome_pro.htm"><b>killall</b></a> <br><nobr>kind <a href="../files/navigating_topics.htm"><b>1</b></a> <a href="../files/getting_properties_of_the_study.htm"><b>2</b></a> </nobr><br><nobr><a name="bms_KN"></a><a name="subkey_KN"></a>know <a href="../files/installing_salome_pro.htm"><b>1</b></a> <a href="../files/using_catalog_generator.htm"><b>2</b></a> </nobr><br><a href="../files/installing_salome_pro.htm"><b>known</b></a> <br>\r
+<br><br>\r
+<a name="bm_L"></a><a name="subkey_L{"></a><a href="../files/running_salome_pro.htm"><b>l</b></a> <br><a name="bms_LA"></a><a name="subkey_LA"></a><a href="../files/about_salome_pro_architecture.htm"><b>language</b></a> <br><nobr>last <a href="../files/installing_salome_pro.htm"><b>1</b></a> <a href="../files/using_registry.htm"><b>2</b></a> <a href="../files/saving_a_study.htm"><b>3</b></a> </nobr><br><nobr>launch <a href="../files/readme.html"><b>1</b></a> <a href="../files/opening_studies.htm"><b>2</b></a> <a href="../files/installing_salome_pro.htm"><b>3</b></a> <a href="../files/using_catalog_generator.htm"><b>4</b></a> <a href="../files/setting_preferences.htm"><b>5</b></a> <a href="../files/running_salome_pro.htm"><b>6</b></a> </nobr><br><nobr>launched <a href="../files/about_salome_pro_help_system.htm"><b>1</b></a> <a href="../files/using_registry.htm"><b>2</b></a> <a href="../files/running_salome_pro.htm"><b>3</b></a> </nobr><br><nobr>launches <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>launching <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> <a href="../files/using_registry.htm"><b>3</b></a> <a href="../files/using_catalog_generator.htm"><b>4</b></a> <a href="../files/running_salome_pro.htm"><b>5</b></a> </nobr><br><nobr><a name="bms_LD"></a><a name="subkey_LD"></a>ld_library_path <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr><a name="bms_LE"></a><a name="subkey_LE"></a>lead <a href="../files/installing_salome_pro.htm"><b>1</b></a> <a href="../files/saving_a_study.htm"><b>2</b></a> </nobr><br><a href="../files/readme.html"><b>learn</b></a> <br><nobr>left <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> <a href="../files/using_left-hand_tabs.htm"><b>3</b></a> <a href="../files/salome_pro_desktop.htm"><b>4</b></a> </nobr><br><nobr>level <a href="../files/using_usecase_browser.htm"><b>1</b></a> <a href="../files/using_left-hand_tabs.htm"><b>2</b></a> <a href="../files/setting_preferences.htm"><b>3</b></a> </nobr><br><nobr><a name="bms_LI"></a><a name="subkey_LI"></a>lib <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>libcosnotify3 <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>libgl <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>libhdf5 <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>libmed <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>libomniorb3 <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>libqt <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>libqtxmlcmodule <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>libqwt <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>library <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>libs <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>libsip <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>libtcl8 <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>libtclx8 <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>libtk8 <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>libtkx8 <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>libvtkcommon <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>license <a href="../files/readme.html"><b>1</b></a> <a href="../files/copyright_notice.htm"><b>2</b></a> </nobr><br><nobr>like <a href="../files/readme.html"><b>1</b></a> <a href="../files/navigating_topics.htm"><b>2</b></a> <a href="../files/installing_salome_pro.htm"><b>3</b></a> <a href="../files/displaying_studies.htm"><b>4</b></a> <a href="../files/displaying_hiding_toolbars.htm"><b>5</b></a> <a href="../files/about_salome_pro_architecture.htm"><b>6</b></a> <a href="../files/using_usecase_browser.htm"><b>7</b></a> <a href="../files/using_object_browser.htm"><b>8</b></a> <a href="../files/using_catalog_generator.htm"><b>9</b></a> <a href="../files/saving_a_study.htm"><b>10</b></a> <a href="../files/salome_pro_desktop.htm"><b>11</b></a> </nobr><br><a href="../files/installing_salome_pro.htm"><b>limitation</b></a> <br><nobr>line <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> <a href="../files/about_salome_pro_help_system.htm"><b>3</b></a> <a href="../files/running_salome_pro.htm"><b>4</b></a> </nobr><br><nobr>link <a href="../files/navigating_topics.htm"><b>1</b></a> <a href="../files/introduction.htm"><b>2</b></a> </nobr><br><a href="../files/installing_salome_pro.htm"><b>linked</b></a> <br><a href="../files/installing_salome_pro.htm"><b>linking</b></a> <br><nobr>links <a href="../files/navigating_topics.htm"><b>1</b></a> <a href="../files/about_salome_pro_architecture.htm"><b>2</b></a> </nobr><br><a href="../files/installing_salome_pro.htm"><b>linus</b></a> <br><nobr>linux <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> <a href="../files/about_salome_pro_help_system.htm"><b>3</b></a> </nobr><br><a href="../files/readme.html"><b>linuxredhat</b></a> <br><nobr>list <a href="../files/readme.html"><b>1</b></a> <a href="../files/navigating_topics.htm"><b>2</b></a> <a href="../files/installing_salome_pro.htm"><b>3</b></a> <a href="../files/getting_properties_of_the_study.htm"><b>4</b></a> <a href="../files/using_registry.htm"><b>5</b></a> <a href="../files/using_left-hand_tabs.htm"><b>6</b></a> <a href="../files/setting_preferences.htm"><b>7</b></a> <a href="../files/running_salome_pro.htm"><b>8</b></a> </nobr><br><a href="../files/readme.html"><b>list_of_prerequisites</b></a> <br><a name="bms_LO"></a><a name="subkey_LO"></a><a href="../files/opening_studies.htm"><b>load</b></a> <br><nobr>loaded <a href="../files/using_usecase_browser.htm"><b>1</b></a> <a href="../files/using_object_browser.htm"><b>2</b></a> <a href="../files/setting_preferences.htm"><b>3</b></a> <a href="../files/salome_pro_desktop.htm"><b>4</b></a> <a href="../files/running_salome_pro.htm"><b>5</b></a> </nobr><br><a href="../files/introduction_to_iapp.htm"><b>loading</b></a> <br><nobr>locally <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><a href="../files/using_left-hand_tabs.htm"><b>locate</b></a> <br><nobr>located <a href="../files/displaying_hiding_toolbars.htm"><b>1</b></a> <a href="../files/using_object_browser.htm"><b>2</b></a> <a href="../files/running_salome_pro.htm"><b>3</b></a> </nobr><br><a href="../files/using_catalog_generator.htm"><b>location</b></a> <br><a href="../files/getting_properties_of_the_study.htm"><b>lock</b></a> <br><a href="../files/getting_properties_of_the_study.htm"><b>locked</b></a> <br><a href="../files/running_salome_pro.htm"><b>log</b></a> <br><a href="../files/running_salome_pro.htm"><b>logger</b></a> <br><a href="../files/about_salome_pro_architecture.htm"><b>long</b></a> <br><nobr>look <a href="../files/displaying_studies.htm"><b>1</b></a> <a href="../files/using_catalog_generator.htm"><b>2</b></a> </nobr><br><nobr>looks <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> <a href="../files/using_left-hand_tabs.htm"><b>3</b></a> </nobr><br><a href="../files/saving_a_study.htm"><b>lost</b></a> <br><a href="../files/installing_salome_pro.htm"><b>lot</b></a> <br><nobr>lower <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> <a href="../files/using_left-hand_tabs.htm"><b>3</b></a> </nobr><br>\r
+<br><br>\r
+<a name="bm_M"></a><a name="subkey_M{"></a><a href="../files/running_salome_pro.htm"><b>m</b></a> <br><nobr><a name="bms_MA"></a><a name="subkey_MA"></a>machine <a href="../files/installing_salome_pro.htm"><b>1</b></a> <a href="../files/using_registry.htm"><b>2</b></a> <a href="../files/saving_a_study.htm"><b>3</b></a> </nobr><br><a href="../files/about_salome_pro_architecture.htm"><b>machines</b></a> <br><a href="../files/about_salome_pro_help_system.htm"><b>macintosh</b></a> <br><a href="../files/about_salome_pro_architecture.htm"><b>macro</b></a> <br><nobr>main <a href="../files/readme.html"><b>1</b></a> <a href="../files/opening_studies.htm"><b>2</b></a> <a href="../files/getting_properties_of_the_study.htm"><b>3</b></a> <a href="../files/editing_studies.htm"><b>4</b></a> <a href="../files/displaying_studies.htm"><b>5</b></a> <a href="../files/displaying_hiding_toolbars.htm"><b>6</b></a> <a href="../files/creating_a_new_study.htm"><b>7</b></a> <a href="../files/using_registry.htm"><b>8</b></a> <a href="../files/using_catalog_generator.htm"><b>9</b></a> <a href="../files/setting_preferences.htm"><b>10</b></a> <a href="../files/saving_a_study.htm"><b>11</b></a> <a href="../files/salome_pro_desktop.htm"><b>12</b></a> </nobr><br><nobr>make <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> <a href="../files/displaying_studies.htm"><b>3</b></a> <a href="../files/creating_a_new_study.htm"><b>4</b></a> </nobr><br><nobr>management <a href="../files/introduction_to_iapp.htm"><b>1</b></a> <a href="../files/salome_pro_desktop.htm"><b>2</b></a> </nobr><br><a href="../files/about_salome_pro_help_system.htm"><b>manual</b></a> <br><nobr>manually <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><a href="../files/setting_preferences.htm"><b>manuals</b></a> <br><a href="../files/about_salome_pro_architecture.htm"><b>mapped</b></a> <br><nobr>mark <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> <a href="../files/displaying_hiding_toolbars.htm"><b>3</b></a> </nobr><br><nobr>marked <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> <a href="../files/setting_preferences.htm"><b>3</b></a> </nobr><br><a href="../files/introduction.htm"><b>market</b></a> <br><a href="../files/about_salome_pro_architecture.htm"><b>massively</b></a> <br><a href="../files/readme.html"><b>master</b></a> <br><a href="../files/using_left-hand_tabs.htm"><b>matches</b></a> <br><a href="../files/copyright_notice.htm"><b>material</b></a> <br><a href="../files/creating_a_new_study.htm"><b>maximize</b></a> <br><nobr>maximized <a href="../files/displaying_studies.htm"><b>1</b></a> <a href="../files/salome_pro_desktop.htm"><b>2</b></a> </nobr><br><nobr><a name="bms_ME"></a><a name="subkey_ME"></a>means <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> <a href="../files/getting_started2.htm"><b>3</b></a> <a href="../files/copyright_notice.htm"><b>4</b></a> </nobr><br><a href="../files/copyright_notice.htm"><b>mechanical</b></a> <br><nobr>med2home <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><a href="../files/introduction.htm"><b>meet</b></a> <br><a href="../files/installing_salome_pro.htm"><b>mentioned</b></a> <br><nobr>menu <a href="../files/opening_studies.htm"><b>1</b></a> <a href="../files/navigating_topics.htm"><b>2</b></a> <a href="../files/getting_properties_of_the_study.htm"><b>3</b></a> <a href="../files/editing_studies.htm"><b>4</b></a> <a href="../files/displaying_studies.htm"><b>5</b></a> <a href="../files/displaying_hiding_toolbars.htm"><b>6</b></a> <a href="../files/creating_a_new_study.htm"><b>7</b></a> <a href="../files/using_usecase_browser.htm"><b>8</b></a> <a href="../files/using_registry.htm"><b>9</b></a> <a href="../files/using_object_browser.htm"><b>10</b></a> <a href="../files/using_catalog_generator.htm"><b>11</b></a> <a href="../files/setting_preferences.htm"><b>12</b></a> <a href="../files/saving_a_study.htm"><b>13</b></a> <a href="../files/salome_pro_desktop.htm"><b>14</b></a> </nobr><br><nobr>menus <a href="../files/introduction_to_iapp.htm"><b>1</b></a> <a href="../files/salome_pro_desktop.htm"><b>2</b></a> </nobr><br><nobr>mesa <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>mesa_home <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><a href="../files/introduction_to_salome_pro.htm"><b>meshes</b></a> <br><a href="../files/introduction_to_salome_pro.htm"><b>meshing</b></a> <br><nobr>message <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> <a href="../files/getting_properties_of_the_study.htm"><b>3</b></a> <a href="../files/using_registry.htm"><b>4</b></a> </nobr><br><nobr>messages <a href="../files/introduction_to_iapp.htm"><b>1</b></a> <a href="../files/setting_preferences.htm"><b>2</b></a> <a href="../files/salome_pro_desktop.htm"><b>3</b></a> <a href="../files/running_salome_pro.htm"><b>4</b></a> </nobr><br><nobr><a name="bms_MI"></a><a name="subkey_MI"></a>middle <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><a href="../files/installing_salome_pro.htm"><b>mind</b></a> <br><nobr>minimized <a href="../files/creating_a_new_study.htm"><b>1</b></a> <a href="../files/salome_pro_desktop.htm"><b>2</b></a> </nobr><br><a href="../files/readme.html"><b>missed</b></a> <br><a href="../files/salome_pro_desktop.htm"><b>mistakes</b></a> <br><nobr><a name="bms_MO"></a><a name="subkey_MO"></a>mode <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> <a href="../files/about_salome_pro_architecture.htm"><b>3</b></a> <a href="../files/running_salome_pro.htm"><b>4</b></a> </nobr><br><a href="../files/about_salome_pro_architecture.htm"><b>model</b></a> <br><nobr>modeling <a href="../files/introduction_to_salome_pro.htm"><b>1</b></a> <a href="../files/introduction.htm"><b>2</b></a> <a href="../files/about_salome_pro_architecture.htm"><b>3</b></a> </nobr><br><a href="../files/introduction.htm"><b>modern</b></a> <br><a href="../files/readme.html"><b>modes</b></a> <br><nobr>modification <a href="../files/getting_properties_of_the_study.htm"><b>1</b></a> <a href="../files/about_salome_pro_architecture.htm"><b>2</b></a> </nobr><br><a href="../files/getting_properties_of_the_study.htm"><b>modifications</b></a> <br><nobr>modify <a href="../files/readme.html"><b>1</b></a> <a href="../files/using_usecase_browser.htm"><b>2</b></a> </nobr><br><a href="../files/readme.html"><b>modifying</b></a> <br><nobr>module <a href="../files/introduction_to_salome_pro.htm"><b>1</b></a> <a href="../files/using_catalog_generator.htm"><b>2</b></a> <a href="../files/running_salome_pro.htm"><b>3</b></a> </nobr><br><a href="../files/running_salome_pro.htm"><b>module1</b></a> <br><a href="../files/running_salome_pro.htm"><b>module2</b></a> <br><nobr>modules <a href="../files/introduction_to_salome_pro.htm"><b>1</b></a> <a href="../files/about_salome_pro_help_system.htm"><b>2</b></a> <a href="../files/using_catalog_generator.htm"><b>3</b></a> <a href="../files/running_salome_pro.htm"><b>4</b></a> </nobr><br><a href="../files/readme.html"><b>moment</b></a> <br><a href="../files/displaying_hiding_toolbars.htm"><b>mouse</b></a> <br><a href="../files/setting_preferences.htm"><b>mozilla</b></a> <br><nobr><a name="bms_MT"></a><a name="subkey_MT"></a>mt <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr><a name="bms_MU"></a><a name="subkey_MU"></a>much <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>multi <a href="../files/introduction_to_iapp.htm"><b>1</b></a> <a href="../files/getting_started2.htm"><b>2</b></a> <a href="../files/using_left-hand_tabs.htm"><b>3</b></a> <a href="../files/using_catalog_generator.htm"><b>4</b></a> </nobr><br><nobr>multifile <a href="../files/setting_preferences.htm"><b>1</b></a> <a href="../files/saving_a_study.htm"><b>2</b></a> </nobr><br><a href="../files/saving_a_study.htm"><b>multiple</b></a> <br><a href="../files/about_salome_pro_architecture.htm"><b>multitier</b></a> <br><nobr>must <a href="../files/introduction_to_salome_pro.htm"><b>1</b></a> <a href="../files/introduction.htm"><b>2</b></a> <a href="../files/installing_salome_pro.htm"><b>3</b></a> <a href="../files/about_salome_pro_architecture.htm"><b>4</b></a> </nobr><br><br><br></p><p class="ftsbody" align="center"><a href="whlstf5.htm" target="_self" title="previous search group"><b>>></b></a>\r
+\r
+</body>\r
+\r
+</html>\r
+\r
--- /dev/null
+<html>\r
+<head>\r
+<title>Search Words List</title>\r
+<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
+<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">\r
+<meta name "description" content="WebHelp 2002">\r
+<base target="bsscright">\r
+<style>\r
+<!--\r
+body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}\r
+\r
+A:link {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
+A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
+A:active {background-color:#cccccc;}\r
+A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal; text-decoration:underline; }\r
+\r
+.tabs {background-color:#c0c0c0;}\r
+.ftsheader {margin-left:10pt; margin-top:0pt;}\r
+.ftsbody {margin-left:10pt; margin-top:0pt;}\r
+.inactive {color:#666666;}\r
+.ftsheader {background-color:White; } \r
+\r
+body {background-color:White; } \r
+p {color:Black; } p {font-family:Tahoma; } p {font-size:8pt; } p {font-style:Normal; } p {text-decoration:none; } \r
+A:link {color:Black; } A:link {font-family:Tahoma; } A:link {font-size:8pt; } A:link {font-style:Normal; } A:link {text-decoration:none; } \r
+A:visited {color:Black; } A:visited {font-family:Tahoma; } A:visited {font-size:8pt; } A:visited {font-style:Normal; } A:visited {text-decoration:none; } \r
+A:active {background-color:Silver; } \r
+A:hover {color:Navy; } A:hover {font-family:Tahoma; } A:hover {font-size:8pt; } A:hover {font-style:Normal; } A:hover {text-decoration:underline; } \r
+\r
+-->\r
+</style>\r
+</head>\r
+<body marginheight="0" marginwidth="0">\r
+<p class="ftsbody" align="center"><a href="whlstf4.htm" target="_self" title="previous search group"><b><<</b></a><br><br></p>\r
+<p class="ftsbody">\r
+\r
+\r
+<nobr><a name="bm_N"></a><a name="subkey_N{"></a>n <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr><a name="bms_NA"></a><a name="subkey_NA"></a>name <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> <a href="../files/getting_properties_of_the_study.htm"><b>3</b></a> <a href="../files/displaying_studies.htm"><b>4</b></a> <a href="../files/creating_a_new_study.htm"><b>5</b></a> <a href="../files/using_usecase_browser.htm"><b>6</b></a> <a href="../files/using_registry.htm"><b>7</b></a> <a href="../files/using_object_browser.htm"><b>8</b></a> <a href="../files/using_catalog_generator.htm"><b>9</b></a> <a href="../files/setting_preferences.htm"><b>10</b></a> <a href="../files/saving_a_study.htm"><b>11</b></a> </nobr><br><nobr>names <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> <a href="../files/copyright_notice.htm"><b>3</b></a> </nobr><br><nobr>native <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><a href="../files/about_salome_pro_architecture.htm"><b>natural</b></a> <br><nobr>navigate <a href="../files/readme.html"><b>1</b></a> <a href="../files/navigating_topics.htm"><b>2</b></a> <a href="../files/installing_salome_pro.htm"><b>3</b></a> </nobr><br><a href="../files/navigating_topics.htm"><b>navigating</b></a> <br><nobr>navigation <a href="../files/navigating_topics.htm"><b>1</b></a> <a href="../files/about_salome_pro_help_system.htm"><b>2</b></a> </nobr><br><a href="../files/about_salome_pro_help_system.htm"><b>navigator</b></a> <br><nobr><a name="bms_NE"></a><a name="subkey_NE"></a>necessary <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> <a href="../files/running_salome_pro.htm"><b>3</b></a> </nobr><br><nobr>need <a href="../files/readme.html"><b>1</b></a> <a href="../files/navigating_topics.htm"><b>2</b></a> <a href="../files/installing_salome_pro.htm"><b>3</b></a> </nobr><br><a href="../files/installing_salome_pro.htm"><b>needed</b></a> <br><nobr>netscape <a href="../files/about_salome_pro_help_system.htm"><b>1</b></a> <a href="../files/setting_preferences.htm"><b>2</b></a> </nobr><br><nobr>new <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> <a href="../files/getting_started2.htm"><b>3</b></a> <a href="../files/getting_properties_of_the_study.htm"><b>4</b></a> <a href="../files/creating_a_new_study.htm"><b>5</b></a> <a href="../files/about_salome_pro_architecture.htm"><b>6</b></a> <a href="../files/using_usecase_browser.htm"><b>7</b></a> <a href="../files/using_catalog_generator.htm"><b>8</b></a> <a href="../files/setting_preferences.htm"><b>9</b></a> <a href="../files/saving_a_study.htm"><b>10</b></a> </nobr><br><a href="../files/installing_salome_pro.htm"><b>newly</b></a> <br><nobr>next <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> <a href="../files/getting_properties_of_the_study.htm"><b>3</b></a> <a href="../files/using_catalog_generator.htm"><b>4</b></a> <a href="../files/setting_preferences.htm"><b>5</b></a> </nobr><br><a name="bms_NO"></a><a name="subkey_NO"></a><a href="../files/using_catalog_generator.htm"><b>nodes</b></a> <br><nobr>note <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>notes <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><a href="../files/copyright_notice.htm"><b>notice</b></a> <br><a href="../files/about_salome_pro_architecture.htm"><b>noticeably</b></a> <br><nobr>notifd <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><a href="../files/getting_started2.htm"><b>notion</b></a> <br><nobr><a name="bms_NU"></a><a name="subkey_NU"></a>number <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> <a href="../files/using_registry.htm"><b>3</b></a> <a href="../files/setting_preferences.htm"><b>4</b></a> </nobr><br><nobr>numeric <a href="../files/readme.html"><b>1</b></a> <a href="../files/introduction_to_salome_pro.htm"><b>2</b></a> <a href="../files/introduction.htm"><b>3</b></a> <a href="../files/installing_salome_pro.htm"><b>4</b></a> </nobr><br><nobr>numerical <a href="../files/getting_started2.htm"><b>1</b></a> <a href="../files/about_salome_pro_architecture.htm"><b>2</b></a> </nobr><br>\r
+<br><br>\r
+<nobr><a name="bm_O"></a><a name="subkey_OB"></a>object <a href="../files/opening_studies.htm"><b>1</b></a> <a href="../files/introduction_to_iapp.htm"><b>2</b></a> <a href="../files/editing_studies.htm"><b>3</b></a> <a href="../files/using_usecase_browser.htm"><b>4</b></a> <a href="../files/using_object_browser.htm"><b>5</b></a> <a href="../files/setting_preferences.htm"><b>6</b></a> <a href="../files/salome_pro_desktop.htm"><b>7</b></a> </nobr><br><a href="../files/about_salome_pro_architecture.htm"><b>objectives</b></a> <br><nobr>objects <a href="../files/opening_studies.htm"><b>1</b></a> <a href="../files/introduction_to_iapp.htm"><b>2</b></a> <a href="../files/about_salome_pro_architecture.htm"><b>3</b></a> <a href="../files/using_usecase_browser.htm"><b>4</b></a> <a href="../files/using_object_browser.htm"><b>5</b></a> <a href="../files/setting_preferences.htm"><b>6</b></a> <a href="../files/salome_pro_desktop.htm"><b>7</b></a> </nobr><br><nobr>obligatory <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr><a name="bms_OC"></a><a name="subkey_OC"></a>occ <a href="../files/introduction_to_iapp.htm"><b>1</b></a> <a href="../files/creating_a_new_study.htm"><b>2</b></a> <a href="../files/setting_preferences.htm"><b>3</b></a> <a href="../files/salome_pro_desktop.htm"><b>4</b></a> </nobr><br><a href="../files/readme.html"><b>occupies</b></a> <br><nobr><a name="bms_OF"></a><a name="subkey_OF"></a>off <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><a href="../files/about_salome_pro_architecture.htm"><b>offered</b></a> <br><a href="../files/introduction.htm"><b>often</b></a> <br><nobr><a name="bms_OK"></a><a name="subkey_OK"></a>ok <a href="../files/readme.html"><b>1</b></a> <a href="../files/opening_studies.htm"><b>2</b></a> <a href="../files/installing_salome_pro.htm"><b>3</b></a> </nobr><br><a name="bms_OM"></a><a name="subkey_OM"></a><a href="../files/about_salome_pro_architecture.htm"><b>omg</b></a> <br><a href="../files/readme.html"><b>omit</b></a> <br><nobr>omni <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>omninotify <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>omniorb <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>omniorbdir <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>omniorbpy <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><a name="bms_ON"></a><a name="subkey_ON"></a><a href="../files/installing_salome_pro.htm"><b>once</b></a> <br><nobr>one <a href="../files/readme.html"><b>1</b></a> <a href="../files/opening_studies.htm"><b>2</b></a> <a href="../files/navigating_topics.htm"><b>3</b></a> <a href="../files/introduction_to_iapp.htm"><b>4</b></a> <a href="../files/installing_salome_pro.htm"><b>5</b></a> <a href="../files/editing_studies.htm"><b>6</b></a> <a href="../files/about_salome_pro_architecture.htm"><b>7</b></a> <a href="../files/using_usecase_browser.htm"><b>8</b></a> <a href="../files/using_object_browser.htm"><b>9</b></a> <a href="../files/using_left-hand_tabs.htm"><b>10</b></a> <a href="../files/using_catalog_generator.htm"><b>11</b></a> <a href="../files/setting_preferences.htm"><b>12</b></a> <a href="../files/saving_a_study.htm"><b>13</b></a> <a href="../files/running_salome_pro.htm"><b>14</b></a> </nobr><br><a href="../files/using_left-hand_tabs.htm"><b>online</b></a> <br><a href="../files/installing_salome_pro.htm"><b>onto</b></a> <br><nobr><a name="bms_OP"></a><a name="subkey_OP"></a>open <a href="../files/opening_studies.htm"><b>1</b></a> <a href="../files/navigating_topics.htm"><b>2</b></a> <a href="../files/introduction_to_salome_pro.htm"><b>3</b></a> <a href="../files/getting_started2.htm"><b>4</b></a> <a href="../files/copyright_notice.htm"><b>5</b></a> <a href="../files/using_left-hand_tabs.htm"><b>6</b></a> <a href="../files/using_catalog_generator.htm"><b>7</b></a> <a href="../files/setting_preferences.htm"><b>8</b></a> <a href="../files/saving_a_study.htm"><b>9</b></a> <a href="../files/running_salome_pro.htm"><b>10</b></a> </nobr><br><nobr>opengl <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>opening <a href="../files/opening_studies.htm"><b>1</b></a> <a href="../files/saving_a_study.htm"><b>2</b></a> </nobr><br><nobr>opens <a href="../files/navigating_topics.htm"><b>1</b></a> <a href="../files/using_left-hand_tabs.htm"><b>2</b></a> </nobr><br><a href="../files/introduction.htm"><b>operability</b></a> <br><nobr>operation <a href="../files/editing_studies.htm"><b>1</b></a> <a href="../files/using_usecase_browser.htm"><b>2</b></a> <a href="../files/saving_a_study.htm"><b>3</b></a> </nobr><br><nobr>operations <a href="../files/getting_started2.htm"><b>1</b></a> <a href="../files/salome_pro_desktop.htm"><b>2</b></a> </nobr><br><a href="../files/introduction.htm"><b>optimize</b></a> <br><nobr>option <a href="../files/readme.html"><b>1</b></a> <a href="../files/opening_studies.htm"><b>2</b></a> <a href="../files/installing_salome_pro.htm"><b>3</b></a> <a href="../files/getting_properties_of_the_study.htm"><b>4</b></a> <a href="../files/editing_studies.htm"><b>5</b></a> <a href="../files/setting_preferences.htm"><b>6</b></a> <a href="../files/saving_a_study.htm"><b>7</b></a> </nobr><br><nobr>optional <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>options <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> <a href="../files/displaying_studies.htm"><b>3</b></a> <a href="../files/using_usecase_browser.htm"><b>4</b></a> <a href="../files/using_object_browser.htm"><b>5</b></a> <a href="../files/saving_a_study.htm"><b>6</b></a> <a href="../files/salome_pro_desktop.htm"><b>7</b></a> <a href="../files/running_salome_pro.htm"><b>8</b></a> </nobr><br><nobr><a name="bms_OR"></a><a name="subkey_OR"></a>order <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><a href="../files/about_salome_pro_architecture.htm"><b>org</b></a> <br><a href="../files/introduction_to_salome_pro.htm"><b>originality</b></a> <br><a name="bms_OS"></a><a name="subkey_OS"></a><a href="../files/readme.html"><b>os</b></a> <br><a href="../files/readme.html"><b>os_version</b></a> <br><a name="bms_OT"></a><a name="subkey_OT"></a><a href="../files/about_salome_pro_help_system.htm"><b>others</b></a> <br><nobr>otherwise <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> <a href="../files/copyright_notice.htm"><b>3</b></a> <a href="../files/saving_a_study.htm"><b>4</b></a> </nobr><br><a name="bms_OU"></a><a name="subkey_OU"></a><a href="../files/salome_pro_desktop.htm"><b>outlined</b></a> <br><nobr>output <a href="../files/readme.html"><b>1</b></a> <a href="../files/introduction_to_iapp.htm"><b>2</b></a> <a href="../files/installing_salome_pro.htm"><b>3</b></a> <a href="../files/setting_preferences.htm"><b>4</b></a> <a href="../files/salome_pro_desktop.htm"><b>5</b></a> </nobr><br><a name="bms_OV"></a><a name="subkey_OV"></a><a href="../files/readme.html"><b>overloads</b></a> <br><nobr><a name="bms_OW"></a><a name="subkey_OW"></a>own <a href="../files/readme.html"><b>1</b></a> <a href="../files/introduction_to_salome_pro.htm"><b>2</b></a> <a href="../files/using_usecase_browser.htm"><b>3</b></a> <a href="../files/setting_preferences.htm"><b>4</b></a> </nobr><br>\r
+<br><br>\r
+<a name="bm_P"></a><a name="subkey_P{"></a><a href="../files/running_salome_pro.htm"><b>p</b></a> <br><nobr><a name="bms_PA"></a><a name="subkey_PA"></a>package <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> <a href="../files/using_catalog_generator.htm"><b>3</b></a> <a href="../files/running_salome_pro.htm"><b>4</b></a> </nobr><br><nobr>packages <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>page <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>pages <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> <a href="../files/using_left-hand_tabs.htm"><b>3</b></a> </nobr><br><nobr>pane <a href="../files/navigating_topics.htm"><b>1</b></a> <a href="../files/using_left-hand_tabs.htm"><b>2</b></a> </nobr><br><a href="../files/salome_pro_desktop.htm"><b>panning</b></a> <br><a href="../files/about_salome_pro_architecture.htm"><b>parallel</b></a> <br><nobr>parameter <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> <a href="../files/using_catalog_generator.htm"><b>3</b></a> </nobr><br><nobr>parameters <a href="../files/installing_salome_pro.htm"><b>1</b></a> <a href="../files/about_salome_pro_architecture.htm"><b>2</b></a> <a href="../files/using_catalog_generator.htm"><b>3</b></a> </nobr><br><nobr>part <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> <a href="../files/copyright_notice.htm"><b>3</b></a> </nobr><br><a href="../files/saving_a_study.htm"><b>particular</b></a> <br><a href="../files/introduction.htm"><b>particularly</b></a> <br><a href="../files/salome_pro_desktop.htm"><b>parts</b></a> <br><nobr>pass <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>paste <a href="../files/editing_studies.htm"><b>1</b></a> <a href="../files/salome_pro_desktop.htm"><b>2</b></a> </nobr><br><a href="../files/salome_pro_desktop.htm"><b>pasting</b></a> <br><nobr>path <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><a name="bms_PC"></a><a name="subkey_PC"></a><a href="../files/about_salome_pro_architecture.htm"><b>pc</b></a> <br><nobr><a name="bms_PE"></a><a name="subkey_PE"></a>performance <a href="../files/introduction.htm"><b>1</b></a> <a href="../files/getting_started2.htm"><b>2</b></a> <a href="../files/about_salome_pro_architecture.htm"><b>3</b></a> <a href="../files/salome_pro_desktop.htm"><b>4</b></a> </nobr><br><nobr>permission <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> <a href="../files/copyright_notice.htm"><b>3</b></a> </nobr><br><a href="../files/introduction.htm"><b>perpetuity</b></a> <br><a name="bms_PH"></a><a name="subkey_PH"></a><a href="../files/about_salome_pro_architecture.htm"><b>phenomena</b></a> <br><a href="../files/copyright_notice.htm"><b>photocopying</b></a> <br><a href="../files/using_left-hand_tabs.htm"><b>phrases</b></a> <br><nobr>physical <a href="../files/introduction_to_salome_pro.htm"><b>1</b></a> <a href="../files/introduction.htm"><b>2</b></a> <a href="../files/about_salome_pro_architecture.htm"><b>3</b></a> </nobr><br><nobr><a name="bms_PI"></a><a name="subkey_PI"></a>pick <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><a href="../files/installing_salome_pro.htm"><b>picking</b></a> <br><nobr>picks <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>picture <a href="../files/getting_properties_of_the_study.htm"><b>1</b></a> <a href="../files/using_usecase_browser.htm"><b>2</b></a> </nobr><br><a href="../files/using_registry.htm"><b>pid</b></a> <br><a href="../files/about_salome_pro_architecture.htm"><b>piece</b></a> <br><nobr><a name="bms_PL"></a><a name="subkey_PL"></a>place <a href="../files/readme.html"><b>1</b></a> <a href="../files/displaying_hiding_toolbars.htm"><b>2</b></a> </nobr><br><nobr>platform <a href="../files/readme.html"><b>1</b></a> <a href="../files/introduction_to_salome_pro.htm"><b>2</b></a> <a href="../files/introduction_to_iapp.htm"><b>3</b></a> <a href="../files/introduction.htm"><b>4</b></a> <a href="../files/installing_salome_pro.htm"><b>5</b></a> <a href="../files/getting_started2.htm"><b>6</b></a> <a href="../files/about_salome_pro_help_system.htm"><b>7</b></a> <a href="../files/about_salome_pro_architecture.htm"><b>8</b></a> <a href="../files/using_registry.htm"><b>9</b></a> <a href="../files/using_catalog_generator.htm"><b>10</b></a> <a href="../files/saving_a_study.htm"><b>11</b></a> <a href="../files/salome_pro_desktop.htm"><b>12</b></a> <a href="../files/running_salome_pro.htm"><b>13</b></a> </nobr><br><a href="../files/readme.html"><b>platforms</b></a> <br><nobr>please <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>plot2d <a href="../files/introduction_to_iapp.htm"><b>1</b></a> <a href="../files/creating_a_new_study.htm"><b>2</b></a> <a href="../files/setting_preferences.htm"><b>3</b></a> <a href="../files/salome_pro_desktop.htm"><b>4</b></a> </nobr><br><a name="bms_PN"></a><a name="subkey_PN"></a><a href="../files/salome_pro_desktop.htm"><b>png</b></a> <br><a name="bms_PO"></a><a name="subkey_PO"></a><a href="../files/installing_salome_pro.htm"><b>point</b></a> <br><nobr>pop <a href="../files/opening_studies.htm"><b>1</b></a> <a href="../files/navigating_topics.htm"><b>2</b></a> <a href="../files/using_usecase_browser.htm"><b>3</b></a> <a href="../files/using_object_browser.htm"><b>4</b></a> <a href="../files/salome_pro_desktop.htm"><b>5</b></a> </nobr><br><a href="../files/navigating_topics.htm"><b>popup</b></a> <br><a href="../files/navigating_topics.htm"><b>popups</b></a> <br><a href="../files/running_salome_pro.htm"><b>port</b></a> <br><a href="../files/introduction.htm"><b>portions</b></a> <br><a href="../files/running_salome_pro.htm"><b>portkill</b></a> <br><a href="../files/salome_pro_desktop.htm"><b>position</b></a> <br><nobr>possibility <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> <a href="../files/about_salome_pro_architecture.htm"><b>3</b></a> <a href="../files/using_catalog_generator.htm"><b>4</b></a> <a href="../files/running_salome_pro.htm"><b>5</b></a> </nobr><br><nobr>possible <a href="../files/readme.html"><b>1</b></a> <a href="../files/using_usecase_browser.htm"><b>2</b></a> <a href="../files/using_object_browser.htm"><b>3</b></a> </nobr><br><nobr>post <a href="../files/introduction_to_salome_pro.htm"><b>1</b></a> <a href="../files/introduction.htm"><b>2</b></a> </nobr><br><nobr><a name="bms_PR"></a><a name="subkey_PR"></a>pre <a href="../files/introduction_to_salome_pro.htm"><b>1</b></a> <a href="../files/introduction.htm"><b>2</b></a> </nobr><br><nobr>precompiled <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><a href="../files/about_salome_pro_architecture.htm"><b>predefined</b></a> <br><a href="../files/installing_salome_pro.htm"><b>prefer</b></a> <br><a href="../files/running_salome_pro.htm"><b>preferable</b></a> <br><nobr>preferences <a href="../files/using_object_browser.htm"><b>1</b></a> <a href="../files/setting_preferences.htm"><b>2</b></a> </nobr><br><nobr>prefix <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>preinstalled <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>preliminary <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>prerequisite <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>prerequisites <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><a href="../files/salome_pro_desktop.htm"><b>presentation</b></a> <br><a href="../files/salome_pro_desktop.htm"><b>presentations</b></a> <br><nobr>press <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>pressing <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>previous <a href="../files/readme.html"><b>1</b></a> <a href="../files/opening_studies.htm"><b>2</b></a> <a href="../files/installing_salome_pro.htm"><b>3</b></a> </nobr><br><nobr>previously <a href="../files/readme.html"><b>1</b></a> <a href="../files/opening_studies.htm"><b>2</b></a> <a href="../files/installing_salome_pro.htm"><b>3</b></a> <a href="../files/saving_a_study.htm"><b>4</b></a> </nobr><br><nobr>print <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> <a href="../files/running_salome_pro.htm"><b>3</b></a> </nobr><br><a href="../files/readme.html"><b>print_env</b></a> <br><nobr>problem <a href="../files/readme.html"><b>1</b></a> <a href="../files/introduction.htm"><b>2</b></a> <a href="../files/installing_salome_pro.htm"><b>3</b></a> </nobr><br><nobr>problems <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>procedure <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> <a href="../files/running_salome_pro.htm"><b>3</b></a> </nobr><br><nobr>proceed <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> <a href="../files/getting_started2.htm"><b>3</b></a> </nobr><br><nobr>process <a href="../files/readme.html"><b>1</b></a> <a href="../files/introduction.htm"><b>2</b></a> <a href="../files/installing_salome_pro.htm"><b>3</b></a> <a href="../files/using_registry.htm"><b>4</b></a> </nobr><br><a href="../files/using_registry.htm"><b>processes</b></a> <br><nobr>processing <a href="../files/readme.html"><b>1</b></a> <a href="../files/introduction_to_salome_pro.htm"><b>2</b></a> <a href="../files/installing_salome_pro.htm"><b>3</b></a> </nobr><br><nobr>processors <a href="../files/introduction.htm"><b>1</b></a> <a href="../files/about_salome_pro_architecture.htm"><b>2</b></a> </nobr><br><a href="../files/salome_pro_desktop.htm"><b>produced</b></a> <br><nobr>product <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> <a href="../files/copyright_notice.htm"><b>3</b></a> </nobr><br><a href="../files/readme.html"><b>product_name</b></a> <br><a href="../files/readme.html"><b>product_script_name</b></a> <br><a href="../files/readme.html"><b>product_version</b></a> <br><a href="../files/about_salome_pro_architecture.htm"><b>productivity</b></a> <br><nobr>products <a href="../files/readme.html"><b>1</b></a> <a href="../files/introduction.htm"><b>2</b></a> <a href="../files/installing_salome_pro.htm"><b>3</b></a> <a href="../files/running_salome_pro.htm"><b>4</b></a> </nobr><br><a href="../files/readme.html"><b>products_directory</b></a> <br><nobr>profile <a href="../files/installing_salome_pro.htm"><b>1</b></a> <a href="../files/running_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>program <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><a href="../files/about_salome_pro_architecture.htm"><b>programming</b></a> <br><nobr>progress <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>prompted <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><a href="../files/running_salome_pro.htm"><b>prompting</b></a> <br><nobr>proper <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><a href="../files/readme.html"><b>properly</b></a> <br><nobr>properties <a href="../files/introduction_to_salome_pro.htm"><b>1</b></a> <a href="../files/getting_properties_of_the_study.htm"><b>2</b></a> </nobr><br><nobr>proposed <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><a href="../files/copyright_notice.htm"><b>proprietary</b></a> <br><a href="../files/readme.html"><b>provide</b></a> <br><nobr>provided <a href="../files/readme.html"><b>1</b></a> <a href="../files/about_salome_pro_architecture.htm"><b>2</b></a> <a href="../files/using_catalog_generator.htm"><b>3</b></a> <a href="../files/running_salome_pro.htm"><b>4</b></a> </nobr><br><nobr>provides <a href="../files/readme.html"><b>1</b></a> <a href="../files/introduction_to_iapp.htm"><b>2</b></a> <a href="../files/introduction.htm"><b>3</b></a> <a href="../files/about_salome_pro_architecture.htm"><b>4</b></a> <a href="../files/using_catalog_generator.htm"><b>5</b></a> </nobr><br><nobr>providing <a href="../files/using_registry.htm"><b>1</b></a> <a href="../files/using_left-hand_tabs.htm"><b>2</b></a> </nobr><br><br><br></p><p class="ftsbody" align="center"><a href="whlstf6.htm" target="_self" title="previous search group"><b>>></b></a>\r
+\r
+</body>\r
+\r
+</html>\r
+\r
--- /dev/null
+<html>\r
+<head>\r
+<title>Search Words List</title>\r
+<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
+<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">\r
+<meta name "description" content="WebHelp 2002">\r
+<base target="bsscright">\r
+<style>\r
+<!--\r
+body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}\r
+\r
+A:link {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
+A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
+A:active {background-color:#cccccc;}\r
+A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal; text-decoration:underline; }\r
+\r
+.tabs {background-color:#c0c0c0;}\r
+.ftsheader {margin-left:10pt; margin-top:0pt;}\r
+.ftsbody {margin-left:10pt; margin-top:0pt;}\r
+.inactive {color:#666666;}\r
+.ftsheader {background-color:White; } \r
+\r
+body {background-color:White; } \r
+p {color:Black; } p {font-family:Tahoma; } p {font-size:8pt; } p {font-style:Normal; } p {text-decoration:none; } \r
+A:link {color:Black; } A:link {font-family:Tahoma; } A:link {font-size:8pt; } A:link {font-style:Normal; } A:link {text-decoration:none; } \r
+A:visited {color:Black; } A:visited {font-family:Tahoma; } A:visited {font-size:8pt; } A:visited {font-style:Normal; } A:visited {text-decoration:none; } \r
+A:active {background-color:Silver; } \r
+A:hover {color:Navy; } A:hover {font-family:Tahoma; } A:hover {font-size:8pt; } A:hover {font-style:Normal; } A:hover {text-decoration:underline; } \r
+\r
+-->\r
+</style>\r
+</head>\r
+<body marginheight="0" marginwidth="0">\r
+<p class="ftsbody" align="center"><a href="whlstf5.htm" target="_self" title="previous search group"><b><<</b></a><br><br></p>\r
+<p class="ftsbody">\r
+<nobr><a name="bms_PU"></a><a name="subkey_PU"></a>purpose <a href="../files/installing_salome_pro.htm"><b>1</b></a> <a href="../files/getting_started2.htm"><b>2</b></a> </nobr><br><a href="../files/using_object_browser.htm"><b>purposes</b></a> <br><nobr><a name="bms_PY"></a><a name="subkey_PY"></a>py <a href="../files/readme.html"><b>1</b></a> <a href="../files/running_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>pyqt <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>pyqtdir <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>python <a href="../files/readme.html"><b>1</b></a> <a href="../files/introduction_to_iapp.htm"><b>2</b></a> <a href="../files/installing_salome_pro.htm"><b>3</b></a> <a href="../files/about_salome_pro_architecture.htm"><b>4</b></a> <a href="../files/setting_preferences.htm"><b>5</b></a> <a href="../files/salome_pro_desktop.htm"><b>6</b></a> <a href="../files/running_salome_pro.htm"><b>7</b></a> </nobr><br><nobr>python2 <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>pythonhome <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br>\r
+<br><br>\r
+<nobr><a name="bm_Q"></a><a name="subkey_QT"></a>qt <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>qtdir <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><a name="bms_QU"></a><a name="subkey_QU"></a><a href="../files/introduction.htm"><b>quality</b></a> <br><nobr>question <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>quick <a href="../files/using_usecase_browser.htm"><b>1</b></a> <a href="../files/using_object_browser.htm"><b>2</b></a> <a href="../files/setting_preferences.htm"><b>3</b></a> </nobr><br><a href="../files/readme.html"><b>quickly</b></a> <br><a href="../files/saving_a_study.htm"><b>quit</b></a> <br><nobr>quits <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><a href="../files/readme.html"><b>quoted</b></a> <br><nobr><a name="bms_QW"></a><a name="subkey_QW"></a>qwt <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>qwthome <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br>\r
+<br><br>\r
+<nobr><a name="bm_R"></a><a name="subkey_RA"></a>radiobuttons <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>raise <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><a href="../files/about_salome_pro_architecture.htm"><b>rapidly</b></a> <br><a href="../files/copyright_notice.htm"><b>razel</b></a> <br><nobr><a name="bms_RC"></a><a name="subkey_RC"></a>rc2 <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><a name="bms_RE"></a><a name="subkey_RE"></a><a href="../files/navigating_topics.htm"><b>re</b></a> <br><a href="../files/introduction.htm"><b>reactivity</b></a> <br><nobr>read <a href="../files/readme.html"><b>1</b></a> <a href="../files/navigating_topics.htm"><b>2</b></a> <a href="../files/installing_salome_pro.htm"><b>3</b></a> </nobr><br><a href="../files/navigating_topics.htm"><b>reading</b></a> <br><a href="../files/readme.html"><b>readme</b></a> <br><a href="../files/getting_started2.htm"><b>realize</b></a> <br><nobr>recommended <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><a href="../files/getting_properties_of_the_study.htm"><b>record</b></a> <br><a href="../files/copyright_notice.htm"><b>recording</b></a> <br><a href="../files/salome_pro_desktop.htm"><b>rectangle</b></a> <br><nobr>red <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> <a href="../files/using_object_browser.htm"><b>3</b></a> </nobr><br><nobr>redhat <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><a href="../files/readme.html"><b>redhat8</b></a> <br><a href="../files/running_salome_pro.htm"><b>redirection</b></a> <br><a href="../files/editing_studies.htm"><b>redo</b></a> <br><a href="../files/introduction.htm"><b>reduce</b></a> <br><a href="../files/introduction.htm"><b>reduces</b></a> <br><a href="../files/introduction.htm"><b>reduction</b></a> <br><nobr>reference <a href="../files/navigating_topics.htm"><b>1</b></a> <a href="../files/about_salome_pro_help_system.htm"><b>2</b></a> <a href="../files/using_object_browser.htm"><b>3</b></a> <a href="../files/setting_preferences.htm"><b>4</b></a> </nobr><br><a href="../files/using_object_browser.htm"><b>references</b></a> <br><a href="../files/introduction.htm"><b>refined</b></a> <br><a href="../files/using_registry.htm"><b>refresh</b></a> <br><a href="../files/using_registry.htm"><b>refreshment</b></a> <br><a href="../files/copyright_notice.htm"><b>registered</b></a> <br><nobr>registry <a href="../files/introduction_to_iapp.htm"><b>1</b></a> <a href="../files/using_registry.htm"><b>2</b></a> </nobr><br><nobr>reinstall <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><a href="../files/readme.html"><b>reinstallation</b></a> <br><nobr>reinstalling <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>related <a href="../files/navigating_topics.htm"><b>1</b></a> <a href="../files/using_left-hand_tabs.htm"><b>2</b></a> </nobr><br><nobr>relating <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><a href="../files/readme.html"><b>relative</b></a> <br><a href="../files/navigating_topics.htm"><b>relevant</b></a> <br><a href="../files/introduction.htm"><b>reliability</b></a> <br><a href="../files/saving_a_study.htm"><b>reload</b></a> <br><a href="../files/displaying_hiding_toolbars.htm"><b>relocate</b></a> <br><a href="../files/about_salome_pro_architecture.htm"><b>remains</b></a> <br><nobr>removed <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><a href="../files/using_usecase_browser.htm"><b>removes</b></a> <br><nobr>removing <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><a href="../files/using_usecase_browser.htm"><b>rename</b></a> <br><a href="../files/using_usecase_browser.htm"><b>renamed</b></a> <br><a href="../files/copyright_notice.htm"><b>rené</b></a> <br><a href="../files/installing_salome_pro.htm"><b>repeated</b></a> <br><nobr>represent <a href="../files/about_salome_pro_architecture.htm"><b>1</b></a> <a href="../files/using_left-hand_tabs.htm"><b>2</b></a> </nobr><br><a href="../files/displaying_studies.htm"><b>representation</b></a> <br><nobr>represents <a href="../files/introduction_to_salome_pro.htm"><b>1</b></a> <a href="../files/introduction_to_iapp.htm"><b>2</b></a> <a href="../files/introduction.htm"><b>3</b></a> <a href="../files/installing_salome_pro.htm"><b>4</b></a> <a href="../files/getting_started2.htm"><b>5</b></a> </nobr><br><a href="../files/copyright_notice.htm"><b>reproduced</b></a> <br><nobr>required <a href="../files/readme.html"><b>1</b></a> <a href="../files/opening_studies.htm"><b>2</b></a> <a href="../files/installing_salome_pro.htm"><b>3</b></a> </nobr><br><nobr>requirements <a href="../files/introduction.htm"><b>1</b></a> <a href="../files/about_salome_pro_architecture.htm"><b>2</b></a> </nobr><br><nobr>requires <a href="../files/introduction.htm"><b>1</b></a> <a href="../files/saving_a_study.htm"><b>2</b></a> </nobr><br><a href="../files/copyright_notice.htm"><b>reserved</b></a> <br><a href="../files/readme.html"><b>reset</b></a> <br><nobr>resets <a href="../files/installing_salome_pro.htm"><b>1</b></a> <a href="../files/salome_pro_desktop.htm"><b>2</b></a> </nobr><br><a href="../files/salome_pro_desktop.htm"><b>resized</b></a> <br><a href="../files/setting_preferences.htm"><b>resizing</b></a> <br><a href="../files/copyright_notice.htm"><b>respective</b></a> <br><a href="../files/about_salome_pro_architecture.htm"><b>responds</b></a> <br><a href="../files/copyright_notice.htm"><b>responsibility</b></a> <br><a href="../files/readme.html"><b>responsible</b></a> <br><a href="../files/setting_preferences.htm"><b>restored</b></a> <br><a href="../files/saving_a_study.htm"><b>result</b></a> <br><a href="../files/getting_started2.htm"><b>resulting</b></a> <br><a href="../files/copyright_notice.htm"><b>retrieval</b></a> <br><a href="../files/introduction_to_salome_pro.htm"><b>reusable</b></a> <br><nobr>reuse <a href="../files/introduction.htm"><b>1</b></a> <a href="../files/about_salome_pro_architecture.htm"><b>2</b></a> </nobr><br><nobr><a name="bms_RI"></a><a name="subkey_RI"></a>right <a href="../files/readme.html"><b>1</b></a> <a href="../files/opening_studies.htm"><b>2</b></a> <a href="../files/navigating_topics.htm"><b>3</b></a> <a href="../files/installing_salome_pro.htm"><b>4</b></a> <a href="../files/using_usecase_browser.htm"><b>5</b></a> <a href="../files/using_object_browser.htm"><b>6</b></a> <a href="../files/using_left-hand_tabs.htm"><b>7</b></a> <a href="../files/saving_a_study.htm"><b>8</b></a> <a href="../files/salome_pro_desktop.htm"><b>9</b></a> </nobr><br><a href="../files/copyright_notice.htm"><b>rights</b></a> <br><a href="../files/introduction.htm"><b>risks</b></a> <br><a name="bms_RO"></a><a name="subkey_RO"></a><a href="../files/introduction.htm"><b>robustness</b></a> <br><a href="../files/about_salome_pro_architecture.htm"><b>roles</b></a> <br><nobr>root <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> <a href="../files/using_usecase_browser.htm"><b>3</b></a> </nobr><br><a href="../files/salome_pro_desktop.htm"><b>rotation</b></a> <br><a name="bms_RU"></a><a name="subkey_RU"></a><a href="../files/copyright_notice.htm"><b>rue</b></a> <br><a href="../files/readme.html"><b>rules</b></a> <br><nobr>run <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> <a href="../files/about_salome_pro_architecture.htm"><b>3</b></a> </nobr><br><nobr>runinstall <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>running <a href="../files/using_registry.htm"><b>1</b></a> <a href="../files/using_catalog_generator.htm"><b>2</b></a> <a href="../files/running_salome_pro.htm"><b>3</b></a> </nobr><br><a href="../files/readme.html"><b>runs</b></a> <br><nobr>runsalome <a href="../files/using_catalog_generator.htm"><b>1</b></a> <a href="../files/running_salome_pro.htm"><b>2</b></a> </nobr><br><a href="../files/using_catalog_generator.htm"><b>runsalomewithport</b></a> <br>\r
+<br><br>\r
+<nobr><a name="bm_S"></a><a name="subkey_S{"></a>s <a href="../files/readme.html"><b>1</b></a> <a href="../files/navigating_topics.htm"><b>2</b></a> <a href="../files/installing_salome_pro.htm"><b>3</b></a> <a href="../files/copyright_notice.htm"><b>4</b></a> <a href="../files/about_salome_pro_architecture.htm"><b>5</b></a> <a href="../files/salome_pro_desktop.htm"><b>6</b></a> </nobr><br><a name="bms_SA"></a><a name="subkey_SA"></a><a href="../files/copyright_notice.htm"><b>saclay</b></a> <br><nobr>salome <a href="../files/readme.html"><b>1</b></a> <a href="../files/opening_studies.htm"><b>2</b></a> <a href="../files/navigating_topics.htm"><b>3</b></a> <a href="../files/introduction_to_salome_pro.htm"><b>4</b></a> <a href="../files/introduction_to_iapp.htm"><b>5</b></a> <a href="../files/introduction.htm"><b>6</b></a> <a href="../files/installing_salome_pro.htm"><b>7</b></a> <a href="../files/getting_started2.htm"><b>8</b></a> <a href="../files/editing_studies.htm"><b>9</b></a> <a href="../files/displaying_studies.htm"><b>10</b></a> <a href="../files/displaying_hiding_toolbars.htm"><b>11</b></a> <a href="../files/creating_a_new_study.htm"><b>12</b></a> <a href="../files/about_salome_pro_help_system.htm"><b>13</b></a> <a href="../files/about_salome_pro_architecture.htm"><b>14</b></a> <a href="../files/using_usecase_browser.htm"><b>15</b></a> <a href="../files/using_registry.htm"><b>16</b></a> <a href="../files/using_object_browser.htm"><b>17</b></a> <a href="../files/using_left-hand_tabs.htm"><b>18</b></a> <a href="../files/using_catalog_generator.htm"><b>19</b></a> <a href="../files/setting_preferences.htm"><b>20</b></a> <a href="../files/saving_a_study.htm"><b>21</b></a> <a href="../files/salome_pro_desktop.htm"><b>22</b></a> <a href="../files/running_salome_pro.htm"><b>23</b></a> </nobr><br><a href="../files/using_catalog_generator.htm"><b>salome_modulecatalog_server</b></a> <br><nobr>salome_root_dir <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><a href="../files/readme.html"><b>salome_src</b></a> <br><a href="../files/installing_salome_pro.htm"><b>salomebin</b></a> <br><a href="../files/installing_salome_pro.htm"><b>salomecsh</b></a> <br><a href="../files/installing_salome_pro.htm"><b>salomedoc</b></a> <br><a href="../files/installing_salome_pro.htm"><b>salomepro_src</b></a> <br><a href="../files/installing_salome_pro.htm"><b>salomesh</b></a> <br><a href="../files/installing_salome_pro.htm"><b>salomesources</b></a> <br><nobr>same <a href="../files/navigating_topics.htm"><b>1</b></a> <a href="../files/using_usecase_browser.htm"><b>2</b></a> <a href="../files/using_registry.htm"><b>3</b></a> <a href="../files/using_catalog_generator.htm"><b>4</b></a> <a href="../files/saving_a_study.htm"><b>5</b></a> </nobr><br><nobr>save <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> <a href="../files/setting_preferences.htm"><b>3</b></a> <a href="../files/saving_a_study.htm"><b>4</b></a> </nobr><br><nobr>saved <a href="../files/setting_preferences.htm"><b>1</b></a> <a href="../files/saving_a_study.htm"><b>2</b></a> </nobr><br><nobr>saves <a href="../files/setting_preferences.htm"><b>1</b></a> <a href="../files/salome_pro_desktop.htm"><b>2</b></a> </nobr><br><nobr>saving <a href="../files/introduction_to_iapp.htm"><b>1</b></a> <a href="../files/saving_a_study.htm"><b>2</b></a> <a href="../files/salome_pro_desktop.htm"><b>3</b></a> </nobr><br><nobr>say <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><a name="bms_SC"></a><a name="subkey_SC"></a><a href="../files/about_salome_pro_architecture.htm"><b>scale</b></a> <br><a href="../files/readme.html"><b>scheme</b></a> <br><a href="../files/about_salome_pro_architecture.htm"><b>schemes</b></a> <br><a href="../files/about_salome_pro_architecture.htm"><b>scientific</b></a> <br><nobr>script <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> <a href="../files/using_catalog_generator.htm"><b>3</b></a> <a href="../files/running_salome_pro.htm"><b>4</b></a> </nobr><br><nobr>scripts <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> <a href="../files/about_salome_pro_architecture.htm"><b>3</b></a> <a href="../files/using_catalog_generator.htm"><b>4</b></a> </nobr><br><a href="../files/getting_properties_of_the_study.htm"><b>scroll</b></a> <br><nobr><a name="bms_SE"></a><a name="subkey_SE"></a>search <a href="../files/readme.html"><b>1</b></a> <a href="../files/opening_studies.htm"><b>2</b></a> <a href="../files/about_salome_pro_help_system.htm"><b>3</b></a> <a href="../files/using_left-hand_tabs.htm"><b>4</b></a> <a href="../files/saving_a_study.htm"><b>5</b></a> </nobr><br><nobr>searching <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> <a href="../files/using_left-hand_tabs.htm"><b>3</b></a> </nobr><br><nobr>second <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> <a href="../files/using_usecase_browser.htm"><b>3</b></a> </nobr><br><nobr>seconds <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>section <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>sections <a href="../files/readme.html"><b>1</b></a> <a href="../files/salome_pro_desktop.htm"><b>2</b></a> </nobr><br><nobr>see <a href="../files/readme.html"><b>1</b></a> <a href="../files/opening_studies.htm"><b>2</b></a> <a href="../files/installing_salome_pro.htm"><b>3</b></a> <a href="../files/getting_properties_of_the_study.htm"><b>4</b></a> <a href="../files/using_usecase_browser.htm"><b>5</b></a> <a href="../files/using_object_browser.htm"><b>6</b></a> <a href="../files/using_catalog_generator.htm"><b>7</b></a> <a href="../files/saving_a_study.htm"><b>8</b></a> </nobr><br><nobr>select <a href="../files/readme.html"><b>1</b></a> <a href="../files/opening_studies.htm"><b>2</b></a> <a href="../files/installing_salome_pro.htm"><b>3</b></a> <a href="../files/getting_properties_of_the_study.htm"><b>4</b></a> <a href="../files/displaying_studies.htm"><b>5</b></a> <a href="../files/creating_a_new_study.htm"><b>6</b></a> <a href="../files/using_usecase_browser.htm"><b>7</b></a> <a href="../files/using_left-hand_tabs.htm"><b>8</b></a> <a href="../files/setting_preferences.htm"><b>9</b></a> <a href="../files/saving_a_study.htm"><b>10</b></a> </nobr><br><a href="../files/salome_pro_desktop.htm"><b>selectall</b></a> <br><nobr>selected <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> <a href="../files/using_usecase_browser.htm"><b>3</b></a> </nobr><br><nobr>sends <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>sensitive <a href="../files/displaying_hiding_toolbars.htm"><b>1</b></a> <a href="../files/using_usecase_browser.htm"><b>2</b></a> <a href="../files/using_object_browser.htm"><b>3</b></a> <a href="../files/salome_pro_desktop.htm"><b>4</b></a> </nobr><br><a href="../files/readme.html"><b>separated</b></a> <br><a href="../files/about_salome_pro_architecture.htm"><b>server</b></a> <br><nobr>servers <a href="../files/about_salome_pro_architecture.htm"><b>1</b></a> <a href="../files/running_salome_pro.htm"><b>2</b></a> </nobr><br><a href="../files/using_catalog_generator.htm"><b>serves</b></a> <br><a href="../files/readme.html"><b>service</b></a> <br><nobr>services <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> <a href="../files/about_salome_pro_architecture.htm"><b>3</b></a> <a href="../files/using_catalog_generator.htm"><b>4</b></a> </nobr><br><nobr>session <a href="../files/opening_studies.htm"><b>1</b></a> <a href="../files/using_usecase_browser.htm"><b>2</b></a> <a href="../files/using_registry.htm"><b>3</b></a> <a href="../files/using_object_browser.htm"><b>4</b></a> <a href="../files/setting_preferences.htm"><b>5</b></a> <a href="../files/saving_a_study.htm"><b>6</b></a> </nobr><br><nobr>set <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> <a href="../files/about_salome_pro_help_system.htm"><b>3</b></a> <a href="../files/using_usecase_browser.htm"><b>4</b></a> <a href="../files/using_registry.htm"><b>5</b></a> <a href="../files/setting_preferences.htm"><b>6</b></a> <a href="../files/salome_pro_desktop.htm"><b>7</b></a> <a href="../files/running_salome_pro.htm"><b>8</b></a> </nobr><br><nobr>sets <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>setting <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> <a href="../files/using_object_browser.htm"><b>3</b></a> <a href="../files/setting_preferences.htm"><b>4</b></a> <a href="../files/saving_a_study.htm"><b>5</b></a> </nobr><br><nobr>settings <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><a href="../files/introduction.htm"><b>severe</b></a> <br><br><br></p><p class="ftsbody" align="center"><a href="whlstf7.htm" target="_self" title="previous search group"><b>>></b></a>\r
+\r
+</body>\r
+\r
+</html>\r
+\r
--- /dev/null
+<html>\r
+<head>\r
+<title>Search Words List</title>\r
+<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
+<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">\r
+<meta name "description" content="WebHelp 2002">\r
+<base target="bsscright">\r
+<style>\r
+<!--\r
+body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}\r
+\r
+A:link {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
+A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
+A:active {background-color:#cccccc;}\r
+A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal; text-decoration:underline; }\r
+\r
+.tabs {background-color:#c0c0c0;}\r
+.ftsheader {margin-left:10pt; margin-top:0pt;}\r
+.ftsbody {margin-left:10pt; margin-top:0pt;}\r
+.inactive {color:#666666;}\r
+.ftsheader {background-color:White; } \r
+\r
+body {background-color:White; } \r
+p {color:Black; } p {font-family:Tahoma; } p {font-size:8pt; } p {font-style:Normal; } p {text-decoration:none; } \r
+A:link {color:Black; } A:link {font-family:Tahoma; } A:link {font-size:8pt; } A:link {font-style:Normal; } A:link {text-decoration:none; } \r
+A:visited {color:Black; } A:visited {font-family:Tahoma; } A:visited {font-size:8pt; } A:visited {font-style:Normal; } A:visited {text-decoration:none; } \r
+A:active {background-color:Silver; } \r
+A:hover {color:Navy; } A:hover {font-family:Tahoma; } A:hover {font-size:8pt; } A:hover {font-style:Normal; } A:hover {text-decoration:underline; } \r
+\r
+-->\r
+</style>\r
+</head>\r
+<body marginheight="0" marginwidth="0">\r
+<p class="ftsbody" align="center"><a href="whlstf6.htm" target="_self" title="previous search group"><b><<</b></a><br><br></p>\r
+<p class="ftsbody">\r
+<nobr><a name="bms_SH"></a><a name="subkey_SH"></a>sh <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><a href="../files/introduction.htm"><b>shares</b></a> <br><nobr>shell <a href="../files/readme.html"><b>1</b></a> <a href="../files/introduction_to_iapp.htm"><b>2</b></a> <a href="../files/installing_salome_pro.htm"><b>3</b></a> <a href="../files/running_salome_pro.htm"><b>4</b></a> </nobr><br><a href="../files/readme.html"><b>shin</b></a> <br><a href="../files/using_left-hand_tabs.htm"><b>short</b></a> <br><nobr>should <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> <a href="../files/getting_started2.htm"><b>3</b></a> <a href="../files/copyright_notice.htm"><b>4</b></a> <a href="../files/using_catalog_generator.htm"><b>5</b></a> <a href="../files/saving_a_study.htm"><b>6</b></a> </nobr><br><a href="../files/setting_preferences.htm"><b>show</b></a> <br><a href="../files/getting_properties_of_the_study.htm"><b>shown</b></a> <br><nobr>shows <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> <a href="../files/using_object_browser.htm"><b>3</b></a> <a href="../files/salome_pro_desktop.htm"><b>4</b></a> </nobr><br><a name="bms_SI"></a><a name="subkey_SI"></a><a href="../files/readme.html"><b>side</b></a> <br><nobr>signal <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><a href="../files/readme.html"><b>signature</b></a> <br><nobr>sigterm <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><a href="../files/about_salome_pro_architecture.htm"><b>simple</b></a> <br><a href="../files/readme.html"><b>simplify</b></a> <br><a href="../files/about_salome_pro_architecture.htm"><b>simulate</b></a> <br><a href="../files/introduction.htm"><b>simulation</b></a> <br><nobr>simulations <a href="../files/introduction_to_salome_pro.htm"><b>1</b></a> <a href="../files/introduction.htm"><b>2</b></a> </nobr><br><a href="../files/getting_started2.htm"><b>simultaneously</b></a> <br><a href="../files/readme.html"><b>single</b></a> <br><nobr>sip <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>sipdir <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>site <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><a href="../files/about_salome_pro_architecture.htm"><b>situations</b></a> <br><nobr>size <a href="../files/setting_preferences.htm"><b>1</b></a> <a href="../files/salome_pro_desktop.htm"><b>2</b></a> </nobr><br><nobr><a name="bms_SK"></a><a name="subkey_SK"></a>skip <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>skipped <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><a name="bms_SM"></a><a name="subkey_SM"></a><a href="../files/saving_a_study.htm"><b>small</b></a> <br><nobr>smesh <a href="../files/introduction_to_salome_pro.htm"><b>1</b></a> <a href="../files/displaying_hiding_toolbars.htm"><b>2</b></a> <a href="../files/about_salome_pro_architecture.htm"><b>3</b></a> </nobr><br><nobr><a name="bms_SO"></a><a name="subkey_SO"></a>so <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> <a href="../files/about_salome_pro_architecture.htm"><b>3</b></a> <a href="../files/using_usecase_browser.htm"><b>4</b></a> <a href="../files/using_object_browser.htm"><b>5</b></a> <a href="../files/using_left-hand_tabs.htm"><b>6</b></a> <a href="../files/setting_preferences.htm"><b>7</b></a> </nobr><br><nobr>software <a href="../files/introduction_to_salome_pro.htm"><b>1</b></a> <a href="../files/introduction.htm"><b>2</b></a> <a href="../files/installing_salome_pro.htm"><b>3</b></a> <a href="../files/copyright_notice.htm"><b>4</b></a> <a href="../files/about_salome_pro_architecture.htm"><b>5</b></a> </nobr><br><a href="../files/introduction.htm"><b>solution</b></a> <br><a href="../files/introduction.htm"><b>solutions</b></a> <br><a href="../files/introduction_to_salome_pro.htm"><b>solvers</b></a> <br><a href="../files/installing_salome_pro.htm"><b>somewhere</b></a> <br><nobr>sort <a href="../files/using_object_browser.htm"><b>1</b></a> <a href="../files/setting_preferences.htm"><b>2</b></a> </nobr><br><a href="../files/using_object_browser.htm"><b>sorting</b></a> <br><nobr>source <a href="../files/readme.html"><b>1</b></a> <a href="../files/introduction_to_salome_pro.htm"><b>2</b></a> <a href="../files/running_salome_pro.htm"><b>3</b></a> </nobr><br><nobr>sources <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr><a name="bms_SP"></a><a name="subkey_SP"></a>space <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> <a href="../files/salome_pro_desktop.htm"><b>3</b></a> </nobr><br><nobr>spaces <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>special <a href="../files/readme.html"><b>1</b></a> <a href="../files/opening_studies.htm"><b>2</b></a> <a href="../files/installing_salome_pro.htm"><b>3</b></a> <a href="../files/saving_a_study.htm"><b>4</b></a> <a href="../files/running_salome_pro.htm"><b>5</b></a> </nobr><br><nobr>specific <a href="../files/introduction_to_salome_pro.htm"><b>1</b></a> <a href="../files/introduction.htm"><b>2</b></a> <a href="../files/displaying_hiding_toolbars.htm"><b>3</b></a> <a href="../files/about_salome_pro_architecture.htm"><b>4</b></a> <a href="../files/using_left-hand_tabs.htm"><b>5</b></a> </nobr><br><a href="../files/introduction.htm"><b>specifically</b></a> <br><a href="../files/introduction_to_salome_pro.htm"><b>specification</b></a> <br><a href="../files/about_salome_pro_architecture.htm"><b>specifies</b></a> <br><nobr>specify <a href="../files/using_catalog_generator.htm"><b>1</b></a> <a href="../files/saving_a_study.htm"><b>2</b></a> </nobr><br><a href="../files/introduction.htm"><b>spent</b></a> <br><nobr><a name="bms_SR"></a><a name="subkey_SR"></a>src <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr><a name="bms_ST"></a><a name="subkey_ST"></a>standard <a href="../files/readme.html"><b>1</b></a> <a href="../files/opening_studies.htm"><b>2</b></a> <a href="../files/introduction_to_iapp.htm"><b>3</b></a> <a href="../files/installing_salome_pro.htm"><b>4</b></a> <a href="../files/creating_a_new_study.htm"><b>5</b></a> <a href="../files/using_catalog_generator.htm"><b>6</b></a> <a href="../files/saving_a_study.htm"><b>7</b></a> <a href="../files/salome_pro_desktop.htm"><b>8</b></a> </nobr><br><nobr>start <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> <a href="../files/getting_started2.htm"><b>3</b></a> </nobr><br><nobr>started <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> <a href="../files/getting_started2.htm"><b>3</b></a> <a href="../files/using_registry.htm"><b>4</b></a> <a href="../files/using_catalog_generator.htm"><b>5</b></a> </nobr><br><nobr>starting <a href="../files/readme.html"><b>1</b></a> <a href="../files/using_registry.htm"><b>2</b></a> </nobr><br><nobr>state <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><a href="../files/installing_salome_pro.htm"><b>states</b></a> <br><a href="../files/about_salome_pro_architecture.htm"><b>stations</b></a> <br><nobr>status <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>steps <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>still <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><a href="../files/copyright_notice.htm"><b>storage</b></a> <br><nobr>store <a href="../files/readme.html"><b>1</b></a> <a href="../files/using_catalog_generator.htm"><b>2</b></a> <a href="../files/saving_a_study.htm"><b>3</b></a> </nobr><br><nobr>stored <a href="../files/opening_studies.htm"><b>1</b></a> <a href="../files/about_salome_pro_architecture.htm"><b>2</b></a> <a href="../files/using_catalog_generator.htm"><b>3</b></a> <a href="../files/saving_a_study.htm"><b>4</b></a> </nobr><br><nobr>storing <a href="../files/installing_salome_pro.htm"><b>1</b></a> <a href="../files/saving_a_study.htm"><b>2</b></a> </nobr><br><a href="../files/installing_salome_pro.htm"><b>strictly</b></a> <br><a href="../files/readme.html"><b>string</b></a> <br><nobr>strongly <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><a href="../files/introduction.htm"><b>structural</b></a> <br><nobr>structure <a href="../files/opening_studies.htm"><b>1</b></a> <a href="../files/using_usecase_browser.htm"><b>2</b></a> <a href="../files/using_object_browser.htm"><b>3</b></a> </nobr><br><a href="../files/introduction.htm"><b>structures</b></a> <br><nobr>studies <a href="../files/opening_studies.htm"><b>1</b></a> <a href="../files/introduction_to_iapp.htm"><b>2</b></a> <a href="../files/getting_started2.htm"><b>3</b></a> <a href="../files/editing_studies.htm"><b>4</b></a> <a href="../files/displaying_studies.htm"><b>5</b></a> <a href="../files/creating_a_new_study.htm"><b>6</b></a> <a href="../files/saving_a_study.htm"><b>7</b></a> <a href="../files/salome_pro_desktop.htm"><b>8</b></a> </nobr><br><nobr>study <a href="../files/opening_studies.htm"><b>1</b></a> <a href="../files/introduction_to_salome_pro.htm"><b>2</b></a> <a href="../files/introduction_to_iapp.htm"><b>3</b></a> <a href="../files/getting_started2.htm"><b>4</b></a> <a href="../files/getting_properties_of_the_study.htm"><b>5</b></a> <a href="../files/editing_studies.htm"><b>6</b></a> <a href="../files/displaying_studies.htm"><b>7</b></a> <a href="../files/creating_a_new_study.htm"><b>8</b></a> <a href="../files/about_salome_pro_architecture.htm"><b>9</b></a> <a href="../files/using_usecase_browser.htm"><b>10</b></a> <a href="../files/using_registry.htm"><b>11</b></a> <a href="../files/using_object_browser.htm"><b>12</b></a> <a href="../files/using_catalog_generator.htm"><b>13</b></a> <a href="../files/setting_preferences.htm"><b>14</b></a> <a href="../files/saving_a_study.htm"><b>15</b></a> <a href="../files/salome_pro_desktop.htm"><b>16</b></a> </nobr><br><a href="../files/creating_a_new_study.htm"><b>study1</b></a> <br><nobr><a name="bms_SU"></a><a name="subkey_SU"></a>sub <a href="../files/readme.html"><b>1</b></a> <a href="../files/using_left-hand_tabs.htm"><b>2</b></a> </nobr><br><a href="../files/copyright_notice.htm"><b>subject</b></a> <br><nobr>submenu <a href="../files/displaying_hiding_toolbars.htm"><b>1</b></a> <a href="../files/creating_a_new_study.htm"><b>2</b></a> <a href="../files/setting_preferences.htm"><b>3</b></a> </nobr><br><nobr>successfully <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><a href="../files/installing_salome_pro.htm"><b>sufficient</b></a> <br><nobr>summarizes <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><a href="../files/installing_salome_pro.htm"><b>superstructure</b></a> <br><a href="../files/running_salome_pro.htm"><b>superv</b></a> <br><nobr>supervision <a href="../files/introduction_to_salome_pro.htm"><b>1</b></a> <a href="../files/introduction_to_iapp.htm"><b>2</b></a> <a href="../files/using_catalog_generator.htm"><b>3</b></a> <a href="../files/running_salome_pro.htm"><b>4</b></a> </nobr><br><nobr>supplementary <a href="../files/using_registry.htm"><b>1</b></a> <a href="../files/using_object_browser.htm"><b>2</b></a> </nobr><br><nobr>supplied <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>support <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> <a href="../files/using_catalog_generator.htm"><b>3</b></a> </nobr><br><a href="../files/readme.html"><b>supported</b></a> <br><a href="../files/readme.html"><b>supported_installation_modes</b></a> <br><a href="../files/readme.html"><b>supposed</b></a> <br><nobr>sure <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr><a name="bms_SW"></a><a name="subkey_SW"></a>swig <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>switch <a href="../files/installing_salome_pro.htm"><b>1</b></a> <a href="../files/displaying_studies.htm"><b>2</b></a> </nobr><br><nobr>switched <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><a href="../files/introduction_to_iapp.htm"><b>switching</b></a> <br><a name="bms_SY"></a><a name="subkey_SY"></a><a href="../files/installing_salome_pro.htm"><b>symbolic</b></a> <br><nobr>system <a href="../files/readme.html"><b>1</b></a> <a href="../files/navigating_topics.htm"><b>2</b></a> <a href="../files/installing_salome_pro.htm"><b>3</b></a> <a href="../files/copyright_notice.htm"><b>4</b></a> <a href="../files/about_salome_pro_help_system.htm"><b>5</b></a> <a href="../files/about_salome_pro_architecture.htm"><b>6</b></a> <a href="../files/using_left-hand_tabs.htm"><b>7</b></a> </nobr><br><a href="../files/about_salome_pro_architecture.htm"><b>systems</b></a> <br>\r
+<br><br>\r
+<nobr><a name="bm_T"></a><a name="subkey_T{"></a>t <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> <a href="../files/using_catalog_generator.htm"><b>3</b></a> <a href="../files/saving_a_study.htm"><b>4</b></a> <a href="../files/running_salome_pro.htm"><b>5</b></a> </nobr><br><nobr><a name="bms_TA"></a><a name="subkey_TA"></a>tab <a href="../files/using_usecase_browser.htm"><b>1</b></a> <a href="../files/using_registry.htm"><b>2</b></a> <a href="../files/using_left-hand_tabs.htm"><b>3</b></a> </nobr><br><nobr>table <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><a href="../files/using_left-hand_tabs.htm"><b>tabs</b></a> <br><a href="../files/readme.html"><b>tag</b></a> <br><a href="../files/readme.html"><b>tags</b></a> <br><nobr>take <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>taken <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> <a href="../files/running_salome_pro.htm"><b>3</b></a> </nobr><br><a href="../files/about_salome_pro_architecture.htm"><b>takes</b></a> <br><nobr>target <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><a href="../files/readme.html"><b>target_directory</b></a> <br><a href="../files/readme.html"><b>target_paltform</b></a> <br><a href="../files/readme.html"><b>targetdir</b></a> <br><nobr><a name="bms_TC"></a><a name="subkey_TC"></a>tcl <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>tclhome <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>tclsh8 <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><a name="bms_TE"></a><a name="subkey_TE"></a><a href="../files/introduction.htm"><b>technological</b></a> <br><a href="../files/about_salome_pro_architecture.htm"><b>technologies</b></a> <br><a href="../files/copyright_notice.htm"><b>technologique</b></a> <br><a href="../files/about_salome_pro_architecture.htm"><b>technology</b></a> <br><nobr>temp <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><a href="../files/readme.html"><b>temp_directory</b></a> <br><a href="../files/readme.html"><b>temp_folder</b></a> <br><a href="../files/readme.html"><b>tempdir</b></a> <br><nobr>temporary <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><a href="../files/readme.html"><b>temporarydiskspace</b></a> <br><nobr>term <a href="../files/navigating_topics.htm"><b>1</b></a> <a href="../files/using_left-hand_tabs.htm"><b>2</b></a> </nobr><br><nobr>terminal <a href="../files/installing_salome_pro.htm"><b>1</b></a> <a href="../files/running_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>terms <a href="../files/introduction.htm"><b>1</b></a> <a href="../files/copyright_notice.htm"><b>2</b></a> <a href="../files/using_left-hand_tabs.htm"><b>3</b></a> </nobr><br><nobr>test <a href="../files/readme.html"><b>1</b></a> <a href="../files/about_salome_pro_architecture.htm"><b>2</b></a> <a href="../files/using_catalog_generator.htm"><b>3</b></a> </nobr><br><a href="../files/readme.html"><b>tests</b></a> <br><nobr>text <a href="../files/readme.html"><b>1</b></a> <a href="../files/navigating_topics.htm"><b>2</b></a> <a href="../files/installing_salome_pro.htm"><b>3</b></a> <a href="../files/using_left-hand_tabs.htm"><b>4</b></a> </nobr><br><nobr><a name="bms_TH"></a><a name="subkey_TH"></a>them <a href="../files/readme.html"><b>1</b></a> <a href="../files/introduction_to_salome_pro.htm"><b>2</b></a> <a href="../files/installing_salome_pro.htm"><b>3</b></a> <a href="../files/about_salome_pro_architecture.htm"><b>4</b></a> <a href="../files/using_registry.htm"><b>5</b></a> <a href="../files/running_salome_pro.htm"><b>6</b></a> </nobr><br><nobr>therefore <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>this_is_ <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>this_is_omninotify_1_2 <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>this_is_omniorb_3_0_5 <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>this_is_omniorbpy_1_5 <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>those <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> <a href="../files/using_left-hand_tabs.htm"><b>3</b></a> </nobr><br><a href="../files/installing_salome_pro.htm"><b>three</b></a> <br><a href="../files/about_salome_pro_architecture.htm"><b>thus</b></a> <br><br><br></p><p class="ftsbody" align="center"><a href="whlstf8.htm" target="_self" title="previous search group"><b>>></b></a>\r
+\r
+</body>\r
+\r
+</html>\r
+\r
--- /dev/null
+<html>\r
+<head>\r
+<title>Search Words List</title>\r
+<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
+<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">\r
+<meta name "description" content="WebHelp 2002">\r
+<base target="bsscright">\r
+<style>\r
+<!--\r
+body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}\r
+\r
+A:link {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
+A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
+A:active {background-color:#cccccc;}\r
+A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal; text-decoration:underline; }\r
+\r
+.tabs {background-color:#c0c0c0;}\r
+.ftsheader {margin-left:10pt; margin-top:0pt;}\r
+.ftsbody {margin-left:10pt; margin-top:0pt;}\r
+.inactive {color:#666666;}\r
+.ftsheader {background-color:White; } \r
+\r
+body {background-color:White; } \r
+p {color:Black; } p {font-family:Tahoma; } p {font-size:8pt; } p {font-style:Normal; } p {text-decoration:none; } \r
+A:link {color:Black; } A:link {font-family:Tahoma; } A:link {font-size:8pt; } A:link {font-style:Normal; } A:link {text-decoration:none; } \r
+A:visited {color:Black; } A:visited {font-family:Tahoma; } A:visited {font-size:8pt; } A:visited {font-style:Normal; } A:visited {text-decoration:none; } \r
+A:active {background-color:Silver; } \r
+A:hover {color:Navy; } A:hover {font-family:Tahoma; } A:hover {font-size:8pt; } A:hover {font-style:Normal; } A:hover {text-decoration:underline; } \r
+\r
+-->\r
+</style>\r
+</head>\r
+<body marginheight="0" marginwidth="0">\r
+<p class="ftsbody" align="center"><a href="whlstf7.htm" target="_self" title="previous search group"><b><<</b></a><br><br></p>\r
+<p class="ftsbody">\r
+<a name="bms_TI"></a><a name="subkey_TI"></a><a href="../files/displaying_studies.htm"><b>tiling</b></a> <br><nobr>time <a href="../files/readme.html"><b>1</b></a> <a href="../files/introduction.htm"><b>2</b></a> <a href="../files/installing_salome_pro.htm"><b>3</b></a> <a href="../files/getting_properties_of_the_study.htm"><b>4</b></a> <a href="../files/about_salome_pro_architecture.htm"><b>5</b></a> <a href="../files/using_registry.htm"><b>6</b></a> <a href="../files/using_catalog_generator.htm"><b>7</b></a> <a href="../files/setting_preferences.htm"><b>8</b></a> </nobr><br><a href="../files/readme.html"><b>title</b></a> <br><nobr><a name="bms_TM"></a><a name="subkey_TM"></a>tmp <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><a href="../files/readme.html"><b>tmp_disk_space</b></a> <br><nobr><a name="bms_TO"></a><a name="subkey_TO"></a>together <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><a href="../files/installing_salome_pro.htm"><b>too</b></a> <br><nobr>tool <a href="../files/introduction_to_iapp.htm"><b>1</b></a> <a href="../files/using_registry.htm"><b>2</b></a> <a href="../files/using_catalog_generator.htm"><b>3</b></a> </nobr><br><nobr>toolbar <a href="../files/opening_studies.htm"><b>1</b></a> <a href="../files/editing_studies.htm"><b>2</b></a> <a href="../files/displaying_hiding_toolbars.htm"><b>3</b></a> <a href="../files/creating_a_new_study.htm"><b>4</b></a> <a href="../files/saving_a_study.htm"><b>5</b></a> <a href="../files/salome_pro_desktop.htm"><b>6</b></a> </nobr><br><nobr>toolbars <a href="../files/introduction_to_iapp.htm"><b>1</b></a> <a href="../files/displaying_hiding_toolbars.htm"><b>2</b></a> <a href="../files/salome_pro_desktop.htm"><b>3</b></a> </nobr><br><nobr>tools <a href="../files/introduction_to_iapp.htm"><b>1</b></a> <a href="../files/about_salome_pro_architecture.htm"><b>2</b></a> <a href="../files/using_registry.htm"><b>3</b></a> <a href="../files/using_catalog_generator.htm"><b>4</b></a> <a href="../files/salome_pro_desktop.htm"><b>5</b></a> </nobr><br><nobr>top <a href="../files/readme.html"><b>1</b></a> <a href="../files/displaying_hiding_toolbars.htm"><b>2</b></a> <a href="../files/creating_a_new_study.htm"><b>3</b></a> <a href="../files/salome_pro_desktop.htm"><b>4</b></a> </nobr><br><nobr>topic <a href="../files/navigating_topics.htm"><b>1</b></a> <a href="../files/using_left-hand_tabs.htm"><b>2</b></a> </nobr><br><nobr>topics <a href="../files/navigating_topics.htm"><b>1</b></a> <a href="../files/about_salome_pro_help_system.htm"><b>2</b></a> <a href="../files/using_left-hand_tabs.htm"><b>3</b></a> </nobr><br><nobr>topmost <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>total <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><a href="../files/about_salome_pro_architecture.htm"><b>totality</b></a> <br><nobr><a name="bms_TR"></a><a name="subkey_TR"></a>tr <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><a href="../files/copyright_notice.htm"><b>trademarks</b></a> <br><a href="../files/introduction.htm"><b>training</b></a> <br><a href="../files/copyright_notice.htm"><b>transmitted</b></a> <br><nobr>tree <a href="../files/readme.html"><b>1</b></a> <a href="../files/using_usecase_browser.htm"><b>2</b></a> <a href="../files/using_object_browser.htm"><b>3</b></a> </nobr><br><nobr>tries <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>trihedron <a href="../files/setting_preferences.htm"><b>1</b></a> <a href="../files/salome_pro_desktop.htm"><b>2</b></a> </nobr><br><a href="../files/installing_salome_pro.htm"><b>troubles</b></a> <br><a href="../files/readme.html"><b>true</b></a> <br><nobr>try <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> <a href="../files/getting_properties_of_the_study.htm"><b>3</b></a> <a href="../files/using_catalog_generator.htm"><b>4</b></a> <a href="../files/saving_a_study.htm"><b>5</b></a> </nobr><br><a href="../files/readme.html"><b>try_native</b></a> <br><a href="../files/readme.html"><b>try_preinstalled</b></a> <br><nobr><a name="bms_TW"></a><a name="subkey_TW"></a>two <a href="../files/readme.html"><b>1</b></a> <a href="../files/navigating_topics.htm"><b>2</b></a> <a href="../files/installing_salome_pro.htm"><b>3</b></a> <a href="../files/using_catalog_generator.htm"><b>4</b></a> <a href="../files/saving_a_study.htm"><b>5</b></a> </nobr><br><nobr><a name="bms_TY"></a><a name="subkey_TY"></a>type <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> <a href="../files/using_catalog_generator.htm"><b>3</b></a> </nobr><br><a href="../files/using_catalog_generator.htm"><b>typical</b></a> <br><nobr>typing <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br>\r
+<br><br>\r
+<a name="bm_U"></a><a name="subkey_UL"></a><a href="../files/about_salome_pro_architecture.htm"><b>ultimate</b></a> <br><a name="bms_UN"></a><a name="subkey_UN"></a><a href="../files/introduction.htm"><b>understanding</b></a> <br><nobr>undo <a href="../files/editing_studies.htm"><b>1</b></a> <a href="../files/setting_preferences.htm"><b>2</b></a> </nobr><br><a href="../files/setting_preferences.htm"><b>undone</b></a> <br><nobr>unfortunately <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><a href="../files/about_salome_pro_help_system.htm"><b>unix</b></a> <br><a href="../files/saving_a_study.htm"><b>unload</b></a> <br><nobr>unloaded <a href="../files/opening_studies.htm"><b>1</b></a> <a href="../files/saving_a_study.htm"><b>2</b></a> </nobr><br><a href="../files/displaying_hiding_toolbars.htm"><b>unmark</b></a> <br><a href="../files/readme.html"><b>unnecessary</b></a> <br><nobr>unselect <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr><a name="bms_UP"></a><a name="subkey_UP"></a>up <a href="../files/readme.html"><b>1</b></a> <a href="../files/opening_studies.htm"><b>2</b></a> <a href="../files/navigating_topics.htm"><b>3</b></a> <a href="../files/installing_salome_pro.htm"><b>4</b></a> <a href="../files/using_usecase_browser.htm"><b>5</b></a> <a href="../files/using_object_browser.htm"><b>6</b></a> <a href="../files/salome_pro_desktop.htm"><b>7</b></a> </nobr><br><nobr>update <a href="../files/installing_salome_pro.htm"><b>1</b></a> <a href="../files/using_catalog_generator.htm"><b>2</b></a> </nobr><br><nobr>updated <a href="../files/installing_salome_pro.htm"><b>1</b></a> <a href="../files/using_catalog_generator.htm"><b>2</b></a> <a href="../files/saving_a_study.htm"><b>3</b></a> <a href="../files/salome_pro_desktop.htm"><b>4</b></a> </nobr><br><nobr>uploading <a href="../files/introduction_to_iapp.htm"><b>1</b></a> <a href="../files/displaying_hiding_toolbars.htm"><b>2</b></a> <a href="../files/salome_pro_desktop.htm"><b>3</b></a> </nobr><br><a href="../files/saving_a_study.htm"><b>upper</b></a> <br><a name="bms_US"></a><a name="subkey_US"></a><a href="../files/readme.html"><b>usage</b></a> <br><nobr>usecase <a href="../files/introduction_to_iapp.htm"><b>1</b></a> <a href="../files/using_usecase_browser.htm"><b>2</b></a> <a href="../files/setting_preferences.htm"><b>3</b></a> <a href="../files/salome_pro_desktop.htm"><b>4</b></a> </nobr><br><nobr>used <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> <a href="../files/getting_started2.htm"><b>3</b></a> <a href="../files/editing_studies.htm"><b>4</b></a> <a href="../files/copyright_notice.htm"><b>5</b></a> <a href="../files/about_salome_pro_architecture.htm"><b>6</b></a> <a href="../files/using_left-hand_tabs.htm"><b>7</b></a> <a href="../files/using_catalog_generator.htm"><b>8</b></a> <a href="../files/setting_preferences.htm"><b>9</b></a> <a href="../files/saving_a_study.htm"><b>10</b></a> </nobr><br><nobr>user <a href="../files/readme.html"><b>1</b></a> <a href="../files/introduction.htm"><b>2</b></a> <a href="../files/getting_properties_of_the_study.htm"><b>3</b></a> <a href="../files/about_salome_pro_architecture.htm"><b>4</b></a> <a href="../files/using_usecase_browser.htm"><b>5</b></a> <a href="../files/using_registry.htm"><b>6</b></a> </nobr><br><nobr>users <a href="../files/getting_properties_of_the_study.htm"><b>1</b></a> <a href="../files/using_catalog_generator.htm"><b>2</b></a> </nobr><br><nobr>uses <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>using <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> <a href="../files/about_salome_pro_architecture.htm"><b>3</b></a> <a href="../files/using_usecase_browser.htm"><b>4</b></a> <a href="../files/using_registry.htm"><b>5</b></a> <a href="../files/using_object_browser.htm"><b>6</b></a> <a href="../files/using_left-hand_tabs.htm"><b>7</b></a> <a href="../files/using_catalog_generator.htm"><b>8</b></a> <a href="../files/running_salome_pro.htm"><b>9</b></a> </nobr><br><nobr>usr <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><a name="bms_UT"></a><a name="subkey_UT"></a><a href="../files/about_salome_pro_help_system.htm"><b>utilities</b></a> <br>\r
+<br><br>\r
+<nobr><a name="bm_V"></a><a name="subkey_V{"></a>v <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><a name="bms_VA"></a><a name="subkey_VA"></a><a href="../files/setting_preferences.htm"><b>valid</b></a> <br><a href="../files/about_salome_pro_architecture.htm"><b>validation</b></a> <br><nobr>value <a href="../files/readme.html"><b>1</b></a> <a href="../files/using_object_browser.htm"><b>2</b></a> <a href="../files/setting_preferences.htm"><b>3</b></a> </nobr><br><nobr>variable <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>variables <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> <a href="../files/running_salome_pro.htm"><b>3</b></a> </nobr><br><nobr>variety <a href="../files/navigating_topics.htm"><b>1</b></a> <a href="../files/about_salome_pro_help_system.htm"><b>2</b></a> </nobr><br><nobr>various <a href="../files/readme.html"><b>1</b></a> <a href="../files/introduction_to_salome_pro.htm"><b>2</b></a> </nobr><br><nobr><a name="bms_VE"></a><a name="subkey_VE"></a>ve <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>ver <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>version <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> <a href="../files/using_catalog_generator.htm"><b>3</b></a> </nobr><br><nobr>very <a href="../files/readme.html"><b>1</b></a> <a href="../files/introduction.htm"><b>2</b></a> <a href="../files/installing_salome_pro.htm"><b>3</b></a> </nobr><br><nobr><a name="bms_VI"></a><a name="subkey_VI"></a>view <a href="../files/readme.html"><b>1</b></a> <a href="../files/navigating_topics.htm"><b>2</b></a> <a href="../files/installing_salome_pro.htm"><b>3</b></a> <a href="../files/getting_properties_of_the_study.htm"><b>4</b></a> <a href="../files/displaying_hiding_toolbars.htm"><b>5</b></a> <a href="../files/using_usecase_browser.htm"><b>6</b></a> <a href="../files/using_registry.htm"><b>7</b></a> <a href="../files/using_left-hand_tabs.htm"><b>8</b></a> <a href="../files/salome_pro_desktop.htm"><b>9</b></a> </nobr><br><nobr>viewer <a href="../files/introduction_to_iapp.htm"><b>1</b></a> <a href="../files/creating_a_new_study.htm"><b>2</b></a> <a href="../files/using_left-hand_tabs.htm"><b>3</b></a> <a href="../files/setting_preferences.htm"><b>4</b></a> <a href="../files/salome_pro_desktop.htm"><b>5</b></a> </nobr><br><nobr>viewers <a href="../files/introduction_to_iapp.htm"><b>1</b></a> <a href="../files/creating_a_new_study.htm"><b>2</b></a> <a href="../files/salome_pro_desktop.htm"><b>3</b></a> </nobr><br><nobr>viewing <a href="../files/navigating_topics.htm"><b>1</b></a> <a href="../files/setting_preferences.htm"><b>2</b></a> </nobr><br><nobr>visu <a href="../files/introduction_to_salome_pro.htm"><b>1</b></a> <a href="../files/editing_studies.htm"><b>2</b></a> <a href="../files/displaying_hiding_toolbars.htm"><b>3</b></a> <a href="../files/about_salome_pro_architecture.htm"><b>4</b></a> </nobr><br><nobr>visualization <a href="../files/introduction_to_salome_pro.htm"><b>1</b></a> <a href="../files/introduction_to_iapp.htm"><b>2</b></a> <a href="../files/getting_started2.htm"><b>3</b></a> <a href="../files/salome_pro_desktop.htm"><b>4</b></a> </nobr><br><nobr><a name="bms_VT"></a><a name="subkey_VT"></a>vtk <a href="../files/readme.html"><b>1</b></a> <a href="../files/introduction_to_iapp.htm"><b>2</b></a> <a href="../files/installing_salome_pro.htm"><b>3</b></a> <a href="../files/creating_a_new_study.htm"><b>4</b></a> <a href="../files/setting_preferences.htm"><b>5</b></a> <a href="../files/salome_pro_desktop.htm"><b>6</b></a> </nobr><br><nobr>vtkhome <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br>\r
+<br><br>\r
+<nobr><a name="bm_W"></a><a name="subkey_WA"></a>wait <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>waiting <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>want <a href="../files/readme.html"><b>1</b></a> <a href="../files/navigating_topics.htm"><b>2</b></a> <a href="../files/installing_salome_pro.htm"><b>3</b></a> </nobr><br><nobr>warning <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> <a href="../files/getting_properties_of_the_study.htm"><b>3</b></a> </nobr><br><nobr>way <a href="../files/readme.html"><b>1</b></a> <a href="../files/introduction_to_salome_pro.htm"><b>2</b></a> <a href="../files/installing_salome_pro.htm"><b>3</b></a> <a href="../files/using_left-hand_tabs.htm"><b>4</b></a> <a href="../files/using_catalog_generator.htm"><b>5</b></a> </nobr><br><a href="../files/displaying_studies.htm"><b>ways</b></a> <br><nobr><a name="bms_WE"></a><a name="subkey_WE"></a>welcome <a href="../files/introduction.htm"><b>1</b></a> <a href="../files/about_salome_pro_help_system.htm"><b>2</b></a> </nobr><br><a href="../files/salome_pro_desktop.htm"><b>well</b></a> <br><nobr><a name="bms_WH"></a><a name="subkey_WH"></a>what <a href="../files/readme.html"><b>1</b></a> <a href="../files/navigating_topics.htm"><b>2</b></a> <a href="../files/installing_salome_pro.htm"><b>3</b></a> <a href="../files/about_salome_pro_architecture.htm"><b>4</b></a> <a href="../files/using_usecase_browser.htm"><b>5</b></a> <a href="../files/using_object_browser.htm"><b>6</b></a> </nobr><br><a href="../files/readme.html"><b>whichpython</b></a> <br><a href="../files/readme.html"><b>whichswig</b></a> <br><a href="../files/about_salome_pro_architecture.htm"><b>while</b></a> <br><nobr>whole <a href="../files/setting_preferences.htm"><b>1</b></a> <a href="../files/saving_a_study.htm"><b>2</b></a> <a href="../files/salome_pro_desktop.htm"><b>3</b></a> </nobr><br><a name="bms_WI"></a><a name="subkey_WI"></a><a href="../files/about_salome_pro_help_system.htm"><b>wide</b></a> <br><nobr>will <a href="../files/readme.html"><b>1</b></a> <a href="../files/opening_studies.htm"><b>2</b></a> <a href="../files/installing_salome_pro.htm"><b>3</b></a> <a href="../files/getting_started2.htm"><b>4</b></a> <a href="../files/getting_properties_of_the_study.htm"><b>5</b></a> <a href="../files/displaying_studies.htm"><b>6</b></a> <a href="../files/displaying_hiding_toolbars.htm"><b>7</b></a> <a href="../files/creating_a_new_study.htm"><b>8</b></a> <a href="../files/about_salome_pro_help_system.htm"><b>9</b></a> <a href="../files/using_usecase_browser.htm"><b>10</b></a> <a href="../files/using_registry.htm"><b>11</b></a> <a href="../files/using_object_browser.htm"><b>12</b></a> <a href="../files/using_catalog_generator.htm"><b>13</b></a> <a href="../files/setting_preferences.htm"><b>14</b></a> <a href="../files/saving_a_study.htm"><b>15</b></a> <a href="../files/salome_pro_desktop.htm"><b>16</b></a> <a href="../files/running_salome_pro.htm"><b>17</b></a> </nobr><br><nobr>window <a href="../files/readme.html"><b>1</b></a> <a href="../files/navigating_topics.htm"><b>2</b></a> <a href="../files/introduction_to_iapp.htm"><b>3</b></a> <a href="../files/installing_salome_pro.htm"><b>4</b></a> <a href="../files/getting_started2.htm"><b>5</b></a> <a href="../files/displaying_studies.htm"><b>6</b></a> <a href="../files/displaying_hiding_toolbars.htm"><b>7</b></a> <a href="../files/creating_a_new_study.htm"><b>8</b></a> <a href="../files/using_usecase_browser.htm"><b>9</b></a> <a href="../files/using_registry.htm"><b>10</b></a> <a href="../files/setting_preferences.htm"><b>11</b></a> <a href="../files/saving_a_study.htm"><b>12</b></a> <a href="../files/salome_pro_desktop.htm"><b>13</b></a> <a href="../files/running_salome_pro.htm"><b>14</b></a> </nobr><br><nobr>windows <a href="../files/navigating_topics.htm"><b>1</b></a> <a href="../files/displaying_studies.htm"><b>2</b></a> <a href="../files/creating_a_new_study.htm"><b>3</b></a> <a href="../files/about_salome_pro_help_system.htm"><b>4</b></a> <a href="../files/setting_preferences.htm"><b>5</b></a> </nobr><br><nobr>wish8 <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr>within <a href="../files/editing_studies.htm"><b>1</b></a> <a href="../files/about_salome_pro_architecture.htm"><b>2</b></a> <a href="../files/using_registry.htm"><b>3</b></a> <a href="../files/setting_preferences.htm"><b>4</b></a> <a href="../files/salome_pro_desktop.htm"><b>5</b></a> </nobr><br><nobr>without <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> <a href="../files/copyright_notice.htm"><b>3</b></a> <a href="../files/about_salome_pro_architecture.htm"><b>4</b></a> <a href="../files/using_usecase_browser.htm"><b>5</b></a> <a href="../files/running_salome_pro.htm"><b>6</b></a> </nobr><br><nobr>wizard <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr><a name="bms_WO"></a><a name="subkey_WO"></a>won <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><a href="../files/using_left-hand_tabs.htm"><b>word</b></a> <br><a href="../files/using_left-hand_tabs.htm"><b>words</b></a> <br><nobr>work <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> <a href="../files/getting_started2.htm"><b>3</b></a> <a href="../files/about_salome_pro_architecture.htm"><b>4</b></a> </nobr><br><nobr>working <a href="../files/getting_started2.htm"><b>1</b></a> <a href="../files/using_left-hand_tabs.htm"><b>2</b></a> <a href="../files/saving_a_study.htm"><b>3</b></a> </nobr><br><nobr>would <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> <a href="../files/displaying_hiding_toolbars.htm"><b>3</b></a> <a href="../files/using_usecase_browser.htm"><b>4</b></a> <a href="../files/using_catalog_generator.htm"><b>5</b></a> <a href="../files/saving_a_study.htm"><b>6</b></a> </nobr><br><a name="bms_WR"></a><a name="subkey_WR"></a><a href="../files/saving_a_study.htm"><b>write</b></a> <br><a href="../files/copyright_notice.htm"><b>writing</b></a> <br><a href="../files/saving_a_study.htm"><b>written</b></a> <br><nobr>wrong <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><a name="bms_WW"></a><a name="subkey_WW"></a><a href="../files/about_salome_pro_architecture.htm"><b>www</b></a> <br>\r
+<br><br>\r
+<a name="bm_X"></a><a name="subkey_X{"></a><a href="../files/running_salome_pro.htm"><b>x</b></a> <br><nobr><a name="bms_XM"></a><a name="subkey_XM"></a>xml <a href="../files/readme.html"><b>1</b></a> <a href="../files/using_catalog_generator.htm"><b>2</b></a> <a href="../files/running_salome_pro.htm"><b>3</b></a> </nobr><br><br><br></p><p class="ftsbody" align="center"><a href="whlstf9.htm" target="_self" title="previous search group"><b>>></b></a>\r
+\r
+</body>\r
+\r
+</html>\r
+\r
--- /dev/null
+<html>\r
+<head>\r
+<title>Search Words List</title>\r
+<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
+<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">\r
+<meta name "description" content="WebHelp 2002">\r
+<base target="bsscright">\r
+<style>\r
+<!--\r
+body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}\r
+\r
+A:link {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
+A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
+A:active {background-color:#cccccc;}\r
+A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal; text-decoration:underline; }\r
+\r
+.tabs {background-color:#c0c0c0;}\r
+.ftsheader {margin-left:10pt; margin-top:0pt;}\r
+.ftsbody {margin-left:10pt; margin-top:0pt;}\r
+.inactive {color:#666666;}\r
+.ftsheader {background-color:White; } \r
+\r
+body {background-color:White; } \r
+p {color:Black; } p {font-family:Tahoma; } p {font-size:8pt; } p {font-style:Normal; } p {text-decoration:none; } \r
+A:link {color:Black; } A:link {font-family:Tahoma; } A:link {font-size:8pt; } A:link {font-style:Normal; } A:link {text-decoration:none; } \r
+A:visited {color:Black; } A:visited {font-family:Tahoma; } A:visited {font-size:8pt; } A:visited {font-style:Normal; } A:visited {text-decoration:none; } \r
+A:active {background-color:Silver; } \r
+A:hover {color:Navy; } A:hover {font-family:Tahoma; } A:hover {font-size:8pt; } A:hover {font-style:Normal; } A:hover {text-decoration:underline; } \r
+\r
+-->\r
+</style>\r
+</head>\r
+<body marginheight="0" marginwidth="0">\r
+<p class="ftsbody" align="center"><a href="whlstf8.htm" target="_self" title="previous search group"><b><<</b></a><br><br></p>\r
+<p class="ftsbody">\r
+<a name="bms_XT"></a><a name="subkey_XT"></a><a href="../files/running_salome_pro.htm"><b>xterm</b></a> <br>\r
+<br><br>\r
+<nobr><a name="bm_Y"></a><a name="subkey_Y{"></a>y <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><a name="bms_YE"></a><a name="subkey_YE"></a><a href="../files/introduction.htm"><b>year</b></a> <br><a href="../files/getting_properties_of_the_study.htm"><b>yes</b></a> <br><nobr>yet <a href="../files/readme.html"><b>1</b></a> <a href="../files/installing_salome_pro.htm"><b>2</b></a> </nobr><br><nobr><a name="bms_YO"></a><a name="subkey_YO"></a>your <a href="../files/readme.html"><b>1</b></a> <a href="../files/introduction_to_salome_pro.htm"><b>2</b></a> <a href="../files/installing_salome_pro.htm"><b>3</b></a> <a href="../files/getting_properties_of_the_study.htm"><b>4</b></a> <a href="../files/editing_studies.htm"><b>5</b></a> <a href="../files/displaying_studies.htm"><b>6</b></a> <a href="../files/creating_a_new_study.htm"><b>7</b></a> <a href="../files/using_usecase_browser.htm"><b>8</b></a> <a href="../files/using_left-hand_tabs.htm"><b>9</b></a> <a href="../files/using_catalog_generator.htm"><b>10</b></a> <a href="../files/saving_a_study.htm"><b>11</b></a> <a href="../files/salome_pro_desktop.htm"><b>12</b></a> <a href="../files/running_salome_pro.htm"><b>13</b></a> </nobr><br>\r
+<br><br>\r
+<a name="bm_Z"></a><a name="subkey_ZO"></a><a href="../files/creating_a_new_study.htm"><b>zone</b></a> <br><a href="../files/salome_pro_desktop.htm"><b>zooming</b></a> <br><br><br></p>\r
+</body>\r
+\r
+</html>\r
+\r
--- /dev/null
+<html>\r
+<head>\r
+<title>Search Words letter</title>\r
+<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
+<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">\r
+<meta name "description" content="WebHelp 2002">\r
+<base target="bsscright">\r
+<style>\r
+<!--\r
+body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}\r
+\r
+A:link {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
+A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
+A:active {background-color:#cccccc;}\r
+A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal; text-decoration:underline; }\r
+\r
+.tabs {background-color:#c0c0c0;}\r
+.ftsheader {margin-left:10pt; margin-top:0pt;}\r
+.ftsbody {margin-left:10pt; margin-top:0pt;}\r
+.inactive {color:#666666;}\r
+.ftsheader {background-color:White; } \r
+\r
+body {background-color:White; } \r
+p {color:Black; } p {font-family:Tahoma; } p {font-size:8pt; } p {font-style:Normal; } p {text-decoration:none; } \r
+A:link {color:Black; } A:link {font-family:Tahoma; } A:link {font-size:8pt; } A:link {font-style:Normal; } A:link {text-decoration:none; } \r
+A:visited {color:Black; } A:visited {font-family:Tahoma; } A:visited {font-size:8pt; } A:visited {font-style:Normal; } A:visited {text-decoration:none; } \r
+A:active {background-color:Silver; } \r
+A:hover {color:Navy; } A:hover {font-family:Tahoma; } A:hover {font-size:8pt; } A:hover {font-style:Normal; } A:hover {text-decoration:underline; } \r
+\r
+-->\r
+</style>\r
+<style>\r
+<!--\r
+body {background-color:White; } \r
+-->\r
+</style>\r
+</head>\r
+<body marginheight="0" marginwidth="0">\r
+\r
+<p class="ftsheader"><a name="subkey_A"></a> <a href="whnvl32.htm#home" target="_self" title="back to top level"><b>^</b></a> <a href="whlstf0.htm#bm_A" target="ftslist" title="search letter AB"><b>AB</b></a> <a href="whlstf0.htm#bms_AC" target="ftslist" title="search letter AC"><b>AC</b></a> <a href="whlstf0.htm#bms_AD" target="ftslist" title="search letter AD"><b>AD</b></a> <a href="whlstf0.htm#bms_AF" target="ftslist" title="search letter AF"><b>AF</b></a> <a href="whlstf0.htm#bms_AG" target="ftslist" title="search letter AG"><b>AG</b></a> <a href="whlstf0.htm#bms_AL" target="ftslist" title="search letter AL"><b>AL</b></a> <a href="whlstf0.htm#bms_AM" target="ftslist" title="search letter AM"><b>AM</b></a> <a href="whlstf0.htm#bms_AN" target="ftslist" title="search letter AN"><b>AN</b></a> <a href="whlstf0.htm#bms_AP" target="ftslist" title="search letter AP"><b>AP</b></a> <a href="whlstf0.htm#bms_AR" target="ftslist" title="search letter AR"><b>AR</b></a> <a href="whlstf0.htm#bms_AS" target="ftslist" title="search letter AS"><b>AS</b></a> <a href="whlstf0.htm#bms_AT" target="ftslist" title="search letter AT"><b>AT</b></a> <a href="whlstf0.htm#bms_AU" target="ftslist" title="search letter AU"><b>AU</b></a> <a href="whlstf0.htm#bms_AV" target="ftslist" title="search letter AV"><b>AV</b></a> <a href="whlstf0.htm#bms_AW" target="ftslist" title="search letter AW"><b>AW</b></a> <a href="whnvl32.htm#home" target="_self" title="back to top level"><b>^</b></a></p>\r
+\r
+</body>\r
+\r
+</html>\r
+\r
--- /dev/null
+<html>\r
+<head>\r
+<title>Search Words letter</title>\r
+<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
+<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">\r
+<meta name "description" content="WebHelp 2002">\r
+<base target="bsscright">\r
+<style>\r
+<!--\r
+body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}\r
+\r
+A:link {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
+A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
+A:active {background-color:#cccccc;}\r
+A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal; text-decoration:underline; }\r
+\r
+.tabs {background-color:#c0c0c0;}\r
+.ftsheader {margin-left:10pt; margin-top:0pt;}\r
+.ftsbody {margin-left:10pt; margin-top:0pt;}\r
+.inactive {color:#666666;}\r
+.ftsheader {background-color:White; } \r
+\r
+body {background-color:White; } \r
+p {color:Black; } p {font-family:Tahoma; } p {font-size:8pt; } p {font-style:Normal; } p {text-decoration:none; } \r
+A:link {color:Black; } A:link {font-family:Tahoma; } A:link {font-size:8pt; } A:link {font-style:Normal; } A:link {text-decoration:none; } \r
+A:visited {color:Black; } A:visited {font-family:Tahoma; } A:visited {font-size:8pt; } A:visited {font-style:Normal; } A:visited {text-decoration:none; } \r
+A:active {background-color:Silver; } \r
+A:hover {color:Navy; } A:hover {font-family:Tahoma; } A:hover {font-size:8pt; } A:hover {font-style:Normal; } A:hover {text-decoration:underline; } \r
+\r
+-->\r
+</style>\r
+<style>\r
+<!--\r
+body {background-color:White; } \r
+-->\r
+</style>\r
+</head>\r
+<body marginheight="0" marginwidth="0">\r
+\r
+<p class="ftsheader"><a name="subkey_B"></a> <a href="whnvl32.htm#home" target="_self" title="back to top level"><b>^</b></a> <a href="whlstf0.htm#bm_B" target="ftslist" title="search letter B "><b>B </b></a> <a href="whlstf0.htm#bms_BA" target="ftslist" title="search letter BA"><b>BA</b></a> <a href="whlstf0.htm#bms_BE" target="ftslist" title="search letter BE"><b>BE</b></a> <a href="whlstf0.htm#bms_BI" target="ftslist" title="search letter BI"><b>BI</b></a> <a href="whlstf0.htm#bms_BL" target="ftslist" title="search letter BL"><b>BL</b></a> <a href="whlstf0.htm#bms_BM" target="ftslist" title="search letter BM"><b>BM</b></a> <a href="whlstf0.htm#bms_BO" target="ftslist" title="search letter BO"><b>BO</b></a> <a href="whlstf0.htm#bms_BR" target="ftslist" title="search letter BR"><b>BR</b></a> <a href="whlstf0.htm#bms_BU" target="ftslist" title="search letter BU"><b>BU</b></a> <a href="whnvl32.htm#home" target="_self" title="back to top level"><b>^</b></a></p>\r
+\r
+</body>\r
+\r
+</html>\r
+\r
--- /dev/null
+<html>\r
+<head>\r
+<title>Search Words letter</title>\r
+<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
+<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">\r
+<meta name "description" content="WebHelp 2002">\r
+<base target="bsscright">\r
+<style>\r
+<!--\r
+body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}\r
+\r
+A:link {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
+A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
+A:active {background-color:#cccccc;}\r
+A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal; text-decoration:underline; }\r
+\r
+.tabs {background-color:#c0c0c0;}\r
+.ftsheader {margin-left:10pt; margin-top:0pt;}\r
+.ftsbody {margin-left:10pt; margin-top:0pt;}\r
+.inactive {color:#666666;}\r
+.ftsheader {background-color:White; } \r
+\r
+body {background-color:White; } \r
+p {color:Black; } p {font-family:Tahoma; } p {font-size:8pt; } p {font-style:Normal; } p {text-decoration:none; } \r
+A:link {color:Black; } A:link {font-family:Tahoma; } A:link {font-size:8pt; } A:link {font-style:Normal; } A:link {text-decoration:none; } \r
+A:visited {color:Black; } A:visited {font-family:Tahoma; } A:visited {font-size:8pt; } A:visited {font-style:Normal; } A:visited {text-decoration:none; } \r
+A:active {background-color:Silver; } \r
+A:hover {color:Navy; } A:hover {font-family:Tahoma; } A:hover {font-size:8pt; } A:hover {font-style:Normal; } A:hover {text-decoration:underline; } \r
+\r
+-->\r
+</style>\r
+<style>\r
+<!--\r
+body {background-color:White; } \r
+-->\r
+</style>\r
+</head>\r
+<body marginheight="0" marginwidth="0">\r
+\r
+<p class="ftsheader"><a name="subkey_K"></a> <a href="whnvl32.htm#home" target="_self" title="back to top level"><b>^</b></a> <a href="whlstf4.htm#bm_K" target="ftslist" title="search letter K "><b>K </b></a> <a href="whlstf4.htm#bms_KB" target="ftslist" title="search letter KB"><b>KB</b></a> <a href="whlstf4.htm#bms_KE" target="ftslist" title="search letter KE"><b>KE</b></a> <a href="whlstf4.htm#bms_KI" target="ftslist" title="search letter KI"><b>KI</b></a> <a href="whlstf4.htm#bms_KN" target="ftslist" title="search letter KN"><b>KN</b></a> <a href="whnvl32.htm#home" target="_self" title="back to top level"><b>^</b></a></p>\r
+\r
+</body>\r
+\r
+</html>\r
+\r
--- /dev/null
+<html>\r
+<head>\r
+<title>Search Words letter</title>\r
+<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
+<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">\r
+<meta name "description" content="WebHelp 2002">\r
+<base target="bsscright">\r
+<style>\r
+<!--\r
+body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}\r
+\r
+A:link {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
+A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
+A:active {background-color:#cccccc;}\r
+A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal; text-decoration:underline; }\r
+\r
+.tabs {background-color:#c0c0c0;}\r
+.ftsheader {margin-left:10pt; margin-top:0pt;}\r
+.ftsbody {margin-left:10pt; margin-top:0pt;}\r
+.inactive {color:#666666;}\r
+.ftsheader {background-color:White; } \r
+\r
+body {background-color:White; } \r
+p {color:Black; } p {font-family:Tahoma; } p {font-size:8pt; } p {font-style:Normal; } p {text-decoration:none; } \r
+A:link {color:Black; } A:link {font-family:Tahoma; } A:link {font-size:8pt; } A:link {font-style:Normal; } A:link {text-decoration:none; } \r
+A:visited {color:Black; } A:visited {font-family:Tahoma; } A:visited {font-size:8pt; } A:visited {font-style:Normal; } A:visited {text-decoration:none; } \r
+A:active {background-color:Silver; } \r
+A:hover {color:Navy; } A:hover {font-family:Tahoma; } A:hover {font-size:8pt; } A:hover {font-style:Normal; } A:hover {text-decoration:underline; } \r
+\r
+-->\r
+</style>\r
+<style>\r
+<!--\r
+body {background-color:White; } \r
+-->\r
+</style>\r
+</head>\r
+<body marginheight="0" marginwidth="0">\r
+\r
+<p class="ftsheader"><a name="subkey_L"></a> <a href="whnvl32.htm#home" target="_self" title="back to top level"><b>^</b></a> <a href="whlstf4.htm#bm_L" target="ftslist" title="search letter L "><b>L </b></a> <a href="whlstf4.htm#bms_LA" target="ftslist" title="search letter LA"><b>LA</b></a> <a href="whlstf4.htm#bms_LD" target="ftslist" title="search letter LD"><b>LD</b></a> <a href="whlstf4.htm#bms_LE" target="ftslist" title="search letter LE"><b>LE</b></a> <a href="whlstf4.htm#bms_LI" target="ftslist" title="search letter LI"><b>LI</b></a> <a href="whlstf4.htm#bms_LO" target="ftslist" title="search letter LO"><b>LO</b></a> <a href="whnvl32.htm#home" target="_self" title="back to top level"><b>^</b></a></p>\r
+\r
+</body>\r
+\r
+</html>\r
+\r
--- /dev/null
+<html>\r
+<head>\r
+<title>Search Words letter</title>\r
+<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
+<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">\r
+<meta name "description" content="WebHelp 2002">\r
+<base target="bsscright">\r
+<style>\r
+<!--\r
+body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}\r
+\r
+A:link {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
+A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
+A:active {background-color:#cccccc;}\r
+A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal; text-decoration:underline; }\r
+\r
+.tabs {background-color:#c0c0c0;}\r
+.ftsheader {margin-left:10pt; margin-top:0pt;}\r
+.ftsbody {margin-left:10pt; margin-top:0pt;}\r
+.inactive {color:#666666;}\r
+.ftsheader {background-color:White; } \r
+\r
+body {background-color:White; } \r
+p {color:Black; } p {font-family:Tahoma; } p {font-size:8pt; } p {font-style:Normal; } p {text-decoration:none; } \r
+A:link {color:Black; } A:link {font-family:Tahoma; } A:link {font-size:8pt; } A:link {font-style:Normal; } A:link {text-decoration:none; } \r
+A:visited {color:Black; } A:visited {font-family:Tahoma; } A:visited {font-size:8pt; } A:visited {font-style:Normal; } A:visited {text-decoration:none; } \r
+A:active {background-color:Silver; } \r
+A:hover {color:Navy; } A:hover {font-family:Tahoma; } A:hover {font-size:8pt; } A:hover {font-style:Normal; } A:hover {text-decoration:underline; } \r
+\r
+-->\r
+</style>\r
+<style>\r
+<!--\r
+body {background-color:White; } \r
+-->\r
+</style>\r
+</head>\r
+<body marginheight="0" marginwidth="0">\r
+\r
+<p class="ftsheader"><a name="subkey_M"></a> <a href="whnvl32.htm#home" target="_self" title="back to top level"><b>^</b></a> <a href="whlstf4.htm#bm_M" target="ftslist" title="search letter M "><b>M </b></a> <a href="whlstf4.htm#bms_MA" target="ftslist" title="search letter MA"><b>MA</b></a> <a href="whlstf4.htm#bms_ME" target="ftslist" title="search letter ME"><b>ME</b></a> <a href="whlstf4.htm#bms_MI" target="ftslist" title="search letter MI"><b>MI</b></a> <a href="whlstf4.htm#bms_MO" target="ftslist" title="search letter MO"><b>MO</b></a> <a href="whlstf4.htm#bms_MT" target="ftslist" title="search letter MT"><b>MT</b></a> <a href="whlstf4.htm#bms_MU" target="ftslist" title="search letter MU"><b>MU</b></a> <a href="whnvl32.htm#home" target="_self" title="back to top level"><b>^</b></a></p>\r
+\r
+</body>\r
+\r
+</html>\r
+\r
--- /dev/null
+<html>\r
+<head>\r
+<title>Search Words letter</title>\r
+<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
+<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">\r
+<meta name "description" content="WebHelp 2002">\r
+<base target="bsscright">\r
+<style>\r
+<!--\r
+body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}\r
+\r
+A:link {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
+A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
+A:active {background-color:#cccccc;}\r
+A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal; text-decoration:underline; }\r
+\r
+.tabs {background-color:#c0c0c0;}\r
+.ftsheader {margin-left:10pt; margin-top:0pt;}\r
+.ftsbody {margin-left:10pt; margin-top:0pt;}\r
+.inactive {color:#666666;}\r
+.ftsheader {background-color:White; } \r
+\r
+body {background-color:White; } \r
+p {color:Black; } p {font-family:Tahoma; } p {font-size:8pt; } p {font-style:Normal; } p {text-decoration:none; } \r
+A:link {color:Black; } A:link {font-family:Tahoma; } A:link {font-size:8pt; } A:link {font-style:Normal; } A:link {text-decoration:none; } \r
+A:visited {color:Black; } A:visited {font-family:Tahoma; } A:visited {font-size:8pt; } A:visited {font-style:Normal; } A:visited {text-decoration:none; } \r
+A:active {background-color:Silver; } \r
+A:hover {color:Navy; } A:hover {font-family:Tahoma; } A:hover {font-size:8pt; } A:hover {font-style:Normal; } A:hover {text-decoration:underline; } \r
+\r
+-->\r
+</style>\r
+<style>\r
+<!--\r
+body {background-color:White; } \r
+-->\r
+</style>\r
+</head>\r
+<body marginheight="0" marginwidth="0">\r
+\r
+<p class="ftsheader"><a name="subkey_N"></a> <a href="whnvl32.htm#home" target="_self" title="back to top level"><b>^</b></a> <a href="whlstf5.htm#bm_N" target="ftslist" title="search letter N "><b>N </b></a> <a href="whlstf5.htm#bms_NA" target="ftslist" title="search letter NA"><b>NA</b></a> <a href="whlstf5.htm#bms_NE" target="ftslist" title="search letter NE"><b>NE</b></a> <a href="whlstf5.htm#bms_NO" target="ftslist" title="search letter NO"><b>NO</b></a> <a href="whlstf5.htm#bms_NU" target="ftslist" title="search letter NU"><b>NU</b></a> <a href="whnvl32.htm#home" target="_self" title="back to top level"><b>^</b></a></p>\r
+\r
+</body>\r
+\r
+</html>\r
+\r
--- /dev/null
+<html>\r
+<head>\r
+<title>Search Words letter</title>\r
+<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
+<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">\r
+<meta name "description" content="WebHelp 2002">\r
+<base target="bsscright">\r
+<style>\r
+<!--\r
+body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}\r
+\r
+A:link {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
+A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
+A:active {background-color:#cccccc;}\r
+A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal; text-decoration:underline; }\r
+\r
+.tabs {background-color:#c0c0c0;}\r
+.ftsheader {margin-left:10pt; margin-top:0pt;}\r
+.ftsbody {margin-left:10pt; margin-top:0pt;}\r
+.inactive {color:#666666;}\r
+.ftsheader {background-color:White; } \r
+\r
+body {background-color:White; } \r
+p {color:Black; } p {font-family:Tahoma; } p {font-size:8pt; } p {font-style:Normal; } p {text-decoration:none; } \r
+A:link {color:Black; } A:link {font-family:Tahoma; } A:link {font-size:8pt; } A:link {font-style:Normal; } A:link {text-decoration:none; } \r
+A:visited {color:Black; } A:visited {font-family:Tahoma; } A:visited {font-size:8pt; } A:visited {font-style:Normal; } A:visited {text-decoration:none; } \r
+A:active {background-color:Silver; } \r
+A:hover {color:Navy; } A:hover {font-family:Tahoma; } A:hover {font-size:8pt; } A:hover {font-style:Normal; } A:hover {text-decoration:underline; } \r
+\r
+-->\r
+</style>\r
+<style>\r
+<!--\r
+body {background-color:White; } \r
+-->\r
+</style>\r
+</head>\r
+<body marginheight="0" marginwidth="0">\r
+\r
+<p class="ftsheader"><a name="subkey_O"></a> <a href="whnvl32.htm#home" target="_self" title="back to top level"><b>^</b></a> <a href="whlstf5.htm#bm_O" target="ftslist" title="search letter OB"><b>OB</b></a> <a href="whlstf5.htm#bms_OC" target="ftslist" title="search letter OC"><b>OC</b></a> <a href="whlstf5.htm#bms_OF" target="ftslist" title="search letter OF"><b>OF</b></a> <a href="whlstf5.htm#bms_OK" target="ftslist" title="search letter OK"><b>OK</b></a> <a href="whlstf5.htm#bms_OM" target="ftslist" title="search letter OM"><b>OM</b></a> <a href="whlstf5.htm#bms_ON" target="ftslist" title="search letter ON"><b>ON</b></a> <a href="whlstf5.htm#bms_OP" target="ftslist" title="search letter OP"><b>OP</b></a> <a href="whlstf5.htm#bms_OR" target="ftslist" title="search letter OR"><b>OR</b></a> <a href="whlstf5.htm#bms_OS" target="ftslist" title="search letter OS"><b>OS</b></a> <a href="whlstf5.htm#bms_OT" target="ftslist" title="search letter OT"><b>OT</b></a> <a href="whlstf5.htm#bms_OU" target="ftslist" title="search letter OU"><b>OU</b></a> <a href="whlstf5.htm#bms_OV" target="ftslist" title="search letter OV"><b>OV</b></a> <a href="whlstf5.htm#bms_OW" target="ftslist" title="search letter OW"><b>OW</b></a> <a href="whnvl32.htm#home" target="_self" title="back to top level"><b>^</b></a></p>\r
+\r
+</body>\r
+\r
+</html>\r
+\r
--- /dev/null
+<html>\r
+<head>\r
+<title>Search Words letter</title>\r
+<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
+<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">\r
+<meta name "description" content="WebHelp 2002">\r
+<base target="bsscright">\r
+<style>\r
+<!--\r
+body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}\r
+\r
+A:link {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
+A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
+A:active {background-color:#cccccc;}\r
+A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal; text-decoration:underline; }\r
+\r
+.tabs {background-color:#c0c0c0;}\r
+.ftsheader {margin-left:10pt; margin-top:0pt;}\r
+.ftsbody {margin-left:10pt; margin-top:0pt;}\r
+.inactive {color:#666666;}\r
+.ftsheader {background-color:White; } \r
+\r
+body {background-color:White; } \r
+p {color:Black; } p {font-family:Tahoma; } p {font-size:8pt; } p {font-style:Normal; } p {text-decoration:none; } \r
+A:link {color:Black; } A:link {font-family:Tahoma; } A:link {font-size:8pt; } A:link {font-style:Normal; } A:link {text-decoration:none; } \r
+A:visited {color:Black; } A:visited {font-family:Tahoma; } A:visited {font-size:8pt; } A:visited {font-style:Normal; } A:visited {text-decoration:none; } \r
+A:active {background-color:Silver; } \r
+A:hover {color:Navy; } A:hover {font-family:Tahoma; } A:hover {font-size:8pt; } A:hover {font-style:Normal; } A:hover {text-decoration:underline; } \r
+\r
+-->\r
+</style>\r
+<style>\r
+<!--\r
+body {background-color:White; } \r
+-->\r
+</style>\r
+</head>\r
+<body marginheight="0" marginwidth="0">\r
+\r
+<p class="ftsheader"><a name="subkey_P"></a> <a href="whnvl32.htm#home" target="_self" title="back to top level"><b>^</b></a> <a href="whlstf5.htm#bm_P" target="ftslist" title="search letter P "><b>P </b></a> <a href="whlstf5.htm#bms_PA" target="ftslist" title="search letter PA"><b>PA</b></a> <a href="whlstf5.htm#bms_PC" target="ftslist" title="search letter PC"><b>PC</b></a> <a href="whlstf5.htm#bms_PE" target="ftslist" title="search letter PE"><b>PE</b></a> <a href="whlstf5.htm#bms_PH" target="ftslist" title="search letter PH"><b>PH</b></a> <a href="whlstf5.htm#bms_PI" target="ftslist" title="search letter PI"><b>PI</b></a> <a href="whlstf5.htm#bms_PL" target="ftslist" title="search letter PL"><b>PL</b></a> <a href="whlstf5.htm#bms_PN" target="ftslist" title="search letter PN"><b>PN</b></a> <a href="whlstf5.htm#bms_PO" target="ftslist" title="search letter PO"><b>PO</b></a> <a href="whlstf5.htm#bms_PR" target="ftslist" title="search letter PR"><b>PR</b></a> <a href="whlstf6.htm#bms_PU" target="ftslist" title="search letter PU"><b>PU</b></a> <a href="whlstf6.htm#bms_PY" target="ftslist" title="search letter PY"><b>PY</b></a> <a href="whnvl32.htm#home" target="_self" title="back to top level"><b>^</b></a></p>\r
+\r
+</body>\r
+\r
+</html>\r
+\r
--- /dev/null
+<html>\r
+<head>\r
+<title>Search Words letter</title>\r
+<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
+<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">\r
+<meta name "description" content="WebHelp 2002">\r
+<base target="bsscright">\r
+<style>\r
+<!--\r
+body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}\r
+\r
+A:link {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
+A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
+A:active {background-color:#cccccc;}\r
+A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal; text-decoration:underline; }\r
+\r
+.tabs {background-color:#c0c0c0;}\r
+.ftsheader {margin-left:10pt; margin-top:0pt;}\r
+.ftsbody {margin-left:10pt; margin-top:0pt;}\r
+.inactive {color:#666666;}\r
+.ftsheader {background-color:White; } \r
+\r
+body {background-color:White; } \r
+p {color:Black; } p {font-family:Tahoma; } p {font-size:8pt; } p {font-style:Normal; } p {text-decoration:none; } \r
+A:link {color:Black; } A:link {font-family:Tahoma; } A:link {font-size:8pt; } A:link {font-style:Normal; } A:link {text-decoration:none; } \r
+A:visited {color:Black; } A:visited {font-family:Tahoma; } A:visited {font-size:8pt; } A:visited {font-style:Normal; } A:visited {text-decoration:none; } \r
+A:active {background-color:Silver; } \r
+A:hover {color:Navy; } A:hover {font-family:Tahoma; } A:hover {font-size:8pt; } A:hover {font-style:Normal; } A:hover {text-decoration:underline; } \r
+\r
+-->\r
+</style>\r
+<style>\r
+<!--\r
+body {background-color:White; } \r
+-->\r
+</style>\r
+</head>\r
+<body marginheight="0" marginwidth="0">\r
+\r
+<p class="ftsheader"><a name="subkey_Q"></a> <a href="whnvl32.htm#home" target="_self" title="back to top level"><b>^</b></a> <a href="whlstf6.htm#bm_Q" target="ftslist" title="search letter QT"><b>QT</b></a> <a href="whlstf6.htm#bms_QU" target="ftslist" title="search letter QU"><b>QU</b></a> <a href="whlstf6.htm#bms_QW" target="ftslist" title="search letter QW"><b>QW</b></a> <a href="whnvl32.htm#home" target="_self" title="back to top level"><b>^</b></a></p>\r
+\r
+</body>\r
+\r
+</html>\r
+\r
--- /dev/null
+<html>\r
+<head>\r
+<title>Search Words letter</title>\r
+<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
+<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">\r
+<meta name "description" content="WebHelp 2002">\r
+<base target="bsscright">\r
+<style>\r
+<!--\r
+body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}\r
+\r
+A:link {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
+A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
+A:active {background-color:#cccccc;}\r
+A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal; text-decoration:underline; }\r
+\r
+.tabs {background-color:#c0c0c0;}\r
+.ftsheader {margin-left:10pt; margin-top:0pt;}\r
+.ftsbody {margin-left:10pt; margin-top:0pt;}\r
+.inactive {color:#666666;}\r
+.ftsheader {background-color:White; } \r
+\r
+body {background-color:White; } \r
+p {color:Black; } p {font-family:Tahoma; } p {font-size:8pt; } p {font-style:Normal; } p {text-decoration:none; } \r
+A:link {color:Black; } A:link {font-family:Tahoma; } A:link {font-size:8pt; } A:link {font-style:Normal; } A:link {text-decoration:none; } \r
+A:visited {color:Black; } A:visited {font-family:Tahoma; } A:visited {font-size:8pt; } A:visited {font-style:Normal; } A:visited {text-decoration:none; } \r
+A:active {background-color:Silver; } \r
+A:hover {color:Navy; } A:hover {font-family:Tahoma; } A:hover {font-size:8pt; } A:hover {font-style:Normal; } A:hover {text-decoration:underline; } \r
+\r
+-->\r
+</style>\r
+<style>\r
+<!--\r
+body {background-color:White; } \r
+-->\r
+</style>\r
+</head>\r
+<body marginheight="0" marginwidth="0">\r
+\r
+<p class="ftsheader"><a name="subkey_R"></a> <a href="whnvl32.htm#home" target="_self" title="back to top level"><b>^</b></a> <a href="whlstf6.htm#bm_R" target="ftslist" title="search letter RA"><b>RA</b></a> <a href="whlstf6.htm#bms_RC" target="ftslist" title="search letter RC"><b>RC</b></a> <a href="whlstf6.htm#bms_RE" target="ftslist" title="search letter RE"><b>RE</b></a> <a href="whlstf6.htm#bms_RI" target="ftslist" title="search letter RI"><b>RI</b></a> <a href="whlstf6.htm#bms_RO" target="ftslist" title="search letter RO"><b>RO</b></a> <a href="whlstf6.htm#bms_RU" target="ftslist" title="search letter RU"><b>RU</b></a> <a href="whnvl32.htm#home" target="_self" title="back to top level"><b>^</b></a></p>\r
+\r
+</body>\r
+\r
+</html>\r
+\r
--- /dev/null
+<html>\r
+<head>\r
+<title>Search Words letter</title>\r
+<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
+<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">\r
+<meta name "description" content="WebHelp 2002">\r
+<base target="bsscright">\r
+<style>\r
+<!--\r
+body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}\r
+\r
+A:link {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
+A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
+A:active {background-color:#cccccc;}\r
+A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal; text-decoration:underline; }\r
+\r
+.tabs {background-color:#c0c0c0;}\r
+.ftsheader {margin-left:10pt; margin-top:0pt;}\r
+.ftsbody {margin-left:10pt; margin-top:0pt;}\r
+.inactive {color:#666666;}\r
+.ftsheader {background-color:White; } \r
+\r
+body {background-color:White; } \r
+p {color:Black; } p {font-family:Tahoma; } p {font-size:8pt; } p {font-style:Normal; } p {text-decoration:none; } \r
+A:link {color:Black; } A:link {font-family:Tahoma; } A:link {font-size:8pt; } A:link {font-style:Normal; } A:link {text-decoration:none; } \r
+A:visited {color:Black; } A:visited {font-family:Tahoma; } A:visited {font-size:8pt; } A:visited {font-style:Normal; } A:visited {text-decoration:none; } \r
+A:active {background-color:Silver; } \r
+A:hover {color:Navy; } A:hover {font-family:Tahoma; } A:hover {font-size:8pt; } A:hover {font-style:Normal; } A:hover {text-decoration:underline; } \r
+\r
+-->\r
+</style>\r
+<style>\r
+<!--\r
+body {background-color:White; } \r
+-->\r
+</style>\r
+</head>\r
+<body marginheight="0" marginwidth="0">\r
+\r
+<p class="ftsheader"><a name="subkey_S"></a> <a href="whnvl32.htm#home" target="_self" title="back to top level"><b>^</b></a> <a href="whlstf6.htm#bm_S" target="ftslist" title="search letter S "><b>S </b></a> <a href="whlstf6.htm#bms_SA" target="ftslist" title="search letter SA"><b>SA</b></a> <a href="whlstf6.htm#bms_SC" target="ftslist" title="search letter SC"><b>SC</b></a> <a href="whlstf6.htm#bms_SE" target="ftslist" title="search letter SE"><b>SE</b></a> <a href="whlstf7.htm#bms_SH" target="ftslist" title="search letter SH"><b>SH</b></a> <a href="whlstf7.htm#bms_SI" target="ftslist" title="search letter SI"><b>SI</b></a> <a href="whlstf7.htm#bms_SK" target="ftslist" title="search letter SK"><b>SK</b></a> <a href="whlstf7.htm#bms_SM" target="ftslist" title="search letter SM"><b>SM</b></a> <a href="whlstf7.htm#bms_SO" target="ftslist" title="search letter SO"><b>SO</b></a> <a href="whlstf7.htm#bms_SP" target="ftslist" title="search letter SP"><b>SP</b></a> <a href="whlstf7.htm#bms_SR" target="ftslist" title="search letter SR"><b>SR</b></a> <a href="whlstf7.htm#bms_ST" target="ftslist" title="search letter ST"><b>ST</b></a> <a href="whlstf7.htm#bms_SU" target="ftslist" title="search letter SU"><b>SU</b></a> <a href="whlstf7.htm#bms_SW" target="ftslist" title="search letter SW"><b>SW</b></a> <a href="whlstf7.htm#bms_SY" target="ftslist" title="search letter SY"><b>SY</b></a> <a href="whnvl32.htm#home" target="_self" title="back to top level"><b>^</b></a></p>\r
+\r
+</body>\r
+\r
+</html>\r
+\r
--- /dev/null
+<html>\r
+<head>\r
+<title>Search Words letter</title>\r
+<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
+<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">\r
+<meta name "description" content="WebHelp 2002">\r
+<base target="bsscright">\r
+<style>\r
+<!--\r
+body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}\r
+\r
+A:link {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
+A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
+A:active {background-color:#cccccc;}\r
+A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal; text-decoration:underline; }\r
+\r
+.tabs {background-color:#c0c0c0;}\r
+.ftsheader {margin-left:10pt; margin-top:0pt;}\r
+.ftsbody {margin-left:10pt; margin-top:0pt;}\r
+.inactive {color:#666666;}\r
+.ftsheader {background-color:White; } \r
+\r
+body {background-color:White; } \r
+p {color:Black; } p {font-family:Tahoma; } p {font-size:8pt; } p {font-style:Normal; } p {text-decoration:none; } \r
+A:link {color:Black; } A:link {font-family:Tahoma; } A:link {font-size:8pt; } A:link {font-style:Normal; } A:link {text-decoration:none; } \r
+A:visited {color:Black; } A:visited {font-family:Tahoma; } A:visited {font-size:8pt; } A:visited {font-style:Normal; } A:visited {text-decoration:none; } \r
+A:active {background-color:Silver; } \r
+A:hover {color:Navy; } A:hover {font-family:Tahoma; } A:hover {font-size:8pt; } A:hover {font-style:Normal; } A:hover {text-decoration:underline; } \r
+\r
+-->\r
+</style>\r
+<style>\r
+<!--\r
+body {background-color:White; } \r
+-->\r
+</style>\r
+</head>\r
+<body marginheight="0" marginwidth="0">\r
+\r
+<p class="ftsheader"><a name="subkey_T"></a> <a href="whnvl32.htm#home" target="_self" title="back to top level"><b>^</b></a> <a href="whlstf7.htm#bm_T" target="ftslist" title="search letter T "><b>T </b></a> <a href="whlstf7.htm#bms_TA" target="ftslist" title="search letter TA"><b>TA</b></a> <a href="whlstf7.htm#bms_TC" target="ftslist" title="search letter TC"><b>TC</b></a> <a href="whlstf7.htm#bms_TE" target="ftslist" title="search letter TE"><b>TE</b></a> <a href="whlstf7.htm#bms_TH" target="ftslist" title="search letter TH"><b>TH</b></a> <a href="whlstf8.htm#bms_TI" target="ftslist" title="search letter TI"><b>TI</b></a> <a href="whlstf8.htm#bms_TM" target="ftslist" title="search letter TM"><b>TM</b></a> <a href="whlstf8.htm#bms_TO" target="ftslist" title="search letter TO"><b>TO</b></a> <a href="whlstf8.htm#bms_TR" target="ftslist" title="search letter TR"><b>TR</b></a> <a href="whlstf8.htm#bms_TW" target="ftslist" title="search letter TW"><b>TW</b></a> <a href="whlstf8.htm#bms_TY" target="ftslist" title="search letter TY"><b>TY</b></a> <a href="whnvl32.htm#home" target="_self" title="back to top level"><b>^</b></a></p>\r
+\r
+</body>\r
+\r
+</html>\r
+\r
--- /dev/null
+<html>\r
+<head>\r
+<title>Search Words letter</title>\r
+<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
+<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">\r
+<meta name "description" content="WebHelp 2002">\r
+<base target="bsscright">\r
+<style>\r
+<!--\r
+body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}\r
+\r
+A:link {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
+A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
+A:active {background-color:#cccccc;}\r
+A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal; text-decoration:underline; }\r
+\r
+.tabs {background-color:#c0c0c0;}\r
+.ftsheader {margin-left:10pt; margin-top:0pt;}\r
+.ftsbody {margin-left:10pt; margin-top:0pt;}\r
+.inactive {color:#666666;}\r
+.ftsheader {background-color:White; } \r
+\r
+body {background-color:White; } \r
+p {color:Black; } p {font-family:Tahoma; } p {font-size:8pt; } p {font-style:Normal; } p {text-decoration:none; } \r
+A:link {color:Black; } A:link {font-family:Tahoma; } A:link {font-size:8pt; } A:link {font-style:Normal; } A:link {text-decoration:none; } \r
+A:visited {color:Black; } A:visited {font-family:Tahoma; } A:visited {font-size:8pt; } A:visited {font-style:Normal; } A:visited {text-decoration:none; } \r
+A:active {background-color:Silver; } \r
+A:hover {color:Navy; } A:hover {font-family:Tahoma; } A:hover {font-size:8pt; } A:hover {font-style:Normal; } A:hover {text-decoration:underline; } \r
+\r
+-->\r
+</style>\r
+<style>\r
+<!--\r
+body {background-color:White; } \r
+-->\r
+</style>\r
+</head>\r
+<body marginheight="0" marginwidth="0">\r
+\r
+<p class="ftsheader"><a name="subkey_C"></a> <a href="whnvl32.htm#home" target="_self" title="back to top level"><b>^</b></a> <a href="whlstf0.htm#bm_C" target="ftslist" title="search letter C "><b>C </b></a> <a href="whlstf0.htm#bms_CA" target="ftslist" title="search letter CA"><b>CA</b></a> <a href="whlstf1.htm#bms_CH" target="ftslist" title="search letter CH"><b>CH</b></a> <a href="whlstf1.htm#bms_CL" target="ftslist" title="search letter CL"><b>CL</b></a> <a href="whlstf1.htm#bms_CO" target="ftslist" title="search letter CO"><b>CO</b></a> <a href="whlstf1.htm#bms_CP" target="ftslist" title="search letter CP"><b>CP</b></a> <a href="whlstf1.htm#bms_CR" target="ftslist" title="search letter CR"><b>CR</b></a> <a href="whlstf1.htm#bms_CS" target="ftslist" title="search letter CS"><b>CS</b></a> <a href="whlstf1.htm#bms_CU" target="ftslist" title="search letter CU"><b>CU</b></a> <a href="whnvl32.htm#home" target="_self" title="back to top level"><b>^</b></a></p>\r
+\r
+</body>\r
+\r
+</html>\r
+\r
--- /dev/null
+<html>\r
+<head>\r
+<title>Search Words letter</title>\r
+<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
+<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">\r
+<meta name "description" content="WebHelp 2002">\r
+<base target="bsscright">\r
+<style>\r
+<!--\r
+body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}\r
+\r
+A:link {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
+A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
+A:active {background-color:#cccccc;}\r
+A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal; text-decoration:underline; }\r
+\r
+.tabs {background-color:#c0c0c0;}\r
+.ftsheader {margin-left:10pt; margin-top:0pt;}\r
+.ftsbody {margin-left:10pt; margin-top:0pt;}\r
+.inactive {color:#666666;}\r
+.ftsheader {background-color:White; } \r
+\r
+body {background-color:White; } \r
+p {color:Black; } p {font-family:Tahoma; } p {font-size:8pt; } p {font-style:Normal; } p {text-decoration:none; } \r
+A:link {color:Black; } A:link {font-family:Tahoma; } A:link {font-size:8pt; } A:link {font-style:Normal; } A:link {text-decoration:none; } \r
+A:visited {color:Black; } A:visited {font-family:Tahoma; } A:visited {font-size:8pt; } A:visited {font-style:Normal; } A:visited {text-decoration:none; } \r
+A:active {background-color:Silver; } \r
+A:hover {color:Navy; } A:hover {font-family:Tahoma; } A:hover {font-size:8pt; } A:hover {font-style:Normal; } A:hover {text-decoration:underline; } \r
+\r
+-->\r
+</style>\r
+<style>\r
+<!--\r
+body {background-color:White; } \r
+-->\r
+</style>\r
+</head>\r
+<body marginheight="0" marginwidth="0">\r
+\r
+<p class="ftsheader"><a name="subkey_U"></a> <a href="whnvl32.htm#home" target="_self" title="back to top level"><b>^</b></a> <a href="whlstf8.htm#bm_U" target="ftslist" title="search letter UL"><b>UL</b></a> <a href="whlstf8.htm#bms_UN" target="ftslist" title="search letter UN"><b>UN</b></a> <a href="whlstf8.htm#bms_UP" target="ftslist" title="search letter UP"><b>UP</b></a> <a href="whlstf8.htm#bms_US" target="ftslist" title="search letter US"><b>US</b></a> <a href="whlstf8.htm#bms_UT" target="ftslist" title="search letter UT"><b>UT</b></a> <a href="whnvl32.htm#home" target="_self" title="back to top level"><b>^</b></a></p>\r
+\r
+</body>\r
+\r
+</html>\r
+\r
--- /dev/null
+<html>\r
+<head>\r
+<title>Search Words letter</title>\r
+<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
+<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">\r
+<meta name "description" content="WebHelp 2002">\r
+<base target="bsscright">\r
+<style>\r
+<!--\r
+body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}\r
+\r
+A:link {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
+A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
+A:active {background-color:#cccccc;}\r
+A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal; text-decoration:underline; }\r
+\r
+.tabs {background-color:#c0c0c0;}\r
+.ftsheader {margin-left:10pt; margin-top:0pt;}\r
+.ftsbody {margin-left:10pt; margin-top:0pt;}\r
+.inactive {color:#666666;}\r
+.ftsheader {background-color:White; } \r
+\r
+body {background-color:White; } \r
+p {color:Black; } p {font-family:Tahoma; } p {font-size:8pt; } p {font-style:Normal; } p {text-decoration:none; } \r
+A:link {color:Black; } A:link {font-family:Tahoma; } A:link {font-size:8pt; } A:link {font-style:Normal; } A:link {text-decoration:none; } \r
+A:visited {color:Black; } A:visited {font-family:Tahoma; } A:visited {font-size:8pt; } A:visited {font-style:Normal; } A:visited {text-decoration:none; } \r
+A:active {background-color:Silver; } \r
+A:hover {color:Navy; } A:hover {font-family:Tahoma; } A:hover {font-size:8pt; } A:hover {font-style:Normal; } A:hover {text-decoration:underline; } \r
+\r
+-->\r
+</style>\r
+<style>\r
+<!--\r
+body {background-color:White; } \r
+-->\r
+</style>\r
+</head>\r
+<body marginheight="0" marginwidth="0">\r
+\r
+<p class="ftsheader"><a name="subkey_V"></a> <a href="whnvl32.htm#home" target="_self" title="back to top level"><b>^</b></a> <a href="whlstf8.htm#bm_V" target="ftslist" title="search letter V "><b>V </b></a> <a href="whlstf8.htm#bms_VA" target="ftslist" title="search letter VA"><b>VA</b></a> <a href="whlstf8.htm#bms_VE" target="ftslist" title="search letter VE"><b>VE</b></a> <a href="whlstf8.htm#bms_VI" target="ftslist" title="search letter VI"><b>VI</b></a> <a href="whlstf8.htm#bms_VT" target="ftslist" title="search letter VT"><b>VT</b></a> <a href="whnvl32.htm#home" target="_self" title="back to top level"><b>^</b></a></p>\r
+\r
+</body>\r
+\r
+</html>\r
+\r
--- /dev/null
+<html>\r
+<head>\r
+<title>Search Words letter</title>\r
+<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
+<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">\r
+<meta name "description" content="WebHelp 2002">\r
+<base target="bsscright">\r
+<style>\r
+<!--\r
+body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}\r
+\r
+A:link {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
+A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
+A:active {background-color:#cccccc;}\r
+A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal; text-decoration:underline; }\r
+\r
+.tabs {background-color:#c0c0c0;}\r
+.ftsheader {margin-left:10pt; margin-top:0pt;}\r
+.ftsbody {margin-left:10pt; margin-top:0pt;}\r
+.inactive {color:#666666;}\r
+.ftsheader {background-color:White; } \r
+\r
+body {background-color:White; } \r
+p {color:Black; } p {font-family:Tahoma; } p {font-size:8pt; } p {font-style:Normal; } p {text-decoration:none; } \r
+A:link {color:Black; } A:link {font-family:Tahoma; } A:link {font-size:8pt; } A:link {font-style:Normal; } A:link {text-decoration:none; } \r
+A:visited {color:Black; } A:visited {font-family:Tahoma; } A:visited {font-size:8pt; } A:visited {font-style:Normal; } A:visited {text-decoration:none; } \r
+A:active {background-color:Silver; } \r
+A:hover {color:Navy; } A:hover {font-family:Tahoma; } A:hover {font-size:8pt; } A:hover {font-style:Normal; } A:hover {text-decoration:underline; } \r
+\r
+-->\r
+</style>\r
+<style>\r
+<!--\r
+body {background-color:White; } \r
+-->\r
+</style>\r
+</head>\r
+<body marginheight="0" marginwidth="0">\r
+\r
+<p class="ftsheader"><a name="subkey_W"></a> <a href="whnvl32.htm#home" target="_self" title="back to top level"><b>^</b></a> <a href="whlstf8.htm#bm_W" target="ftslist" title="search letter WA"><b>WA</b></a> <a href="whlstf8.htm#bms_WE" target="ftslist" title="search letter WE"><b>WE</b></a> <a href="whlstf8.htm#bms_WH" target="ftslist" title="search letter WH"><b>WH</b></a> <a href="whlstf8.htm#bms_WI" target="ftslist" title="search letter WI"><b>WI</b></a> <a href="whlstf8.htm#bms_WO" target="ftslist" title="search letter WO"><b>WO</b></a> <a href="whlstf8.htm#bms_WR" target="ftslist" title="search letter WR"><b>WR</b></a> <a href="whlstf8.htm#bms_WW" target="ftslist" title="search letter WW"><b>WW</b></a> <a href="whnvl32.htm#home" target="_self" title="back to top level"><b>^</b></a></p>\r
+\r
+</body>\r
+\r
+</html>\r
+\r
--- /dev/null
+<html>\r
+<head>\r
+<title>Search Words letter</title>\r
+<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
+<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">\r
+<meta name "description" content="WebHelp 2002">\r
+<base target="bsscright">\r
+<style>\r
+<!--\r
+body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}\r
+\r
+A:link {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
+A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
+A:active {background-color:#cccccc;}\r
+A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal; text-decoration:underline; }\r
+\r
+.tabs {background-color:#c0c0c0;}\r
+.ftsheader {margin-left:10pt; margin-top:0pt;}\r
+.ftsbody {margin-left:10pt; margin-top:0pt;}\r
+.inactive {color:#666666;}\r
+.ftsheader {background-color:White; } \r
+\r
+body {background-color:White; } \r
+p {color:Black; } p {font-family:Tahoma; } p {font-size:8pt; } p {font-style:Normal; } p {text-decoration:none; } \r
+A:link {color:Black; } A:link {font-family:Tahoma; } A:link {font-size:8pt; } A:link {font-style:Normal; } A:link {text-decoration:none; } \r
+A:visited {color:Black; } A:visited {font-family:Tahoma; } A:visited {font-size:8pt; } A:visited {font-style:Normal; } A:visited {text-decoration:none; } \r
+A:active {background-color:Silver; } \r
+A:hover {color:Navy; } A:hover {font-family:Tahoma; } A:hover {font-size:8pt; } A:hover {font-style:Normal; } A:hover {text-decoration:underline; } \r
+\r
+-->\r
+</style>\r
+<style>\r
+<!--\r
+body {background-color:White; } \r
+-->\r
+</style>\r
+</head>\r
+<body marginheight="0" marginwidth="0">\r
+\r
+<p class="ftsheader"><a name="subkey_X"></a> <a href="whnvl32.htm#home" target="_self" title="back to top level"><b>^</b></a> <a href="whlstf8.htm#bm_X" target="ftslist" title="search letter X "><b>X </b></a> <a href="whlstf8.htm#bms_XM" target="ftslist" title="search letter XM"><b>XM</b></a> <a href="whlstf9.htm#bms_XT" target="ftslist" title="search letter XT"><b>XT</b></a> <a href="whnvl32.htm#home" target="_self" title="back to top level"><b>^</b></a></p>\r
+\r
+</body>\r
+\r
+</html>\r
+\r
--- /dev/null
+<html>\r
+<head>\r
+<title>Search Words letter</title>\r
+<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
+<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">\r
+<meta name "description" content="WebHelp 2002">\r
+<base target="bsscright">\r
+<style>\r
+<!--\r
+body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}\r
+\r
+A:link {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
+A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
+A:active {background-color:#cccccc;}\r
+A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal; text-decoration:underline; }\r
+\r
+.tabs {background-color:#c0c0c0;}\r
+.ftsheader {margin-left:10pt; margin-top:0pt;}\r
+.ftsbody {margin-left:10pt; margin-top:0pt;}\r
+.inactive {color:#666666;}\r
+.ftsheader {background-color:White; } \r
+\r
+body {background-color:White; } \r
+p {color:Black; } p {font-family:Tahoma; } p {font-size:8pt; } p {font-style:Normal; } p {text-decoration:none; } \r
+A:link {color:Black; } A:link {font-family:Tahoma; } A:link {font-size:8pt; } A:link {font-style:Normal; } A:link {text-decoration:none; } \r
+A:visited {color:Black; } A:visited {font-family:Tahoma; } A:visited {font-size:8pt; } A:visited {font-style:Normal; } A:visited {text-decoration:none; } \r
+A:active {background-color:Silver; } \r
+A:hover {color:Navy; } A:hover {font-family:Tahoma; } A:hover {font-size:8pt; } A:hover {font-style:Normal; } A:hover {text-decoration:underline; } \r
+\r
+-->\r
+</style>\r
+<style>\r
+<!--\r
+body {background-color:White; } \r
+-->\r
+</style>\r
+</head>\r
+<body marginheight="0" marginwidth="0">\r
+\r
+<p class="ftsheader"><a name="subkey_Y"></a> <a href="whnvl32.htm#home" target="_self" title="back to top level"><b>^</b></a> <a href="whlstf9.htm#bm_Y" target="ftslist" title="search letter Y "><b>Y </b></a> <a href="whlstf9.htm#bms_YE" target="ftslist" title="search letter YE"><b>YE</b></a> <a href="whlstf9.htm#bms_YO" target="ftslist" title="search letter YO"><b>YO</b></a> <a href="whnvl32.htm#home" target="_self" title="back to top level"><b>^</b></a></p>\r
+\r
+</body>\r
+\r
+</html>\r
+\r
--- /dev/null
+<html>\r
+<head>\r
+<title>Search Words letter</title>\r
+<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
+<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">\r
+<meta name "description" content="WebHelp 2002">\r
+<base target="bsscright">\r
+<style>\r
+<!--\r
+body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}\r
+\r
+A:link {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
+A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
+A:active {background-color:#cccccc;}\r
+A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal; text-decoration:underline; }\r
+\r
+.tabs {background-color:#c0c0c0;}\r
+.ftsheader {margin-left:10pt; margin-top:0pt;}\r
+.ftsbody {margin-left:10pt; margin-top:0pt;}\r
+.inactive {color:#666666;}\r
+.ftsheader {background-color:White; } \r
+\r
+body {background-color:White; } \r
+p {color:Black; } p {font-family:Tahoma; } p {font-size:8pt; } p {font-style:Normal; } p {text-decoration:none; } \r
+A:link {color:Black; } A:link {font-family:Tahoma; } A:link {font-size:8pt; } A:link {font-style:Normal; } A:link {text-decoration:none; } \r
+A:visited {color:Black; } A:visited {font-family:Tahoma; } A:visited {font-size:8pt; } A:visited {font-style:Normal; } A:visited {text-decoration:none; } \r
+A:active {background-color:Silver; } \r
+A:hover {color:Navy; } A:hover {font-family:Tahoma; } A:hover {font-size:8pt; } A:hover {font-style:Normal; } A:hover {text-decoration:underline; } \r
+\r
+-->\r
+</style>\r
+<style>\r
+<!--\r
+body {background-color:White; } \r
+-->\r
+</style>\r
+</head>\r
+<body marginheight="0" marginwidth="0">\r
+\r
+<p class="ftsheader"><a name="subkey_D"></a> <a href="whnvl32.htm#home" target="_self" title="back to top level"><b>^</b></a> <a href="whlstf1.htm#bm_D" target="ftslist" title="search letter D "><b>D </b></a> <a href="whlstf1.htm#bms_DA" target="ftslist" title="search letter DA"><b>DA</b></a> <a href="whlstf1.htm#bms_DE" target="ftslist" title="search letter DE"><b>DE</b></a> <a href="whlstf2.htm#bms_DI" target="ftslist" title="search letter DI"><b>DI</b></a> <a href="whlstf2.htm#bms_DO" target="ftslist" title="search letter DO"><b>DO</b></a> <a href="whlstf2.htm#bms_DR" target="ftslist" title="search letter DR"><b>DR</b></a> <a href="whlstf2.htm#bms_DU" target="ftslist" title="search letter DU"><b>DU</b></a> <a href="whlstf2.htm#bms_DY" target="ftslist" title="search letter DY"><b>DY</b></a> <a href="whnvl32.htm#home" target="_self" title="back to top level"><b>^</b></a></p>\r
+\r
+</body>\r
+\r
+</html>\r
+\r
--- /dev/null
+<html>\r
+<head>\r
+<title>Search Words letter</title>\r
+<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
+<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">\r
+<meta name "description" content="WebHelp 2002">\r
+<base target="bsscright">\r
+<style>\r
+<!--\r
+body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}\r
+\r
+A:link {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
+A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
+A:active {background-color:#cccccc;}\r
+A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal; text-decoration:underline; }\r
+\r
+.tabs {background-color:#c0c0c0;}\r
+.ftsheader {margin-left:10pt; margin-top:0pt;}\r
+.ftsbody {margin-left:10pt; margin-top:0pt;}\r
+.inactive {color:#666666;}\r
+.ftsheader {background-color:White; } \r
+\r
+body {background-color:White; } \r
+p {color:Black; } p {font-family:Tahoma; } p {font-size:8pt; } p {font-style:Normal; } p {text-decoration:none; } \r
+A:link {color:Black; } A:link {font-family:Tahoma; } A:link {font-size:8pt; } A:link {font-style:Normal; } A:link {text-decoration:none; } \r
+A:visited {color:Black; } A:visited {font-family:Tahoma; } A:visited {font-size:8pt; } A:visited {font-style:Normal; } A:visited {text-decoration:none; } \r
+A:active {background-color:Silver; } \r
+A:hover {color:Navy; } A:hover {font-family:Tahoma; } A:hover {font-size:8pt; } A:hover {font-style:Normal; } A:hover {text-decoration:underline; } \r
+\r
+-->\r
+</style>\r
+<style>\r
+<!--\r
+body {background-color:White; } \r
+-->\r
+</style>\r
+</head>\r
+<body marginheight="0" marginwidth="0">\r
+\r
+<p class="ftsheader"><a name="subkey_E"></a> <a href="whnvl32.htm#home" target="_self" title="back to top level"><b>^</b></a> <a href="whlstf2.htm#bm_E" target="ftslist" title="search letter E "><b>E </b></a> <a href="whlstf2.htm#bms_EA" target="ftslist" title="search letter EA"><b>EA</b></a> <a href="whlstf2.htm#bms_EC" target="ftslist" title="search letter EC"><b>EC</b></a> <a href="whlstf2.htm#bms_ED" target="ftslist" title="search letter ED"><b>ED</b></a> <a href="whlstf2.htm#bms_EF" target="ftslist" title="search letter EF"><b>EF</b></a> <a href="whlstf2.htm#bms_EI" target="ftslist" title="search letter EI"><b>EI</b></a> <a href="whlstf2.htm#bms_EL" target="ftslist" title="search letter EL"><b>EL</b></a> <a href="whlstf2.htm#bms_EM" target="ftslist" title="search letter EM"><b>EM</b></a> <a href="whlstf2.htm#bms_EN" target="ftslist" title="search letter EN"><b>EN</b></a> <a href="whlstf2.htm#bms_EQ" target="ftslist" title="search letter EQ"><b>EQ</b></a> <a href="whlstf2.htm#bms_ER" target="ftslist" title="search letter ER"><b>ER</b></a> <a href="whlstf2.htm#bms_ET" target="ftslist" title="search letter ET"><b>ET</b></a> <a href="whlstf2.htm#bms_EV" target="ftslist" title="search letter EV"><b>EV</b></a> <a href="whlstf2.htm#bms_EX" target="ftslist" title="search letter EX"><b>EX</b></a> <a href="whnvl32.htm#home" target="_self" title="back to top level"><b>^</b></a></p>\r
+\r
+</body>\r
+\r
+</html>\r
+\r
--- /dev/null
+<html>\r
+<head>\r
+<title>Search Words letter</title>\r
+<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
+<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">\r
+<meta name "description" content="WebHelp 2002">\r
+<base target="bsscright">\r
+<style>\r
+<!--\r
+body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}\r
+\r
+A:link {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
+A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
+A:active {background-color:#cccccc;}\r
+A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal; text-decoration:underline; }\r
+\r
+.tabs {background-color:#c0c0c0;}\r
+.ftsheader {margin-left:10pt; margin-top:0pt;}\r
+.ftsbody {margin-left:10pt; margin-top:0pt;}\r
+.inactive {color:#666666;}\r
+.ftsheader {background-color:White; } \r
+\r
+body {background-color:White; } \r
+p {color:Black; } p {font-family:Tahoma; } p {font-size:8pt; } p {font-style:Normal; } p {text-decoration:none; } \r
+A:link {color:Black; } A:link {font-family:Tahoma; } A:link {font-size:8pt; } A:link {font-style:Normal; } A:link {text-decoration:none; } \r
+A:visited {color:Black; } A:visited {font-family:Tahoma; } A:visited {font-size:8pt; } A:visited {font-style:Normal; } A:visited {text-decoration:none; } \r
+A:active {background-color:Silver; } \r
+A:hover {color:Navy; } A:hover {font-family:Tahoma; } A:hover {font-size:8pt; } A:hover {font-style:Normal; } A:hover {text-decoration:underline; } \r
+\r
+-->\r
+</style>\r
+<style>\r
+<!--\r
+body {background-color:White; } \r
+-->\r
+</style>\r
+</head>\r
+<body marginheight="0" marginwidth="0">\r
+\r
+<p class="ftsheader"><a name="subkey_F"></a> <a href="whnvl32.htm#home" target="_self" title="back to top level"><b>^</b></a> <a href="whlstf2.htm#bm_F" target="ftslist" title="search letter F "><b>F </b></a> <a href="whlstf2.htm#bms_FA" target="ftslist" title="search letter FA"><b>FA</b></a> <a href="whlstf2.htm#bms_FE" target="ftslist" title="search letter FE"><b>FE</b></a> <a href="whlstf2.htm#bms_FI" target="ftslist" title="search letter FI"><b>FI</b></a> <a href="whlstf2.htm#bms_FL" target="ftslist" title="search letter FL"><b>FL</b></a> <a href="whlstf2.htm#bms_FO" target="ftslist" title="search letter FO"><b>FO</b></a> <a href="whlstf3.htm#bms_FR" target="ftslist" title="search letter FR"><b>FR</b></a> <a href="whlstf3.htm#bms_FU" target="ftslist" title="search letter FU"><b>FU</b></a> <a href="whnvl32.htm#home" target="_self" title="back to top level"><b>^</b></a></p>\r
+\r
+</body>\r
+\r
+</html>\r
+\r
--- /dev/null
+<html>\r
+<head>\r
+<title>Search Words letter</title>\r
+<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
+<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">\r
+<meta name "description" content="WebHelp 2002">\r
+<base target="bsscright">\r
+<style>\r
+<!--\r
+body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}\r
+\r
+A:link {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
+A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
+A:active {background-color:#cccccc;}\r
+A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal; text-decoration:underline; }\r
+\r
+.tabs {background-color:#c0c0c0;}\r
+.ftsheader {margin-left:10pt; margin-top:0pt;}\r
+.ftsbody {margin-left:10pt; margin-top:0pt;}\r
+.inactive {color:#666666;}\r
+.ftsheader {background-color:White; } \r
+\r
+body {background-color:White; } \r
+p {color:Black; } p {font-family:Tahoma; } p {font-size:8pt; } p {font-style:Normal; } p {text-decoration:none; } \r
+A:link {color:Black; } A:link {font-family:Tahoma; } A:link {font-size:8pt; } A:link {font-style:Normal; } A:link {text-decoration:none; } \r
+A:visited {color:Black; } A:visited {font-family:Tahoma; } A:visited {font-size:8pt; } A:visited {font-style:Normal; } A:visited {text-decoration:none; } \r
+A:active {background-color:Silver; } \r
+A:hover {color:Navy; } A:hover {font-family:Tahoma; } A:hover {font-size:8pt; } A:hover {font-style:Normal; } A:hover {text-decoration:underline; } \r
+\r
+-->\r
+</style>\r
+<style>\r
+<!--\r
+body {background-color:White; } \r
+-->\r
+</style>\r
+</head>\r
+<body marginheight="0" marginwidth="0">\r
+\r
+<p class="ftsheader"><a name="subkey_G"></a> <a href="whnvl32.htm#home" target="_self" title="back to top level"><b>^</b></a> <a href="whlstf3.htm#bm_G" target="ftslist" title="search letter G "><b>G </b></a> <a href="whlstf3.htm#bms_GC" target="ftslist" title="search letter GC"><b>GC</b></a> <a href="whlstf3.htm#bms_GE" target="ftslist" title="search letter GE"><b>GE</b></a> <a href="whlstf3.htm#bms_GI" target="ftslist" title="search letter GI"><b>GI</b></a> <a href="whlstf3.htm#bms_GL" target="ftslist" title="search letter GL"><b>GL</b></a> <a href="whlstf3.htm#bms_GN" target="ftslist" title="search letter GN"><b>GN</b></a> <a href="whlstf3.htm#bms_GO" target="ftslist" title="search letter GO"><b>GO</b></a> <a href="whlstf3.htm#bms_GR" target="ftslist" title="search letter GR"><b>GR</b></a> <a href="whlstf3.htm#bms_GU" target="ftslist" title="search letter GU"><b>GU</b></a> <a href="whnvl32.htm#home" target="_self" title="back to top level"><b>^</b></a></p>\r
+\r
+</body>\r
+\r
+</html>\r
+\r
--- /dev/null
+<html>\r
+<head>\r
+<title>Search Words letter</title>\r
+<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
+<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">\r
+<meta name "description" content="WebHelp 2002">\r
+<base target="bsscright">\r
+<style>\r
+<!--\r
+body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}\r
+\r
+A:link {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
+A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
+A:active {background-color:#cccccc;}\r
+A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal; text-decoration:underline; }\r
+\r
+.tabs {background-color:#c0c0c0;}\r
+.ftsheader {margin-left:10pt; margin-top:0pt;}\r
+.ftsbody {margin-left:10pt; margin-top:0pt;}\r
+.inactive {color:#666666;}\r
+.ftsheader {background-color:White; } \r
+\r
+body {background-color:White; } \r
+p {color:Black; } p {font-family:Tahoma; } p {font-size:8pt; } p {font-style:Normal; } p {text-decoration:none; } \r
+A:link {color:Black; } A:link {font-family:Tahoma; } A:link {font-size:8pt; } A:link {font-style:Normal; } A:link {text-decoration:none; } \r
+A:visited {color:Black; } A:visited {font-family:Tahoma; } A:visited {font-size:8pt; } A:visited {font-style:Normal; } A:visited {text-decoration:none; } \r
+A:active {background-color:Silver; } \r
+A:hover {color:Navy; } A:hover {font-family:Tahoma; } A:hover {font-size:8pt; } A:hover {font-style:Normal; } A:hover {text-decoration:underline; } \r
+\r
+-->\r
+</style>\r
+<style>\r
+<!--\r
+body {background-color:White; } \r
+-->\r
+</style>\r
+</head>\r
+<body marginheight="0" marginwidth="0">\r
+\r
+<p class="ftsheader"><a name="subkey_H"></a> <a href="whnvl32.htm#home" target="_self" title="back to top level"><b>^</b></a> <a href="whlstf3.htm#bm_H" target="ftslist" title="search letter H "><b>H </b></a> <a href="whlstf3.htm#bms_HA" target="ftslist" title="search letter HA"><b>HA</b></a> <a href="whlstf3.htm#bms_HD" target="ftslist" title="search letter HD"><b>HD</b></a> <a href="whlstf3.htm#bms_HE" target="ftslist" title="search letter HE"><b>HE</b></a> <a href="whlstf3.htm#bms_HI" target="ftslist" title="search letter HI"><b>HI</b></a> <a href="whlstf3.htm#bms_HO" target="ftslist" title="search letter HO"><b>HO</b></a> <a href="whlstf3.htm#bms_HT" target="ftslist" title="search letter HT"><b>HT</b></a> <a href="whnvl32.htm#home" target="_self" title="back to top level"><b>^</b></a></p>\r
+\r
+</body>\r
+\r
+</html>\r
+\r
--- /dev/null
+<html>\r
+<head>\r
+<title>Search Words letter</title>\r
+<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
+<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">\r
+<meta name "description" content="WebHelp 2002">\r
+<base target="bsscright">\r
+<style>\r
+<!--\r
+body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}\r
+\r
+A:link {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
+A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
+A:active {background-color:#cccccc;}\r
+A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal; text-decoration:underline; }\r
+\r
+.tabs {background-color:#c0c0c0;}\r
+.ftsheader {margin-left:10pt; margin-top:0pt;}\r
+.ftsbody {margin-left:10pt; margin-top:0pt;}\r
+.inactive {color:#666666;}\r
+.ftsheader {background-color:White; } \r
+\r
+body {background-color:White; } \r
+p {color:Black; } p {font-family:Tahoma; } p {font-size:8pt; } p {font-style:Normal; } p {text-decoration:none; } \r
+A:link {color:Black; } A:link {font-family:Tahoma; } A:link {font-size:8pt; } A:link {font-style:Normal; } A:link {text-decoration:none; } \r
+A:visited {color:Black; } A:visited {font-family:Tahoma; } A:visited {font-size:8pt; } A:visited {font-style:Normal; } A:visited {text-decoration:none; } \r
+A:active {background-color:Silver; } \r
+A:hover {color:Navy; } A:hover {font-family:Tahoma; } A:hover {font-size:8pt; } A:hover {font-style:Normal; } A:hover {text-decoration:underline; } \r
+\r
+-->\r
+</style>\r
+<style>\r
+<!--\r
+body {background-color:White; } \r
+-->\r
+</style>\r
+</head>\r
+<body marginheight="0" marginwidth="0">\r
+\r
+<p class="ftsheader"><a name="subkey_I"></a> <a href="whnvl32.htm#home" target="_self" title="back to top level"><b>^</b></a> <a href="whlstf3.htm#bm_I" target="ftslist" title="search letter I "><b>I </b></a> <a href="whlstf3.htm#bms_IA" target="ftslist" title="search letter IA"><b>IA</b></a> <a href="whlstf3.htm#bms_IC" target="ftslist" title="search letter IC"><b>IC</b></a> <a href="whlstf3.htm#bms_ID" target="ftslist" title="search letter ID"><b>ID</b></a> <a href="whlstf3.htm#bms_IE" target="ftslist" title="search letter IE"><b>IE</b></a> <a href="whlstf3.htm#bms_IF" target="ftslist" title="search letter IF"><b>IF</b></a> <a href="whlstf3.htm#bms_IM" target="ftslist" title="search letter IM"><b>IM</b></a> <a href="whlstf3.htm#bms_IN" target="ftslist" title="search letter IN"><b>IN</b></a> <a href="whlstf3.htm#bms_IO" target="ftslist" title="search letter IO"><b>IO</b></a> <a href="whlstf4.htm#bms_IS" target="ftslist" title="search letter IS"><b>IS</b></a> <a href="whlstf4.htm#bms_IT" target="ftslist" title="search letter IT"><b>IT</b></a> <a href="whnvl32.htm#home" target="_self" title="back to top level"><b>^</b></a></p>\r
+\r
+</body>\r
+\r
+</html>\r
+\r
--- /dev/null
+<html>\r
+<head>\r
+<title>Search Words letter</title>\r
+<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
+<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">\r
+<meta name "description" content="WebHelp 2002">\r
+<base target="bsscright">\r
+<style>\r
+<!--\r
+body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}\r
+\r
+A:link {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
+A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
+A:active {background-color:#cccccc;}\r
+A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal; text-decoration:underline; }\r
+\r
+.tabs {background-color:#c0c0c0;}\r
+.ftsheader {margin-left:10pt; margin-top:0pt;}\r
+.ftsbody {margin-left:10pt; margin-top:0pt;}\r
+.inactive {color:#666666;}\r
+.ftsheader {background-color:White; } \r
+\r
+body {background-color:White; } \r
+p {color:Black; } p {font-family:Tahoma; } p {font-size:8pt; } p {font-style:Normal; } p {text-decoration:none; } \r
+A:link {color:Black; } A:link {font-family:Tahoma; } A:link {font-size:8pt; } A:link {font-style:Normal; } A:link {text-decoration:none; } \r
+A:visited {color:Black; } A:visited {font-family:Tahoma; } A:visited {font-size:8pt; } A:visited {font-style:Normal; } A:visited {text-decoration:none; } \r
+A:active {background-color:Silver; } \r
+A:hover {color:Navy; } A:hover {font-family:Tahoma; } A:hover {font-size:8pt; } A:hover {font-style:Normal; } A:hover {text-decoration:underline; } \r
+\r
+-->\r
+</style>\r
+<style>\r
+<!--\r
+body {background-color:White; } \r
+-->\r
+</style>\r
+</head>\r
+<body marginheight="0" marginwidth="0">\r
+\r
+<p class="ftsheader"><a name="subkey_J"></a> <a href="whnvl32.htm#home" target="_self" title="back to top level"><b>^</b></a> <a href="whlstf4.htm#bm_J" target="ftslist" title="search letter JA"><b>JA</b></a> <a href="whlstf4.htm#bms_JP" target="ftslist" title="search letter JP"><b>JP</b></a> <a href="whlstf4.htm#bms_JU" target="ftslist" title="search letter JU"><b>JU</b></a> <a href="whnvl32.htm#home" target="_self" title="back to top level"><b>^</b></a></p>\r
+\r
+</body>\r
+\r
+</html>\r
+\r
--- /dev/null
+<html>\r
+<head>\r
+<title>Glossary words list</title>\r
+<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
+<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">\r
+<meta name "description" content="WebHelp 2002">\r
+<base target="bsscright">\r
+<style>\r
+<!--\r
+body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}\r
+\r
+A:link {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
+A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
+A:active {background-color:#cccccc;}\r
+A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal; text-decoration:underline; }\r
+\r
+.tabs {background-color:#c0c0c0;}\r
+.glsheader {margin-left:10pt; margin-top:0pt;}\r
+.glsbody {margin-left:10pt; margin-top:0pt;}\r
+.inactive {color:#666666;}\r
+.glsheader {background-color:White; } \r
+\r
+body {background-color:White; } \r
+p {color:Black; } p {font-family:Tahoma; } p {font-size:8pt; } p {font-style:Normal; } p {text-decoration:none; } \r
+A:link {color:Black; } A:link {font-family:Tahoma; } A:link {font-size:8pt; } A:link {font-style:Normal; } A:link {text-decoration:none; } \r
+A:visited {color:Black; } A:visited {font-family:Tahoma; }A:visited {font-size:8pt; } A:visited {font-style:Normal; } A:visited {text-decoration:none; } \r
+A:active {background-color:Silver; } \r
+A:hover {color:Navy; } A:hover {font-family:Tahoma; } A:hover {font-size:8pt; } A:hover {font-style:Normal; } A:hover {text-decoration:underline; } \r
+\r
+-->\r
+</style>\r
+</head>\r
+<body marginheight="0" marginwidth="0">\r
+<p class="glsbody">\r
+\r
+<br><a name="bm_C"></a>\r
+<nobr><b>Cell</b></nobr><br>\r
+Element of a mesh. Cells are determined by their connectivity. They can have 0,1,2 or 3 dimension.<br>\r
+\r
+<br><a name=""></a>\r
+<nobr><b>Component</b></nobr><br>\r
+One integer or real value can correspond to each component of a field and to each entity of a mesh<br>\r
+\r
+<br><a name="bm_D"></a>\r
+<nobr><b>Descendant connectivity</b></nobr><br>\r
+It is a description of the entities of the mesh with dimension N. This description is made by an ordered list of geometrical entities (nodes, edges, or faces) with dimension N-1.<br>\r
+\r
+<br><a name="bm_E"></a>\r
+<nobr><b>Edge</b></nobr><br>\r
+An edge of a volumetric or surface mesh. It is composed of 2 or 3 nodes (2 vertex nodes and optionally one middle node).<br>\r
+\r
+<br><a name=""></a>\r
+<nobr><b>Entity of a mesh</b></nobr><br>\r
+Geometrical component of the mesh: node, cell, face and edge. Faces and edges are only intermediate entities allowing to define the cells in descendant connectivity.<br>\r
+\r
+<br><a name=""></a>\r
+<nobr><b>Equivalence</b></nobr><br>\r
+Equivalence represents a list of correspondance 2 by 2 of the entities of the same dimension.<br>\r
+\r
+<br><a name="bm_F"></a>\r
+<nobr><b>Face</b></nobr><br>\r
+Face of a volumetrical cell (triangle, quadrangle).<br>\r
+\r
+<br><a name=""></a>\r
+<nobr><b>Family</b></nobr><br>\r
+Entities of a mesh are described by a certain number of characteristics (boundary conditions, groups membership). Families represent classes equivalent to these characteristics (two entities of a mesh can belong to the same family if they have the same characteristics). Every family is determined by a set of attributes and a list of groups membership.<br>\r
+\r
+<br><a name=""></a>\r
+<nobr><b>Field</b></nobr><br>\r
+Field consists of one or several scalar components. One definite type is associated to the given field and the values corresponding to different components are all of the same type.<br>\r
+\r
+<br><a name=""></a>\r
+<nobr><b>Field profile</b></nobr><br>\r
+Fields can be defined only on one part of the mesh. Profile of the field or profile of the component of a field indicates which entities of the mesh contain values.<br>\r
+\r
+<br><a name="bm_G"></a>\r
+<nobr><b>Group</b></nobr><br>\r
+Unordered set of entities of a mesh. One entity can belong to several groups.<br>\r
+\r
+<br><a name="bm_M"></a>\r
+<nobr><b>Mesh</b></nobr><br>\r
+Mesh is described by its geometry: list of nodes and list of cells which constitute this mesh. Supplementary information is added with the help of families (initial, boundary conditions).<br>\r
+\r
+<br><a name="bm_N"></a>\r
+<nobr><b>Nodal connectivity</b></nobr><br>\r
+It is a description of an entity of the mesh by an ordered list of nodes constituting this entity.<br>\r
+\r
+<br><a name=""></a>\r
+<nobr><b>Node</b></nobr><br>\r
+Node can be an isolated node of a mesh, a vertex or middle node of an edge. A node is associated to a point.<br>\r
+\r
+<br><a name="bm_P"></a>\r
+<nobr><b>Point</b></nobr><br>\r
+Geometrical entity determined by its coordinates in the space.<br>\r
+\r
+<br><a name="bm_R"></a>\r
+<nobr><b>Reference connectivity</b></nobr><br>\r
+For each type of entity of a mesh, reference connectivity define the topology of an entity.<br>\r
+\r
+<br><a name=""></a>\r
+<nobr><b>Result</b></nobr><br>\r
+List of fields referring to one mesh.<br>\r
+\r
+<br><a name="bm_S"></a>\r
+<nobr><b>Study</b></nobr><br>\r
+Study represents a chain of sequences of calculations.<br>\r
+<br><br></p>\r
+\r
+</body>\r
+\r
+</html>\r
+\r
--- /dev/null
+<html>\r
+<head>\r
+<!-- WebHelp version 2002 -->\r
+<title>Index words list</title>\r
+<base target="bsscright">\r
+<meta name="generator" content="RoboHELP by eHelp Corporation www.ehelp.com">\r
+<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
+<style>\r
+<!--\r
+body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}\r
+\r
+A:link {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
+A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
+A:active {background-color:#cccccc;}\r
+A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal; text-decoration:underline; }\r
+\r
+.tabs {background-color:#c0c0c0;}\r
+.ndxheader {margin-left:10pt; margin-top:0pt;}\r
+.ndxbody {margin-left:10pt; margin-top:0pt;}\r
+.inactive {color:#666666;}\r
+\r
+\r
+body {background-color:White; } \r
+p {color:Black; } p {font-family:Tahoma; } p {font-size:8pt; } p {font-style:Normal; } p {text-decoration:none; } \r
+A:link {color:Black; } A:link {font-family:Tahoma; } A:link {font-size:8pt; } A:link {font-style:Normal; } A:link {text-decoration:none; } \r
+A:visited {color:Black; } A:visited {font-family:Tahoma; } A:visited {font-size:8pt; } A:visited {font-style:Normal; } A:visited {text-decoration:none; } \r
+A:active {background-color:Silver; } \r
+A:hover {color:Navy; } A:hover {font-family:Tahoma; } A:hover {font-size:8pt; } A:hover {font-style:Normal; } A:hover {text-decoration:underline; } \r
+\r
+-->\r
+</style>\r
+</head>\r
+<body marginheight="0" marginwidth="0">\r
+\r
+</body>\r
+\r
+</html>\r
+\r
--- /dev/null
+<html>\r
+<head>\r
+<!-- WebHelp version 2002 -->\r
+<title>Content</title>\r
+<base target="bsscright">\r
+<meta name="generator" content="RoboHELP by eHelp Corporation www.ehelp.com">\r
+<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
+<style>\r
+<!--\r
+body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}\r
+\r
+A:link {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
+A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
+A:active {background-color:#cccccc;}\r
+A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal; text-decoration:underline; }\r
+\r
+\r
+.tabs {background-color:#c0c0c0;}\r
+.tocbody {margin-left:10pt; margin-top:0pt;}\r
+.bo {}\r
+.bc {}\r
+.pn {}\r
+.pr {}\r
+\r
+body {background-color:White; } \r
+p {color:Black; } p {font-family:Tahoma; } p {font-size:8pt; } p {font-style:Normal; } p {text-decoration:none; } \r
+A:link {color:Black; } A:link {font-family:Tahoma; } A:link {font-size:8pt; } A:link {font-style:Normal; } A:link {text-decoration:none; } \r
+A:visited {color:Black; } A:visited {font-family:Tahoma; } A:visited {font-size:8pt; } A:visited {font-style:Normal; } A:visited {text-decoration:none; } \r
+A:active {background-color:Silver; } \r
+A:hover {color:Navy; } A:hover {font-family:Tahoma; } A:hover {font-size:8pt; } A:hover {font-style:Normal; } A:hover {text-decoration:underline; } \r
+\r
+-->\r
+</style>\r
+</head>\r
+<body marginheight="0" marginwidth="0">\r
+<table border=0>\r
+<tr><td>\r
+<p class="tocbody">\r
+<nobr><a href="../files/introduction.htm"><img src="../wht_toc3.gif" border="0" align="absmiddle"> Welcome to SALOME</a></nobr><br>\r
+<nobr><a name="1"></a><a href="whlstt1.htm#1" target="_self" title="closed book"><img src="../wht_toc1.gif" border="0" align="absmiddle"> Using this reference manual</a></nobr><br>\r
+<nobr><a name="2"></a><a href="whlstt2.htm#2" target="_self" title="closed book"><img src="../wht_toc1.gif" border="0" align="absmiddle"> About SALOME</a></nobr><br>\r
+<nobr><a name="3"></a><a href="whlstt3.htm#3" target="_self" title="closed book"><img src="../wht_toc1.gif" border="0" align="absmiddle"> IAPP module</a></nobr><br>\r
+</p>\r
+\r
+</td></tr>\r
+<tr><td>\r
+<p><img src="whexpbar.gif" > <p>\r
+</td></tr>\r
+</table>\r
+</body>\r
+\r
+</html>\r
+\r
--- /dev/null
+<html>\r
+<head>\r
+<!-- WebHelp version 2002 -->\r
+<title>Content</title>\r
+<base target="bsscright">\r
+<meta name="generator" content="RoboHELP by eHelp Corporation www.ehelp.com">\r
+<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
+<style>\r
+<!--\r
+body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}\r
+\r
+A:link {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
+A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
+A:active {background-color:#cccccc;}\r
+A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal; text-decoration:underline; }\r
+\r
+\r
+.tabs {background-color:#c0c0c0;}\r
+.tocbody {margin-left:10pt; margin-top:0pt;}\r
+.bo {}\r
+.bc {}\r
+.pn {}\r
+.pr {}\r
+\r
+body {background-color:White; } \r
+p {color:Black; } p {font-family:Tahoma; } p {font-size:8pt; } p {font-style:Normal; } p {text-decoration:none; } \r
+A:link {color:Black; } A:link {font-family:Tahoma; } A:link {font-size:8pt; } A:link {font-style:Normal; } A:link {text-decoration:none; } \r
+A:visited {color:Black; } A:visited {font-family:Tahoma; } A:visited {font-size:8pt; } A:visited {font-style:Normal; } A:visited {text-decoration:none; } \r
+A:active {background-color:Silver; } \r
+A:hover {color:Navy; } A:hover {font-family:Tahoma; } A:hover {font-size:8pt; } A:hover {font-style:Normal; } A:hover {text-decoration:underline; } \r
+\r
+-->\r
+</style>\r
+</head>\r
+<body marginheight="0" marginwidth="0">\r
+<table border=0>\r
+<tr><td>\r
+<p class="tocbody">\r
+<nobr><a href="../files/introduction.htm"><img src="../wht_toc3.gif" border="0" align="absmiddle"> Welcome to SALOME</a></nobr><br>\r
+<nobr><a name="1"></a><a href="whlstt0.htm#1" target="_self"><img src="../wht_toc2.gif" border="0" align="absmiddle"> Using this reference manual</a></nobr><br>\r
+ <nobr><a href="../files/about_salome_pro_help_system.htm"><img src="../wht_toc3.gif" border="0" align="absmiddle"> About SALOME help system</a></nobr><br>\r
+ <nobr><a href="../files/navigating_topics.htm"><img src="../wht_toc3.gif" border="0" align="absmiddle"> Navigating topics</a></nobr><br>\r
+ <nobr><a href="../files/using_left-hand_tabs.htm"><img src="../wht_toc3.gif" border="0" align="absmiddle"> Using left-hand tabs</a></nobr><br>\r
+<nobr><a name="2"></a><a href="whlstt2.htm#2" target="_self" title="closed book"><img src="../wht_toc1.gif" border="0" align="absmiddle"> About SALOME</a></nobr><br>\r
+<nobr><a name="3"></a><a href="whlstt3.htm#3" target="_self" title="closed book"><img src="../wht_toc1.gif" border="0" align="absmiddle"> IAPP module</a></nobr><br>\r
+</p>\r
+\r
+</td></tr>\r
+<tr><td>\r
+<p><img src="whexpbar.gif" > <p>\r
+</td></tr>\r
+</table>\r
+</body>\r
+\r
+</html>\r
+\r
--- /dev/null
+<html>\r
+<head>\r
+<!-- WebHelp version 2002 -->\r
+<title>Content</title>\r
+<base target="bsscright">\r
+<meta name="generator" content="RoboHELP by eHelp Corporation www.ehelp.com">\r
+<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
+<style>\r
+<!--\r
+body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}\r
+\r
+A:link {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
+A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
+A:active {background-color:#cccccc;}\r
+A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal; text-decoration:underline; }\r
+\r
+\r
+.tabs {background-color:#c0c0c0;}\r
+.tocbody {margin-left:10pt; margin-top:0pt;}\r
+.bo {}\r
+.bc {}\r
+.pn {}\r
+.pr {}\r
+\r
+body {background-color:White; } \r
+p {color:Black; } p {font-family:Tahoma; } p {font-size:8pt; } p {font-style:Normal; } p {text-decoration:none; } \r
+A:link {color:Black; } A:link {font-family:Tahoma; } A:link {font-size:8pt; } A:link {font-style:Normal; } A:link {text-decoration:none; } \r
+A:visited {color:Black; } A:visited {font-family:Tahoma; } A:visited {font-size:8pt; } A:visited {font-style:Normal; } A:visited {text-decoration:none; } \r
+A:active {background-color:Silver; } \r
+A:hover {color:Navy; } A:hover {font-family:Tahoma; } A:hover {font-size:8pt; } A:hover {font-style:Normal; } A:hover {text-decoration:underline; } \r
+\r
+-->\r
+</style>\r
+</head>\r
+<body marginheight="0" marginwidth="0">\r
+<table border=0>\r
+<tr><td>\r
+<p class="tocbody">\r
+<nobr><a href="../files/introduction.htm"><img src="../wht_toc3.gif" border="0" align="absmiddle"> Welcome to SALOME</a></nobr><br>\r
+<nobr><a name="1"></a><a href="whlstt1.htm#1" target="_self" title="closed book"><img src="../wht_toc1.gif" border="0" align="absmiddle"> Using this reference manual</a></nobr><br>\r
+<nobr><a name="2"></a><a href="whlstt0.htm#2" target="_self"><img src="../wht_toc2.gif" border="0" align="absmiddle"> About SALOME</a></nobr><br>\r
+ <nobr><a href="../files/introduction_to_salome_pro.htm"><img src="../wht_toc3.gif" border="0" align="absmiddle"> Introduction to SALOME</a></nobr><br>\r
+ <nobr><a href="../files/about_salome_pro_architecture.htm"><img src="../wht_toc3.gif" border="0" align="absmiddle"> About SALOME architecture</a></nobr><br>\r
+ <nobr><a href="../files/readme.html"><img src="../wht_toc3.gif" border="0" align="absmiddle"> Installing SALOME</a></nobr><br>\r
+ <nobr><a href="../files/running_salome_pro.htm"><img src="../wht_toc3.gif" border="0" align="absmiddle"> Running SALOME</a></nobr><br>\r
+<nobr><a name="3"></a><a href="whlstt3.htm#3" target="_self" title="closed book"><img src="../wht_toc1.gif" border="0" align="absmiddle"> IAPP module</a></nobr><br>\r
+</p>\r
+\r
+</td></tr>\r
+<tr><td>\r
+<p><img src="whexpbar.gif" > <p>\r
+</td></tr>\r
+</table>\r
+</body>\r
+\r
+</html>\r
+\r
--- /dev/null
+<html>\r
+<head>\r
+<!-- WebHelp version 2002 -->\r
+<title>Content</title>\r
+<base target="bsscright">\r
+<meta name="generator" content="RoboHELP by eHelp Corporation www.ehelp.com">\r
+<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
+<style>\r
+<!--\r
+body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}\r
+\r
+A:link {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
+A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
+A:active {background-color:#cccccc;}\r
+A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal; text-decoration:underline; }\r
+\r
+\r
+.tabs {background-color:#c0c0c0;}\r
+.tocbody {margin-left:10pt; margin-top:0pt;}\r
+.bo {}\r
+.bc {}\r
+.pn {}\r
+.pr {}\r
+\r
+body {background-color:White; } \r
+p {color:Black; } p {font-family:Tahoma; } p {font-size:8pt; } p {font-style:Normal; } p {text-decoration:none; } \r
+A:link {color:Black; } A:link {font-family:Tahoma; } A:link {font-size:8pt; } A:link {font-style:Normal; } A:link {text-decoration:none; } \r
+A:visited {color:Black; } A:visited {font-family:Tahoma; } A:visited {font-size:8pt; } A:visited {font-style:Normal; } A:visited {text-decoration:none; } \r
+A:active {background-color:Silver; } \r
+A:hover {color:Navy; } A:hover {font-family:Tahoma; } A:hover {font-size:8pt; } A:hover {font-style:Normal; } A:hover {text-decoration:underline; } \r
+\r
+-->\r
+</style>\r
+</head>\r
+<body marginheight="0" marginwidth="0">\r
+<table border=0>\r
+<tr><td>\r
+<p class="tocbody">\r
+<nobr><a href="../files/introduction.htm"><img src="../wht_toc3.gif" border="0" align="absmiddle"> Welcome to SALOME</a></nobr><br>\r
+<nobr><a name="1"></a><a href="whlstt1.htm#1" target="_self" title="closed book"><img src="../wht_toc1.gif" border="0" align="absmiddle"> Using this reference manual</a></nobr><br>\r
+<nobr><a name="2"></a><a href="whlstt2.htm#2" target="_self" title="closed book"><img src="../wht_toc1.gif" border="0" align="absmiddle"> About SALOME</a></nobr><br>\r
+<nobr><a name="3"></a><a href="whlstt0.htm#3" target="_self"><img src="../wht_toc2.gif" border="0" align="absmiddle"> IAPP module</a></nobr><br>\r
+ <nobr><a href="../files/introduction_to_iapp.htm"><img src="../wht_toc3.gif" border="0" align="absmiddle"> Introduction to IAPP</a></nobr><br>\r
+ <nobr><a href="../files/getting_started2.htm"><img src="../wht_toc3.gif" border="0" align="absmiddle"> Getting started</a></nobr><br>\r
+ <nobr><a href="../files/salome_pro_desktop.htm"><img src="../wht_toc3.gif" border="0" align="absmiddle"> SALOME desktop</a></nobr><br>\r
+ <nobr><a href="../files/displaying_hiding_toolbars.htm"><img src="../wht_toc3.gif" border="0" align="absmiddle"> Displaying/hiding toolbars</a></nobr><br>\r
+ <nobr><a name="4"></a><a href="whlstt4.htm#4" target="_self" title="closed book"><img src="../wht_toc1.gif" border="0" align="absmiddle"> Study management</a></nobr><br>\r
+ <nobr><a href="../files/using_object_browser.htm"><img src="../wht_toc3.gif" border="0" align="absmiddle"> Using Object Browser</a></nobr><br>\r
+ <nobr><a href="../files/using_usecase_browser.htm"><img src="../wht_toc3.gif" border="0" align="absmiddle"> Using UseCase Browser</a></nobr><br>\r
+ <nobr><a href="../files/using_registry.htm"><img src="../wht_toc3.gif" border="0" align="absmiddle"> Using Registry tool</a></nobr><br>\r
+ <nobr><a href="../files/using_catalog_generator.htm"><img src="../wht_toc3.gif" border="0" align="absmiddle"> Using Catalog Generator</a></nobr><br>\r
+ <nobr><a href="../files/setting_preferences.htm"><img src="../wht_toc3.gif" border="0" align="absmiddle"> Setting preferences</a></nobr><br>\r
+</p>\r
+\r
+</td></tr>\r
+<tr><td>\r
+<p><img src="whexpbar.gif" > <p>\r
+</td></tr>\r
+</table>\r
+</body>\r
+\r
+</html>\r
+\r
--- /dev/null
+<html>\r
+<head>\r
+<!-- WebHelp version 2002 -->\r
+<title>Content</title>\r
+<base target="bsscright">\r
+<meta name="generator" content="RoboHELP by eHelp Corporation www.ehelp.com">\r
+<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
+<style>\r
+<!--\r
+body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}\r
+\r
+A:link {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
+A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
+A:active {background-color:#cccccc;}\r
+A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal; text-decoration:underline; }\r
+\r
+\r
+.tabs {background-color:#c0c0c0;}\r
+.tocbody {margin-left:10pt; margin-top:0pt;}\r
+.bo {}\r
+.bc {}\r
+.pn {}\r
+.pr {}\r
+\r
+body {background-color:White; } \r
+p {color:Black; } p {font-family:Tahoma; } p {font-size:8pt; } p {font-style:Normal; } p {text-decoration:none; } \r
+A:link {color:Black; } A:link {font-family:Tahoma; } A:link {font-size:8pt; } A:link {font-style:Normal; } A:link {text-decoration:none; } \r
+A:visited {color:Black; } A:visited {font-family:Tahoma; } A:visited {font-size:8pt; } A:visited {font-style:Normal; } A:visited {text-decoration:none; } \r
+A:active {background-color:Silver; } \r
+A:hover {color:Navy; } A:hover {font-family:Tahoma; } A:hover {font-size:8pt; } A:hover {font-style:Normal; } A:hover {text-decoration:underline; } \r
+\r
+-->\r
+</style>\r
+</head>\r
+<body marginheight="0" marginwidth="0">\r
+<table border=0>\r
+<tr><td>\r
+<p class="tocbody">\r
+<nobr><a href="../files/introduction.htm"><img src="../wht_toc3.gif" border="0" align="absmiddle"> Welcome to SALOME</a></nobr><br>\r
+<nobr><a name="1"></a><a href="whlstt1.htm#1" target="_self" title="closed book"><img src="../wht_toc1.gif" border="0" align="absmiddle"> Using this reference manual</a></nobr><br>\r
+<nobr><a name="2"></a><a href="whlstt2.htm#2" target="_self" title="closed book"><img src="../wht_toc1.gif" border="0" align="absmiddle"> About SALOME</a></nobr><br>\r
+<nobr><a name="3"></a><a href="whlstt0.htm#3" target="_self"><img src="../wht_toc2.gif" border="0" align="absmiddle"> IAPP module</a></nobr><br>\r
+ <nobr><a href="../files/introduction_to_iapp.htm"><img src="../wht_toc3.gif" border="0" align="absmiddle"> Introduction to IAPP</a></nobr><br>\r
+ <nobr><a href="../files/getting_started2.htm"><img src="../wht_toc3.gif" border="0" align="absmiddle"> Getting started</a></nobr><br>\r
+ <nobr><a href="../files/salome_pro_desktop.htm"><img src="../wht_toc3.gif" border="0" align="absmiddle"> SALOME desktop</a></nobr><br>\r
+ <nobr><a href="../files/displaying_hiding_toolbars.htm"><img src="../wht_toc3.gif" border="0" align="absmiddle"> Displaying/hiding toolbars</a></nobr><br>\r
+ <nobr><a name="4"></a><a href="whlstt3.htm#4" target="_self"><img src="../wht_toc2.gif" border="0" align="absmiddle"> Study management</a></nobr><br>\r
+ <nobr><a href="../files/creating_a_new_study.htm"><img src="../wht_toc3.gif" border="0" align="absmiddle"> Creating a new study</a></nobr><br>\r
+ <nobr><a href="../files/opening_studies.htm"><img src="../wht_toc3.gif" border="0" align="absmiddle"> Opening studies</a></nobr><br>\r
+ <nobr><a href="../files/saving_a_study.htm"><img src="../wht_toc3.gif" border="0" align="absmiddle"> Saving and closing studies</a></nobr><br>\r
+ <nobr><a href="../files/editing_studies.htm"><img src="../wht_toc3.gif" border="0" align="absmiddle"> Editing studies</a></nobr><br>\r
+ <nobr><a href="../files/displaying_studies.htm"><img src="../wht_toc3.gif" border="0" align="absmiddle"> Displaying studies</a></nobr><br>\r
+ <nobr><a href="../files/getting_properties_of_the_study.htm"><img src="../wht_toc3.gif" border="0" align="absmiddle"> Getting and setting study properties</a></nobr><br>\r
+ <nobr><a href="../files/using_object_browser.htm"><img src="../wht_toc3.gif" border="0" align="absmiddle"> Using Object Browser</a></nobr><br>\r
+ <nobr><a href="../files/using_usecase_browser.htm"><img src="../wht_toc3.gif" border="0" align="absmiddle"> Using UseCase Browser</a></nobr><br>\r
+ <nobr><a href="../files/using_registry.htm"><img src="../wht_toc3.gif" border="0" align="absmiddle"> Using Registry tool</a></nobr><br>\r
+ <nobr><a href="../files/using_catalog_generator.htm"><img src="../wht_toc3.gif" border="0" align="absmiddle"> Using Catalog Generator</a></nobr><br>\r
+ <nobr><a href="../files/setting_preferences.htm"><img src="../wht_toc3.gif" border="0" align="absmiddle"> Setting preferences</a></nobr><br>\r
+</p>\r
+\r
+</td></tr>\r
+<tr><td>\r
+<p><img src="whexpbar.gif" > <p>\r
+</td></tr>\r
+</table>\r
+</body>\r
+\r
+</html>\r
+\r
--- /dev/null
+<html>\r
+<head>\r
+<!-- WebHelp version 2002 -->\r
+<title>toc frame</title>\r
+<meta name="generator" content="RoboHELP by eHelp Corporation www.ehelp.com">\r
+<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
+</head>\r
+<frameset rows="100%, *" border="0" frameborder="0">\r
+ <frame name="toctree" title="toc tree frame" src="whlstt0.htm"></frame>\r
+</frameset>\r
+</html>\r
+\r
--- /dev/null
+<html>\r
+<head>\r
+<!-- WebHelp version 2002 -->\r
+<title>Index frame</title>\r
+<base target="bsscright">\r
+<meta name="generator" content="RoboHELP by eHelp Corporation www.ehelp.com">\r
+<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
+</head>\r
+<frameset rows="40, *" border="0" frameborder="0">\r
+ <frame name="ndxletter" title="index letter frame" src="whnvl31.htm" noresize frameborder="1" scrolling="no" border="0" marginheight="0" marginwidth="0" ></frame>\r
+ <frame name="ndxlist" title="index list frame" src="whlsti0.htm"></frame>\r
+</frameset>\r
+</html>\r
+\r
--- /dev/null
+<html>\r
+<head>\r
+<!-- WebHelp version 2002 -->\r
+<title>search frame</title>\r
+<base target="bsscright">\r
+<meta name="generator" content="RoboHELP by eHelp Corporation www.ehelp.com">\r
+<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
+</head>\r
+<frameset rows="40, *" border="0" frameborder="0">\r
+ <frame name="ftsletter" title="search letter frame" src="whnvl32.htm" noresize frameborder="1" scrolling="no" border="0" marginheight="0" marginwidth="0" ></frame>\r
+ <frame name="ftslist" title="seach word frame" src="whlstf0.htm"></frame>\r
+</frameset>\r
+</html>\r
+\r
--- /dev/null
+<html>\r
+<head>\r
+<!-- WebHelp version 2002 -->\r
+<title>Glossary frame</title>\r
+<base target="bsscright">\r
+<meta name="generator" content="RoboHELP by eHelp Corporation www.ehelp.com">\r
+<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
+</head>\r
+<frameset rows="40, *" border="0" frameborder="0">\r
+ <frame name="glsletter" title="glossary letter frame" src="whnvl33.htm" noresize frameborder="1" scrolling="no" border="0" marginheight="0" marginwidth="0" ></frame>\r
+ <frame name="glslist" title="glossary defination frame" src="whlstg0.htm"></frame>\r
+</frameset>\r
+</html>\r
+\r
--- /dev/null
+<html>\r
+<head>\r
+<!-- WebHelp version 2002 -->\r
+<title>Index Letters</title>\r
+<base target="bsscright">\r
+<meta name="generator" content="RoboHELP by eHelp Corporation www.ehelp.com">\r
+<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
+<style>\r
+<!--\r
+body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}\r
+\r
+A:link {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
+A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
+A:active {background-color:#cccccc;}\r
+A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal; text-decoration:underline; }\r
+\r
+.tabs {background-color:#c0c0c0;}\r
+.ndxheader {margin-left:10pt; margin-top:0pt;}\r
+.ndxbody {margin-left:10pt; margin-top:0pt;}\r
+.inactive {color:#666666;}\r
+\r
+\r
+body {background-color:White; } \r
+p {color:Black; } p {font-family:Tahoma; } p {font-size:8pt; } p {font-style:Normal; } p {text-decoration:none; } \r
+A:link {color:Black; } A:link {font-family:Tahoma; } A:link {font-size:8pt; } A:link {font-style:Normal; } A:link {text-decoration:none; } \r
+A:visited {color:Black; } A:visited {font-family:Tahoma; } A:visited {font-size:8pt; } A:visited {font-style:Normal; } A:visited {text-decoration:none; } \r
+A:active {background-color:Silver; } \r
+A:hover {color:Navy; } A:hover {font-family:Tahoma; } A:hover {font-size:8pt; } A:hover {font-style:Normal; } A:hover {text-decoration:underline; } \r
+\r
+-->\r
+</style>\r
+<style>\r
+<!--\r
+body {background-color:White; } \r
+-->\r
+</style>\r
+</head>\r
+<body marginheight="0" marginwidth="0">\r
+\r
+<body>\r
+</html>\r
+\r
--- /dev/null
+<html>\r
+<head>\r
+<!-- WebHelp version 2002 -->\r
+<title>Search Letters</title>\r
+<base target="bsscright">\r
+<meta name="generator" content="RoboHELP by eHelp Corporation www.ehelp.com">\r
+<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
+<style>\r
+<!--\r
+body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}\r
+\r
+A:link {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
+A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
+A:active {background-color:#cccccc;}\r
+A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal; text-decoration:underline; }\r
+\r
+.tabs {background-color:#c0c0c0;}\r
+.ftsheader {margin-left:10pt; margin-top:0pt;}\r
+.ftsbody {margin-left:10pt; margin-top:0pt;}\r
+.inactive {color:#666666;}\r
+.ftsheader {background-color:White; } \r
+\r
+body {background-color:White; } \r
+p {color:Black; } p {font-family:Tahoma; } p {font-size:8pt; } p {font-style:Normal; } p {text-decoration:none; } \r
+A:link {color:Black; } A:link {font-family:Tahoma; } A:link {font-size:8pt; } A:link {font-style:Normal; } A:link {text-decoration:none; } \r
+A:visited {color:Black; } A:visited {font-family:Tahoma; } A:visited {font-size:8pt; } A:visited {font-style:Normal; } A:visited {text-decoration:none; } \r
+A:active {background-color:Silver; } \r
+A:hover {color:Navy; } A:hover {font-family:Tahoma; } A:hover {font-size:8pt; } A:hover {font-style:Normal; } A:hover {text-decoration:underline; } \r
+\r
+-->\r
+</style>\r
+<style>\r
+<!--\r
+body {background-color:White; } \r
+-->\r
+</style>\r
+</head>\r
+<body marginheight="0" marginwidth="0">\r
+<p class="ftsheader">\r
+<a name="home"></a> <a href="whlstf0.htm#bm_{" target="ftslist"title="search non-alphabet letter" ><b>#</b></a> \r
+ <a href="whlstfl0.htm#subkey_A" target="_self"title="search letter A"><b>A</b></a> \r
+ <a href="whlstfl1.htm#subkey_B" target="_self"title="search letter B"><b>B</b></a> \r
+ <a href="whlstfl2.htm#subkey_C" target="_self"title="search letter C"><b>C</b></a> \r
+ <a href="whlstfl3.htm#subkey_D" target="_self"title="search letter D"><b>D</b></a> \r
+ <a href="whlstfl4.htm#subkey_E" target="_self"title="search letter E"><b>E</b></a> \r
+ <a href="whlstfl5.htm#subkey_F" target="_self"title="search letter F"><b>F</b></a> \r
+ <a href="whlstfl6.htm#subkey_G" target="_self"title="search letter G"><b>G</b></a> \r
+ <a href="whlstfl7.htm#subkey_H" target="_self"title="search letter H"><b>H</b></a> \r
+ <a href="whlstfl8.htm#subkey_I" target="_self"title="search letter I"><b>I</b></a> \r
+ <a href="whlstfl9.htm#subkey_J" target="_self"title="search letter J"><b>J</b></a> \r
+ <a href="whlstfl10.htm#subkey_K" target="_self"title="search letter K"><b>K</b></a> \r
+ <a href="whlstfl11.htm#subkey_L" target="_self"title="search letter L"><b>L</b></a> \r
+ <a href="whlstfl12.htm#subkey_M" target="_self"title="search letter M"><b>M</b></a> \r
+ <a href="whlstfl13.htm#subkey_N" target="_self"title="search letter N"><b>N</b></a> \r
+ <a href="whlstfl14.htm#subkey_O" target="_self"title="search letter O"><b>O</b></a> \r
+ <a href="whlstfl15.htm#subkey_P" target="_self"title="search letter P"><b>P</b></a> \r
+ <a href="whlstfl16.htm#subkey_Q" target="_self"title="search letter Q"><b>Q</b></a> \r
+ <a href="whlstfl17.htm#subkey_R" target="_self"title="search letter R"><b>R</b></a> \r
+ <a href="whlstfl18.htm#subkey_S" target="_self"title="search letter S"><b>S</b></a> \r
+ <a href="whlstfl19.htm#subkey_T" target="_self"title="search letter T"><b>T</b></a> \r
+ <a href="whlstfl20.htm#subkey_U" target="_self"title="search letter U"><b>U</b></a> \r
+ <a href="whlstfl21.htm#subkey_V" target="_self"title="search letter V"><b>V</b></a> \r
+ <a href="whlstfl22.htm#subkey_W" target="_self"title="search letter W"><b>W</b></a> \r
+ <a href="whlstfl23.htm#subkey_X" target="_self"title="search letter X"><b>X</b></a> \r
+ <a href="whlstfl24.htm#subkey_Y" target="_self"title="search letter Y"><b>Y</b></a> \r
+ <a href="whlstf9.htm#bm_Z" target="ftslist"title="search letter Z" ><b>Z</b></a> \r
+</p>\r
+\r
+<body>\r
+</html>\r
+\r
--- /dev/null
+<html>\r
+<head>\r
+<!-- WebHelp version 2002 -->\r
+<title>Glossary Letters</title>\r
+<base target="bsscright">\r
+<meta name="generator" content="RoboHELP by eHelp Corporation www.ehelp.com">\r
+<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
+<style>\r
+<!--\r
+body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}\r
+\r
+A:link {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
+A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
+A:active {background-color:#cccccc;}\r
+A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal; text-decoration:underline; }\r
+\r
+.tabs {background-color:#c0c0c0;}\r
+.glsheader {margin-left:10pt; margin-top:0pt;}\r
+.glsbody {margin-left:10pt; margin-top:0pt;}\r
+.inactive {color:#666666;}\r
+.glsheader {background-color:White; } \r
+\r
+body {background-color:White; } \r
+p {color:Black; } p {font-family:Tahoma; } p {font-size:8pt; } p {font-style:Normal; } p {text-decoration:none; } \r
+A:link {color:Black; } A:link {font-family:Tahoma; } A:link {font-size:8pt; } A:link {font-style:Normal; } A:link {text-decoration:none; } \r
+A:visited {color:Black; } A:visited {font-family:Tahoma; }A:visited {font-size:8pt; } A:visited {font-style:Normal; } A:visited {text-decoration:none; } \r
+A:active {background-color:Silver; } \r
+A:hover {color:Navy; } A:hover {font-family:Tahoma; } A:hover {font-size:8pt; } A:hover {font-style:Normal; } A:hover {text-decoration:underline; } \r
+\r
+-->\r
+</style>\r
+<style>\r
+<!--\r
+body {background-color:White; } \r
+-->\r
+</style>\r
+</head>\r
+<body marginheight="0" marginwidth="0">\r
+<p class="glsheader">\r
+ <font class="inactive">#</font> \r
+ <font class="inactive">A</font> \r
+ <font class="inactive">B</font> \r
+ <a href="whlstg0.htm#bm_C" target="glslist"title="glossary letter C"><b>C</b></a> \r
+ <a href="whlstg0.htm#bm_D" target="glslist"title="glossary letter D"><b>D</b></a> \r
+ <a href="whlstg0.htm#bm_E" target="glslist"title="glossary letter E"><b>E</b></a> \r
+ <a href="whlstg0.htm#bm_F" target="glslist"title="glossary letter F"><b>F</b></a> \r
+ <a href="whlstg0.htm#bm_G" target="glslist"title="glossary letter G"><b>G</b></a> \r
+ <font class="inactive">H</font> \r
+ <font class="inactive">I</font> \r
+ <font class="inactive">J</font> \r
+ <font class="inactive">K</font> \r
+ <font class="inactive">L</font> \r
+ <a href="whlstg0.htm#bm_M" target="glslist"title="glossary letter M"><b>M</b></a> \r
+ <a href="whlstg0.htm#bm_N" target="glslist"title="glossary letter N"><b>N</b></a> \r
+ <font class="inactive">O</font> \r
+ <a href="whlstg0.htm#bm_P" target="glslist"title="glossary letter P"><b>P</b></a> \r
+ <font class="inactive">Q</font> \r
+ <a href="whlstg0.htm#bm_R" target="glslist"title="glossary letter R"><b>R</b></a> \r
+ <a href="whlstg0.htm#bm_S" target="glslist"title="glossary letter S"><b>S</b></a> \r
+ <font class="inactive">T</font> \r
+ <font class="inactive">U</font> \r
+ <font class="inactive">V</font> \r
+ <font class="inactive">W</font> \r
+ <font class="inactive">X</font> \r
+ <font class="inactive">Y</font> \r
+ <font class="inactive">Z</font> \r
+</p>\r
+\r
+<body>\r
+</html>\r
+\r
--- /dev/null
+<!-- WebHelp version 2002 -->\r
+<html>\r
+<head>\r
+<title> Content Navigation Pane </title>\r
+<META HTTP-EQUIV="content-type" CONTENT="text/html; charset=iso-8859-1">\r
+<style>\r
+\r
+</style>\r
+</head>\r
+<frameset rows="36, *" border="0" frameborder="0">\r
+ <frame name="toctabs" title="tab selection frame" src="whnvt30.htm" noresize frameborder="no" scrolling="no" border="0" marginheight="0" marginwidth="0" ></frame>\r
+ <frame name="toclist" title="content frame" src="whlstt0.htm"></frame>\r
+</frameset>\r
+</html>
\ No newline at end of file
--- /dev/null
+<!-- WebHelp version 2002 -->\r
+<html>\r
+<head>\r
+<title> Index Navigation Pane </title>\r
+<META HTTP-EQUIV="content-type" CONTENT="text/html; charset=iso-8859-1">\r
+<style>\r
+\r
+</style>\r
+</head>\r
+<frameset rows="36, *" border="0" frameborder="0">\r
+ <frame name="ndxtabs" title="tab selection frame" src="whnvt31.htm" noresize frameborder="no" scrolling="no" border="0" marginheight="0" marginwidth="0" ></frame>\r
+ <frame name="ndxdata" title="index frame" src="whnvf31.htm"></frame>\r
+</frameset>\r
+</html>
\ No newline at end of file
--- /dev/null
+<!-- WebHelp version 2002 -->\r
+<html>\r
+<head>\r
+<title> Search Navigation Pane </title>\r
+<META HTTP-EQUIV="content-type" CONTENT="text/html; charset=iso-8859-1">\r
+<style>\r
+\r
+</style>\r
+<META HTTP-EQUIV="content-type" CONTENT="text/html; charset=iso-8859-1">\r
+</head>\r
+<frameset rows="36, *" border="0" frameborder="0">\r
+ <frame name="ftstabs" title="tab selection frame" src="whnvt32.htm" noresize frameborder="no" scrolling="no" border="0" marginheight="0" marginwidth="0" ></frame>\r
+ <frame name="ftsdata" title="search frame" src="whnvf32.htm"></frame>\r
+</frameset>\r
+</html>
\ No newline at end of file
--- /dev/null
+<!-- WebHelp version 2002 -->\r
+<html>\r
+<head>\r
+<title> Glossary Navigation Pane </title>\r
+<META HTTP-EQUIV="content-type" CONTENT="text/html; charset=iso-8859-1">\r
+<style>\r
+\r
+</style>\r
+</head>\r
+<frameset rows="36, *" border="0" frameborder="0">\r
+ <frame name="glstabs" title="tab selection frame" src="whnvt33.htm" noresize frameborder="no" scrolling="no" border="0" marginheight="0" marginwidth="0" ></frame>\r
+ <frame name="glsdata" title="glossary frame" src="whnvf33.htm"></frame>\r
+</frameset>\r
+</html>
\ No newline at end of file
--- /dev/null
+<html>\r
+<head>\r
+<!-- WebHelp version 2002 -->\r
+<title>Content Navigation Tab</title>\r
+<base target="bsscright">\r
+<meta name="generator" content="RoboHELP by eHelp Corporation www.ehelp.com">\r
+<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
+<style>\r
+<!--\r
+body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}\r
+\r
+A:link {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
+A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
+A:active {background-color:#cccccc;}\r
+A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal; text-decoration:underline; }\r
+\r
+\r
+.tabs {background-color:#c0c0c0;}\r
+.tocbody {margin-left:10pt; margin-top:0pt;}\r
+.bo {}\r
+.bc {}\r
+.pn {}\r
+.pr {}\r
+\r
+body {background-color:White; } \r
+p {color:Black; } p {font-family:Tahoma; } p {font-size:8pt; } p {font-style:Normal; } p {text-decoration:none; } \r
+A:link {color:Black; } A:link {font-family:Tahoma; } A:link {font-size:8pt; } A:link {font-style:Normal; } A:link {text-decoration:none; } \r
+A:visited {color:Black; } A:visited {font-family:Tahoma; } A:visited {font-size:8pt; } A:visited {font-style:Normal; } A:visited {text-decoration:none; } \r
+A:active {background-color:Silver; } \r
+A:hover {color:Navy; } A:hover {font-family:Tahoma; } A:hover {font-size:8pt; } A:hover {font-style:Normal; } A:hover {text-decoration:underline; } \r
+\r
+-->\r
+</style>\r
+</head>\r
+<body class="tabs" marginheight="0" marginwidth="0">\r
+<table class="tabs" width="100%">\r
+ <tr> \r
+ <td class="tabs">\r
+ <nobr><a href="javascript:void(0)"><img src="../wht_tab1.gif" border="0"></a><a href="whnvp32.htm" target="_parent"><img src="../wht_tab6.gif" border="0"></a><a href="whnvp33.htm" target="_parent"><img src="../wht_tab8.gif" border="0"></a></nobr>\r
+ </td>\r
+ </tr>\r
+</table>\r
+</body>\r
+\r
+</html>\r
+\r
--- /dev/null
+<html>\r
+<head>\r
+<!-- WebHelp version 2002 -->\r
+<title>Index Navigation Tab</title>\r
+<base target="bsscright">\r
+<meta name="generator" content="RoboHELP by eHelp Corporation www.ehelp.com">\r
+<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
+<style>\r
+<!--\r
+body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}\r
+\r
+A:link {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
+A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
+A:active {background-color:#cccccc;}\r
+A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal; text-decoration:underline; }\r
+\r
+.tabs {background-color:#c0c0c0;}\r
+.ndxheader {margin-left:10pt; margin-top:0pt;}\r
+.ndxbody {margin-left:10pt; margin-top:0pt;}\r
+.inactive {color:#666666;}\r
+\r
+\r
+body {background-color:White; } \r
+p {color:Black; } p {font-family:Tahoma; } p {font-size:8pt; } p {font-style:Normal; } p {text-decoration:none; } \r
+A:link {color:Black; } A:link {font-family:Tahoma; } A:link {font-size:8pt; } A:link {font-style:Normal; } A:link {text-decoration:none; } \r
+A:visited {color:Black; } A:visited {font-family:Tahoma; } A:visited {font-size:8pt; } A:visited {font-style:Normal; } A:visited {text-decoration:none; } \r
+A:active {background-color:Silver; } \r
+A:hover {color:Navy; } A:hover {font-family:Tahoma; } A:hover {font-size:8pt; } A:hover {font-style:Normal; } A:hover {text-decoration:underline; } \r
+\r
+-->\r
+</style>\r
+</head>\r
+<body class="tabs" marginheight="0" marginwidth="0">\r
+<table class="tabs" width="100%">\r
+ <tr> \r
+ <td class="tabs">\r
+ <nobr><a href="whnvp30.htm" target="_parent"><img src="../wht_tab2.gif" border="0"></a><a href="whnvp32.htm" target="_parent"><img src="../wht_tab6.gif" border="0"></a><a href="whnvp33.htm" target="_parent"><img src="../wht_tab8.gif" border="0"></a></nobr>\r
+ </td>\r
+ </tr>\r
+</table>\r
+</body>\r
+\r
+</html>\r
+\r
--- /dev/null
+<html>\r
+<head>\r
+<!-- WebHelp version 2002 -->\r
+<title>Search Navigation Tab</title>\r
+<base target="bsscright">\r
+<meta name="generator" content="RoboHELP by eHelp Corporation www.ehelp.com">\r
+<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
+<style>\r
+<!--\r
+body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}\r
+\r
+A:link {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
+A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
+A:active {background-color:#cccccc;}\r
+A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal; text-decoration:underline; }\r
+\r
+.tabs {background-color:#c0c0c0;}\r
+.ftsheader {margin-left:10pt; margin-top:0pt;}\r
+.ftsbody {margin-left:10pt; margin-top:0pt;}\r
+.inactive {color:#666666;}\r
+.ftsheader {background-color:White; } \r
+\r
+body {background-color:White; } \r
+p {color:Black; } p {font-family:Tahoma; } p {font-size:8pt; } p {font-style:Normal; } p {text-decoration:none; } \r
+A:link {color:Black; } A:link {font-family:Tahoma; } A:link {font-size:8pt; } A:link {font-style:Normal; } A:link {text-decoration:none; } \r
+A:visited {color:Black; } A:visited {font-family:Tahoma; } A:visited {font-size:8pt; } A:visited {font-style:Normal; } A:visited {text-decoration:none; } \r
+A:active {background-color:Silver; } \r
+A:hover {color:Navy; } A:hover {font-family:Tahoma; } A:hover {font-size:8pt; } A:hover {font-style:Normal; } A:hover {text-decoration:underline; } \r
+\r
+-->\r
+</style>\r
+</head>\r
+<body class="tabs" marginheight="0" marginwidth="0">\r
+<table class="tabs" width="100%">\r
+ <tr> \r
+ <td class="tabs">\r
+ <nobr><a href="whnvp30.htm" target="_parent"><img src="../wht_tab2.gif" border="0"></a><a href="javascript:void(0)"><img src="../wht_tab5.gif" border="0"></a><a href="whnvp33.htm" target="_parent"><img src="../wht_tab8.gif" border="0"></a></nobr>\r
+ </td>\r
+ </tr>\r
+</table>\r
+</body>\r
+\r
+</html>\r
+\r
--- /dev/null
+<html>\r
+<head>\r
+<!-- WebHelp version 2002 -->\r
+<title>Glossary Navigation Tab</title>\r
+<base target="bsscright">\r
+<meta name="generator" content="RoboHELP by eHelp Corporation www.ehelp.com">\r
+<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
+<style>\r
+<!--\r
+body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}\r
+\r
+A:link {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
+A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
+A:active {background-color:#cccccc;}\r
+A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal; text-decoration:underline; }\r
+\r
+.tabs {background-color:#c0c0c0;}\r
+.glsheader {margin-left:10pt; margin-top:0pt;}\r
+.glsbody {margin-left:10pt; margin-top:0pt;}\r
+.inactive {color:#666666;}\r
+.glsheader {background-color:White; } \r
+\r
+body {background-color:White; } \r
+p {color:Black; } p {font-family:Tahoma; } p {font-size:8pt; } p {font-style:Normal; } p {text-decoration:none; } \r
+A:link {color:Black; } A:link {font-family:Tahoma; } A:link {font-size:8pt; } A:link {font-style:Normal; } A:link {text-decoration:none; } \r
+A:visited {color:Black; } A:visited {font-family:Tahoma; }A:visited {font-size:8pt; } A:visited {font-style:Normal; } A:visited {text-decoration:none; } \r
+A:active {background-color:Silver; } \r
+A:hover {color:Navy; } A:hover {font-family:Tahoma; } A:hover {font-size:8pt; } A:hover {font-style:Normal; } A:hover {text-decoration:underline; } \r
+\r
+-->\r
+</style>\r
+</head>\r
+<body class="tabs" marginheight="0" marginwidth="0">\r
+<table class="tabs" width="100%">\r
+ <tr> \r
+ <td class="tabs">\r
+ <nobr><a href="whnvp30.htm" target="_parent"><img src="../wht_tab2.gif" border="0"></a><a href="whnvp32.htm" target="_parent"><img src="../wht_tab6.gif" border="0"></a><a href="javascript:void(0)"><img src="../wht_tab7.gif" border="0"></a></nobr>\r
+ </td>\r
+ </tr>\r
+</table>\r
+</body>\r
+\r
+</html>\r
+\r
--- /dev/null
+<html>\r
+<head>\r
+<title>Glossary Definition</title>\r
+<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
+<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">\r
+<meta name "description" content="WebHelp 2002">\r
+<script language="javascript" src="whver.js"></script>\r
+<script language="javascript1.2" src="whmsg.js"></script>\r
+<script language="javascript1.2" src="whproxy.js"></script>\r
+<script language="javascript1.2" src="whutils.js"></script>\r
+<script language="javascript1.2">\r
+<!--\r
+var gsBgColor="#ffffff";\r
+var gsBgImage="";\r
+var goGloFont=null;\r
+\r
+function setBackground(sBgImage)\r
+{\r
+ gsBgImage=sBgImage;\r
+}\r
+\r
+function setBackgroundcolor(sBgColor)\r
+{\r
+ gsBgColor=sBgColor;\r
+}\r
+\r
+function window_Unload()\r
+{\r
+ UnRegisterListener2(this, WH_MSG_SHOWGLODEF);\r
+}\r
+\r
+function window_OnLoad()\r
+{\r
+ if(gsBgImage&&gsBgImage.length>0)\r
+ document.body.background=gsBgImage;\r
+ if(gsBgColor&&gsBgColor.length>0)\r
+ document.body.bgColor=gsBgColor;\r
+}\r
+\r
+function setFont(sType, sFontName, sFontSize, sFontColor, sFontStyle, sFontWeight, sFontDecoration)\r
+{\r
+ var vFont = new whFont(sFontName, sFontSize, sFontColor, sFontStyle, sFontWeight, sFontDecoration);\r
+ if (sType == "Normal")\r
+ goGloFont = vFont;\r
+}\r
+\r
+function textToHtml_nbsp_specialcare(sText)\r
+{\r
+ if (sText == null) return null;\r
+ var sHTML= sText;\r
+ var re = new RegExp(" ","g");\r
+ sHTML= sHTML.replace(re, " ");\r
+ return sHTML;\r
+}\r
+\r
+function onSendMessage(oMsg)\r
+{\r
+ var nMsgId = oMsg.nMessageId;\r
+ if (nMsgId == WH_MSG_SHOWGLODEF)\r
+ {\r
+ document.body.innerHTML = sDefHead + textToHtml_nbsp_specialcare(oMsg.oParam.sDef) + sDefTail;\r
+ return true;\r
+ }\r
+}\r
+\r
+function GDefWriteClassStyle()\r
+{\r
+ var sStyle="<STYLE TYPE='text/css'>\n";\r
+ if (gsBgImage)\r
+ sStyle+="body {border-top:"+gsBgColor+" 1px solid;}\n";\r
+ else\r
+ sStyle+="body {border-top:black 1px solid;}\n";\r
+ sStyle+=".definition {"+getFontStyle(goGloFont)+"margin:2;}\n";\r
+ sStyle+="</STYLE>";\r
+ document.write(sStyle);\r
+}\r
+\r
+if (window.gbWhMsg&&window.gbWhUtil&&window.gbWhProxy&&window.gbWhVer)\r
+{\r
+ window.onload=window_OnLoad;\r
+ window.onunload = window_Unload;\r
+ goGloFont=new whFont("Verdana", "8pt", "#000000", "normal", "normal", "none");\r
+ setBackgroundcolor("White"); \r
+ \r
+ setFont("Normal", "Tahoma","8pt","Black","Normal","Normal","none");\r
+ GDefWriteClassStyle();\r
+ RegisterListener2(this, WH_MSG_SHOWGLODEF);\r
+ var sDefHead = "<p class=\"definition\">";\r
+ var sDefTail = "</p>";\r
+}\r
+else\r
+ document.location.reload();\r
+//-->\r
+</script>\r
+</head>\r
+<body bgproperties="fixed" bgcolor="white">\r
+</body>\r
+</html>\r
--- /dev/null
+<html>\r
+<head>\r
+<title>Glossary</title>\r
+<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
+<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">\r
+<meta name "description" content="WebHelp 2002">\r
+</head>\r
+<body bgcolor=#c0c0c0 scroll=no RIGHTMARGIN=0 BOTTOMMARGIN=0 TOPMARGIN=0 LEFTMARGIN=0>\r
+<script language="javascript" src="whver.js"></script>\r
+<script language="javascript1.2" src="whmozemu.js"></script>\r
+<script language="javascript1.2" src="whmsg.js"></script>\r
+<script language="javascript1.2" src="whutils.js"></script>\r
+<script language="javascript1.2" src="whproxy.js"></script>\r
+<script language="javascript1.2">\r
+<!--\r
+var gsBgImage="";\r
+var gsBgColor="";\r
+var goTitleFont=null;\r
+\r
+function setBackground(sBgImage)\r
+{\r
+ gsBgImage=sBgImage;\r
+}\r
+\r
+function setBackgroundcolor(sBgColor)\r
+{\r
+ gsBgColor=sBgColor;\r
+}\r
+\r
+function setFont(sType, sFontName,sFontSize,sFontColor,sFontStyle,sFontWeight,sFontDecoration)\r
+{\r
+ var vFont=new whFont(sFontName,sFontSize,sFontColor,sFontStyle,sFontWeight,sFontDecoration);\r
+ if(sType=="Title")\r
+ goTitleFont=vFont;\r
+}\r
+\r
+function getTermText()\r
+{\r
+ var strString="Term:";\r
+strString = "Term:";\r
+ return strString;\r
+}\r
+\r
+function getDefinitionText()\r
+{\r
+ var strString="Definition for:";\r
+strString = "Definition:";\r
+ return strString;\r
+}\r
+\r
+function getHTML()\r
+{\r
+ var sHTML="";\r
+ sHTML+="<P class=title><nobr> " + getTermText() + "</nobr></p>";\r
+ sHTML+="<iframe id=glossaryIFrame title=\"glossary term\" src=\"whgbody.htm\" width=100% height=200 MARGINHEIGHT=0 MARGINWIDTH=0></iframe>";\r
+ sHTML+="<P class=title><nobr> " + getDefinitionText() + " <b id=Name></b></nobr></p>";\r
+ sHTML+="<iframe id=defIFrame title=\"glossary definition\" src=\"whgdef.htm\" width=100% height=100% MARGINHEIGHT=0 MARGINWIDTH=0></iframe>";\r
+ return sHTML;\r
+}\r
+\r
+function writeStyle()\r
+{\r
+ var sStyle="<style type='text/css'>";\r
+ sStyle+="p.title {" + getFontStyle(goTitleFont) + "margin-top:4;margin-bottom:4}\n";\r
+ if (gsBgImage)\r
+ sStyle+="body {border-top:"+gsBgColor+" 1px solid;}\n";\r
+ else\r
+ sStyle+="body {border-top:black 1px solid;}\n";\r
+ sStyle+="</style>";\r
+ document.write(sStyle);\r
+}\r
+\r
+\r
+function window_OnResize()\r
+{\r
+ setIFrameHeight();\r
+}\r
+\r
+function window_OnLoad()\r
+{\r
+ if(gsBgImage&&gsBgImage.length>0)\r
+ document.body.background=gsBgImage;\r
+ if(gsBgColor&&gsBgColor.length>0)\r
+ document.body.bgColor=gsBgColor;\r
+ setIFrameHeight();\r
+}\r
+\r
+function setIFrameHeight()\r
+{\r
+ var tH=0;\r
+ if(gbNav6)\r
+ {\r
+ tH=parseInt(window.innerHeight)-30;\r
+ }\r
+ else\r
+ {\r
+ tH=parseInt(document.body.clientHeight)-4;\r
+ }\r
+ \r
+ var oEle=getElement("glossaryIFrame");\r
+ if(oEle)\r
+ {\r
+ tH=tH-2*parseInt(oEle.offsetTop);\r
+ if(tH>0)\r
+ {\r
+ oEle.style.height=Math.floor(tH*.6);\r
+ var oEleDef=getElement("defIFrame");\r
+ if(oEleDef)\r
+ {\r
+ oEleDef.style.height=tH-parseInt(oEle.style.height);\r
+ }\r
+ }\r
+ }\r
+}\r
+\r
+function window_Unload()\r
+{\r
+ UnRegisterListener2(this,WH_MSG_SHOWGLODEF);\r
+}\r
+\r
+function onSendMessage(oMsg)\r
+{\r
+ var nMsgId=oMsg.nMessageId;\r
+ if(nMsgId==WH_MSG_SHOWGLODEF)\r
+ {\r
+ if(getElement("Name"))\r
+ getElement("Name").innerHTML=oMsg.oParam.sName;\r
+ return true;\r
+ }\r
+}\r
+\r
+if(window.gbWhVer&&window.gbWhMsg&&window.gbWhUtil&&window.gbWhProxy)\r
+{\r
+ goTitleFont=new whFont("Arial","9pt","#000000","normal","normal","none");\r
+ setFont("Title", "Tahoma","8pt","Navy","Normal","Normal","none");\r
+ \r
+ setBackgroundcolor("White");\r
+ window.onresize=window_OnResize;\r
+ window.onload=window_OnLoad;\r
+ window.onunload=window_Unload;\r
+ RegisterListener2(this,WH_MSG_SHOWGLODEF);\r
+ writeStyle();\r
+ document.write(getHTML());\r
+}\r
+else\r
+ document.location.reload();\r
+//-->\r
+</script>\r
+</body>\r
+</html>\r
--- /dev/null
+var gbXML=false;\r
+var gaDef=new Array();\r
+var gsBgColor="#ffffff";\r
+var gsBgImage="";\r
+var goFont=null;\r
+var goHoverFont=null;\r
+var gsMargin="2pt";\r
+var gsIndent="2pt";\r
+var gsActiveBgColor="#cccccc";\r
+var gbWhGHost=false;\r
+\r
+function setBackground(sBgImage)\r
+{\r
+ gsBgImage=sBgImage;\r
+}\r
+\r
+function setBackgroundcolor(sBgColor)\r
+{\r
+ gsBgColor=sBgColor;\r
+}\r
+\r
+function setFont(sType,sFontName,sFontSize,sFontColor,sFontStyle,sFontWeight,sFontDecoration)\r
+{\r
+ var vFont=new whFont(sFontName,sFontSize,sFontColor,sFontStyle,sFontWeight,sFontDecoration);\r
+ if(sType=="Normal")\r
+ goFont=vFont;\r
+ else if(sType=="Hover")\r
+ goHoverFont=vFont;\r
+}\r
+\r
+function setActiveBgColor(sBgColor)\r
+{\r
+ gsActiveBgColor=sBgColor;\r
+}\r
+\r
+function setMargin(sMargin)\r
+{\r
+ gsMargin=sMargin;\r
+}\r
+\r
+function setIndent(sIndent)\r
+{\r
+ gsIndent=sIndent;\r
+}\r
+\r
+function writeOneItem(oHTML,bDown,aDataCon,aCurIdxSet,n,aPos,nLevel)\r
+{\r
+\r
+ var sHTML="";\r
+ var nIdxSet=aCurIdxSet[n];\r
+ var nIIdx=aPos[nIdxSet];\r
+ var sRawKName = getItemName(aDataCon,nIdxSet,nIIdx);\r
+ var sKName=_textToHtml(sRawKName);\r
+ var nIndex=insertDef(sKName,_textToHtml_nonbsp(getDef(aDataCon,nIdxSet,nIIdx)));\r
+ if(nLevel==1){\r
+ sHTML+="<p><nobr><a alt=\"" + sKName+"\" href=\"javascript:void(0);\" onclick=\"showDef("+nIndex;\r
+ sHTML+=");return false;\">"+sKName+"</a></nobr></p>";\r
+ }\r
+ oHTML.addHTML(sHTML,1,bDown,true,sRawKName);\r
+}\r
+\r
+function insertDef(sKName,sDef)\r
+{\r
+ var nLength=gaDef.length\r
+ var oGlo=new nameDefPair(sKName,sDef);\r
+ gaDef[nLength]=oGlo;\r
+ return nLength;\r
+}\r
+\r
+function showDef(nDef)\r
+{\r
+ if(nDef<gaDef.length)\r
+ { \r
+ var oParam=gaDef[nDef];\r
+ var oMsg=new whMessage(WH_MSG_SHOWGLODEF,this,1,oParam);\r
+ SendMessage(oMsg);\r
+ }\r
+}\r
+\r
+function nameDefPair(sName,sDef)\r
+{\r
+ this.sName=sName;\r
+ this.sDef=sDef;\r
+}\r
+\r
+function mergeItems(oHTML,bDown,aDataCon,aCurIdxSet,nLength,aPos,nLevel)\r
+{\r
+ for(var i=0;i<nLength;i++)\r
+ writeOneItem(oHTML,bDown,aDataCon,aCurIdxSet,i,aPos,nLevel);\r
+}\r
+\r
+function adjustPosition(bDown,aDataCon,aCurIdxSet,nLength,aPos)\r
+{\r
+ if(bDown)\r
+ {\r
+ for(var i=0;i<nLength;i++)\r
+ aPos[aCurIdxSet[i]]++;\r
+ }\r
+ else{\r
+ for(var i=0;i<nLength;i++)\r
+ aPos[aCurIdxSet[i]]--;\r
+ }\r
+}\r
+\r
+function getDef(aDataCon,nIdxSet,nIIdx)\r
+{\r
+ if(nIdxSet<aDataCon.length&&aDataCon[nIdxSet].aKs.length>nIIdx)\r
+ return aDataCon[nIdxSet].aKs[nIIdx].sDef;\r
+ else\r
+ return null;\r
+}\r
+\r
+function getItemName(aDataCon,nIdxSet,nIIdx)\r
+{\r
+ if(nIdxSet<aDataCon.length&&aDataCon[nIdxSet].aKs.length>nIIdx)\r
+ return aDataCon[nIdxSet].aKs[nIIdx].sName;\r
+ else\r
+ return null;\r
+}\r
+\r
+function window_OnLoad()\r
+{\r
+ if(gsBgImage&&gsBgImage.length>0)\r
+ document.body.background=gsBgImage;\r
+ if(gsBgColor&&gsBgColor.length>0)\r
+ document.body.bgColor=gsBgColor;\r
+ document.body.insertAdjacentHTML("beforeEnd",writeLoadingDiv());\r
+ loadGlo();\r
+ var oMsg=new whMessage(WH_MSG_SHOWGLO,this,1,null)\r
+ SendMessage(oMsg);\r
+}\r
+\r
+function loadGlo()\r
+{\r
+ if(!gbReady)\r
+ {\r
+ var oResMsg=new whMessage(WH_MSG_GETPROJINFO,this,1,null);\r
+ if(SendMessage(oResMsg)&&oResMsg.oParam)\r
+ {\r
+ gbReady=true;\r
+ var oProj=oResMsg.oParam;\r
+ var aProj=oProj.aProj;\r
+ gbXML=oProj.bXML;\r
+ if(aProj.length>0)\r
+ {\r
+ var sLangId=aProj[0].sLangId;\r
+ for(var i=0;i<aProj.length;i++)\r
+ {\r
+ if(aProj[i].sGlo!=null&&aProj[i].sGlo!=""&&aProj[i].sLangId==sLangId)\r
+ addProjInfo(aProj[i].sPPath,aProj[i].sDPath,aProj[i].sGlo);\r
+ }\r
+ }\r
+ writeDataIFrame();\r
+ enEvt();\r
+ } \r
+ }\r
+}\r
+\r
+function findCKInDom()\r
+{\r
+ return true;\r
+}\r
+\r
+function GloWriteClassStyle()\r
+{\r
+ var sStyle="<STYLE TYPE='text/css'>\n";\r
+ if (gsBgImage)\r
+ sStyle+="body {border-top:"+gsBgColor+" 1px solid;}\n";\r
+ else\r
+ sStyle+="body {border-top:black 1px solid;}\n";\r
+ sStyle+="P {"+getFontStyle(goFont)+"margin-top:"+gsMargin+";margin-bottom:"+gsMargin+";margin-left:"+gsIndent+";}\n";\r
+ sStyle+="A:link {"+getFontStyle(goFont)+"}\n";\r
+ sStyle+="A:visited {"+getFontStyle(goFont)+"}\n";\r
+ sStyle+="A:active {background-color:"+gsActiveBgColor+";}\n";\r
+ sStyle+="A:hover {"+getFontStyle(goHoverFont)+"}\n";\r
+ sStyle+="</STYLE>"; \r
+ document.write(sStyle);\r
+}\r
+\r
+function window_Unload()\r
+{\r
+ UnRegisterListener2(this,WH_MSG_PROJECTREADY);\r
+ UnRegisterListener2(this,WH_MSG_SHOWGLO);\r
+}\r
+\r
+function onSendMessage(oMsg)\r
+{\r
+ if(oMsg)\r
+ {\r
+ var nMsgId=oMsg.nMessageId;\r
+ if(nMsgId==WH_MSG_SHOWGLO)\r
+ {\r
+ if(!gbNav6)\r
+ document.body.focus();\r
+ }\r
+ else if(nMsgId==WH_MSG_PROJECTREADY)\r
+ {\r
+ loadGlo();\r
+ }\r
+ }\r
+ return true;\r
+}\r
+\r
+if (window.gbWhUtil&&window.gbWhProxy&&window.gbWhVer&&window.gbWhLang&&window.gbWhMsg&&window.gbWhHost)\r
+{\r
+ RegisterListener2(this,WH_MSG_PROJECTREADY);\r
+ RegisterListener2(this,WH_MSG_SHOWGLO);\r
+ goFont=new whFont("Verdana","8pt","#000000","normal","normal","none");\r
+ goHoverFont=new whFont("Verdana","8pt","#007f00","normal","normal","underline");\r
+ window.onload=window_OnLoad;\r
+ window.onbeforeunload=window_BUnload;\r
+ window.onunload=window_Unload;\r
+ gbWhGHost=true;\r
+}\r
+else\r
+ document.location.reload();\r
+\r
--- /dev/null
+var gaChunks=new Array();\r
+var gaFakes=new Array();\r
+var gaDataCon=null;\r
+var gaData=new Array();\r
+\r
+var gbFindCK=false;;\r
+var gbNeedCalc=false;\r
+var gbScrl=false;\r
+var gbProcess=false;\r
+var gbReady=false;\r
+\r
+var gnCheck=0;\r
+var gnNum=0;\r
+var gnIns=-1;\r
+var gnLoad=0;\r
+var gnRef=-1;\r
+var gnMaxItems=0;\r
+var gnMaxMargin=32000;\r
+var gnNeeded=0;\r
+var gnNKI=-1;\r
+var gnRE=0;\r
+var gnScrlMgn=30;\r
+var gnSE=0;\r
+var gnVisible=0;\r
+var gnItems=0;\r
+var gnUHeight=1;\r
+\r
+var gsBCK=null;\r
+var gsChK=null;\r
+var gsCK=null;\r
+var gsLoadingDivID="LoadingDiv";\r
+var gsLoadingMsg="Loading data, please wait...";\r
+var gsSKA=null;\r
+var gsSKB=null;\r
+\r
+var gbLoadInfo=false;\r
+\r
+function putDataXML(xmlDoc,sDocPath)\r
+{\r
+ if(gbLoadInfo)\r
+ {\r
+ var node=xmlDoc.lastChild;\r
+ if(node)\r
+ {\r
+ var nTotal=0\r
+ var aChunk=new Array();\r
+ var oC=node.firstChild;\r
+ while(oC)\r
+ {\r
+ if(oC.nodeName=="chunkinfo")\r
+ {\r
+ var item=new Object();\r
+ item.sBK=oC.getAttribute("first");\r
+ item.sEK=oC.getAttribute("last");\r
+ item.sFileName=oC.getAttribute("url");\r
+ item.nNum=parseInt(oC.getAttribute("num"));\r
+ nTotal+=item.nNum;\r
+ item.nTotal=nTotal;\r
+ aChunk[aChunk.length]=item;\r
+ }\r
+ oC=oC.nextSibling;\r
+ }\r
+ projReady(aChunk);\r
+ }\r
+ }\r
+ else\r
+ {\r
+ var node=xmlDoc.lastChild;\r
+ if(node)\r
+ {\r
+ var aData=new Array();\r
+ var nPrev=0;\r
+ var nNext=0;\r
+ var oC=node.firstChild;\r
+ while(oC)\r
+ {\r
+ nPrev=nNext;\r
+ if(oC.nodeName=="key")\r
+ {\r
+ var sName=oC.getAttribute("name");\r
+ if(sName&&sName.length>0)\r
+ {\r
+ var sTarget=oC.getAttribute("target");\r
+ var item=new Object();\r
+ item.nType=2;\r
+ item.sName=sName;\r
+ if(sTarget)\r
+ item.sTarget=sTarget;\r
+ item.nPKOff=nPrev;\r
+ aData[aData.length]=item;\r
+ var nCurIndex=aData.length;\r
+ processKey(oC,aData,item);\r
+ nNext=aData.length-nCurIndex;\r
+ item.nNKOff=nNext;\r
+ }\r
+ }\r
+ else if(oC.nodeName=="letter")\r
+ {\r
+ var name=oC.getAttribute("name");\r
+ if(name&&name.length>0)\r
+ {\r
+ var item=new Object();\r
+ item.nType=1;\r
+ item.sName=name;\r
+ item.nPKOff=nPrev;\r
+ nNext=0;\r
+ item.nNKOff=nNext;\r
+ aData[aData.length]=item;\r
+ }\r
+ }\r
+ else if(oC.nodeName=="entry")\r
+ {\r
+ var name=oC.getAttribute("name");\r
+ var def=oC.getAttribute("value");\r
+ if(name&&name.length>0)\r
+ {\r
+ var item=new Object();\r
+ item.sName=name;\r
+ item.sDef=def;\r
+ item.nPKOff=nPrev;\r
+ nNext=0;\r
+ item.nNKOff=nNext;\r
+ aData[aData.length]=item;\r
+ }\r
+ }\r
+ oC=oC.nextSibling;\r
+ }\r
+ putData(aData);\r
+ }\r
+ }\r
+}\r
+\r
+function processKey(element,aData,item)\r
+{\r
+ var i=0;\r
+ var nPrev=0;\r
+ var nNext=0;\r
+ var oC=element.firstChild;\r
+ while(oC)\r
+ {\r
+ if(oC.nodeName=="topic")\r
+ {\r
+ var name=oC.getAttribute("name");\r
+ var url=oC.getAttribute("url");\r
+ if(url&&url.length!=0)\r
+ {\r
+ if(!name||name.length==0)\r
+ name=url;\r
+ var topic=new Object();\r
+ topic.sName=name;\r
+ topic.sURL=url;\r
+ if(!item.aTopics)\r
+ item.aTopics=new Array();\r
+ item.aTopics[item.aTopics.length]=topic;\r
+ }\r
+ }\r
+ else if(oC.nodeName=="key")\r
+ {\r
+ nPrev=nNext;\r
+ var name=oC.getAttribute("name");\r
+ if(name&&name.length!=0)\r
+ {\r
+ var subItem=new Object();\r
+ subItem.sName=name;\r
+ subItem.nType=3;\r
+ subItem.nPKOff=nPrev;\r
+ aData[aData.length]=subItem;\r
+ var nCurIndex=aData.length;\r
+ processKey(oC,aData,subItem);\r
+ nNext=aData.length-nCurIndex;\r
+ subItem.nNKOff=nNext;\r
+ }\r
+ }\r
+ oC=oC.nextSibling;\r
+ }\r
+}\r
+\r
+function putData(aData)\r
+{\r
+ endLoading();\r
+ var oCData=goCData;\r
+ if(oCData)\r
+ {\r
+ oCData.aKs=aData;\r
+ if(gnNKI==-1)\r
+ setTimeout("checkReady();",1);\r
+ else\r
+ {\r
+ gsSKA=getKByIdx(oCData,gnNKI);\r
+ gbNeedCalc=true;\r
+ gbScrl=true;\r
+ gnNKI=-1;\r
+ if(gsSKA)\r
+ setTimeout("checkReady();",1);\r
+ else\r
+ {\r
+ markEnd();\r
+ setTimeout("checkAgain();",50);\r
+ }\r
+ }\r
+ }\r
+}\r
+\r
+function markEnd()\r
+{\r
+ if(gbProcess)\r
+ gbProcess=false;\r
+}\r
+\r
+function endLoading()\r
+{\r
+ var oDiv=getElement(gsLoadingDivID);\r
+ if(oDiv)\r
+ oDiv.style.visibility="hidden";\r
+}\r
+\r
+function markBegin()\r
+{\r
+ gbProcess=true;\r
+}\r
+\r
+function beginLoading()\r
+{\r
+ var oDiv=getElement(gsLoadingDivID);\r
+ if(oDiv)\r
+ {\r
+ oDiv.style.top=document.body.scrollTop;\r
+ oDiv.style.visibility="visible";\r
+ }\r
+}\r
+\r
+function indexHTMLPart()\r
+{\r
+ this.sHTML="";\r
+ this.nNeeded=0;\r
+ this.nCurrent=0;\r
+ this.nConsumed=0;\r
+ this.sFK=null;\r
+ this.sLK=null;\r
+ this.addHTML=function(sHTML,nConsumed,bDown,bK,sK){\r
+ if(bDown)\r
+ this.sHTML+=sHTML;\r
+ else\r
+ this.sHTML=sHTML+this.sHTML;\r
+ this.nCurrent++; \r
+ this.nConsumed+=nConsumed;\r
+ if(bK)\r
+ {\r
+ if(!this.sFK)\r
+ this.sFK=sK;\r
+ if(!this.sLK)\r
+ this.sLK=sK;\r
+ if(bDown)\r
+ this.sLK=sK;\r
+ else\r
+ this.sFK=sK;\r
+ }\r
+ }\r
+ this.appendHTML=function(oHTML,bDown){\r
+ this.addSubHTML(oHTML,bDown);\r
+ if(!this.sFK)\r
+ this.sFK=oHTML.sFK;\r
+ if(!this.sLK)\r
+ this.sLK=oHTML.sLK;\r
+ if(bDown)\r
+ this.sLK=oHTML.sLK;\r
+ else\r
+ this.sFK=oHTML.sFK;\r
+ } \r
+ \r
+ this.addSubHTML=function(oHTML,bDown){\r
+ if(bDown)\r
+ this.sHTML+=oHTML.sHTML;\r
+ else\r
+ this.sHTML=oHTML.sHTML+this.sHTML;\r
+ this.nCurrent+=oHTML.nCurrent;\r
+ this.nConsumed+=oHTML.nConsumed; \r
+ }\r
+}\r
+\r
+function getMaxUnits()\r
+{\r
+ return Math.floor(gnMaxMargin/gnUHeight)+1;\r
+}\r
+\r
+function getFakeItemsHTMLbyCount(nB,nCount)\r
+{\r
+ var nMU=getMaxUnits();\r
+ var nNum=Math.floor(nCount/nMU);\r
+ var sHTML="";\r
+ for(var i=0;i<nNum;i++)\r
+ sHTML+=getFakeItemHTML(nB,nMU-1);\r
+ \r
+ var nRest=nCount%nMU;\r
+ sHTML+=getFakeItemHTML(nB,nRest-1);\r
+ return sHTML;\r
+}\r
+\r
+function getFakeItemHTML(nB,nNum)\r
+{\r
+ return "<h6 name=fk"+nB+" id=fk"+nB+" style=\"margin-top:"+gnUHeight*nNum+";margin-bottom:0\"> </h6>";\r
+}\r
+\r
+function fakeItemsArea(nB,n,sKA,sKB,obj)\r
+{\r
+ this.nB=nB;\r
+ this.nNum=n;\r
+ this.sKA=sKA;\r
+ this.sKB=sKB;\r
+ this.obj=obj;\r
+ this.nMargin=(n-1)*gnUHeight;\r
+\r
+ this.setNum=function(n)\r
+ {\r
+ var nLastobj=-1;\r
+ var nDelta=this.nMargin;\r
+ this.nMargin=(n-1)*gnUHeight;\r
+ nDelta=nDelta-this.nMargin;\r
+ if(n>0)\r
+ {\r
+ this.nNum=n;\r
+ var nMU=getMaxUnits();\r
+ nLastobj=Math.floor((n-1)/nMU);\r
+ if(this.obj.length)\r
+ this.obj[nLastobj].style.marginTop=((n-1)%nMU)*gnUHeight;\r
+ else\r
+ this.obj.style.marginTop=((n-1)%nMU)*gnUHeight;\r
+ }\r
+ if(this.obj.length)\r
+ {\r
+ for(var i=this.obj.length-1;i>nLastobj;i--)\r
+ removeThis(this.obj[i]);\r
+ }\r
+ else\r
+ {\r
+ if(nLastobj==-1)\r
+ removeThis(this.obj);\r
+ }\r
+ return nDelta;\r
+ }\r
+ this.insertAdjacentHTML=function(sWhere,sHTML)\r
+ {\r
+ if(sWhere=="beforeBegin")\r
+ {\r
+ if(this.obj.length)\r
+ this.obj[0].insertAdjacentHTML(sWhere,sHTML);\r
+ else\r
+ this.obj.insertAdjacentHTML(sWhere,sHTML);\r
+ }\r
+ else if(sWhere=="afterEnd")\r
+ {\r
+ if(this.obj.length)\r
+ {\r
+ if(gbMac&&gbIE5&&this.obj[this.obj.length-1].nextSibling)\r
+ this.obj[this.obj.length-1].nextSibling.insertAdjacentHTML("beforeBegin",sHTML);\r
+ else\r
+ this.obj[this.obj.length-1].insertAdjacentHTML(sWhere,sHTML);\r
+ }\r
+ else\r
+ {\r
+ if(gbMac&&gbIE5&&this.obj.nextSibling)\r
+ this.obj.nextSibling.insertAdjacentHTML("beforeBegin",sHTML);\r
+ else\r
+ this.obj.insertAdjacentHTML(sWhere,sHTML);\r
+ }\r
+ }\r
+ }\r
+ this.getBtm=function()\r
+ {\r
+ if(this.obj.length)\r
+ return this.obj[this.obj.length-1].offsetTop;\r
+ else\r
+ return this.obj.offsetTop;\r
+ }\r
+ this.getTop=function()\r
+ {\r
+ return this.getBtm()-this.nMargin;\r
+ }\r
+}\r
+\r
+function usedItems(nB,nE)\r
+{\r
+ this.nB=nB;\r
+ this.nE=nE;\r
+ this.oN=null;\r
+}\r
+\r
+function checkReady()\r
+{\r
+ var len=gaChunks.length;\r
+ var bNeedLoad=false;\r
+ var aDataCon;\r
+ var s=0;\r
+ var bDown=(gsSKB==null);\r
+ var sK=bDown?gsSKA:gsSKB;\r
+ if(sK==null)\r
+ {\r
+ markEnd();\r
+ setTimeout("checkAgain();",50);\r
+ return;\r
+ }\r
+ if(!gsChK||sK!=gsChK||gnNum==0)\r
+ {\r
+ gnCheck=0;\r
+ gsChK=sK;\r
+ aDataCon=new Array();\r
+ }\r
+ else{\r
+ s=gnNum;\r
+ aDataCon=gaDataCon;\r
+ }\r
+ for(var i=gnCheck;i<len;i++)\r
+ {\r
+ var oCData=getChunkedData(i,bDown,sK);\r
+ if(oCData)\r
+ {\r
+ if(!oCData.aKs&&oCData.sFileName!=null)\r
+ {\r
+ bNeedLoad=true;\r
+ goCData=oCData;\r
+ gnNum=s;\r
+ gnCheck=i;\r
+ gaDataCon=aDataCon;\r
+ oCData.nProjId=i;\r
+ gbLoadInfo=false;\r
+ beginLoading();\r
+ loadData2(gaData[i].sPPath+gaData[i].sDPath+oCData.sFileName);\r
+ return;\r
+ }\r
+ else{\r
+ aDataCon[s++]=oCData;\r
+ }\r
+ }\r
+ }\r
+ if(!bNeedLoad)\r
+ {\r
+ gnNum=0;\r
+ gsSKA=gsSKB=gsShowK=null;\r
+ \r
+ var oHTML=new indexHTMLPart();\r
+ var aPos=new Array();\r
+ var aOriPos=new Array();\r
+ var aMaxPos=new Array();\r
+ var aMinPos=new Array();\r
+ \r
+ if(gbNeedCalc||gbFindCK) gnIns=0;\r
+ for(i=0;i<aDataCon.length;i++)\r
+ {\r
+ aPos[i]=getIdxPos(aDataCon[i],bDown,sK);\r
+ if(gbNeedCalc||gbFindCK)\r
+ {\r
+ gnIns+=aPos[i]+aDataCon[i].nTotal-aDataCon[i].nNum;\r
+ if(!bDown)\r
+ {\r
+ if(aPos[i]!=-1)\r
+ {\r
+ if(aDataCon[i].aKs)\r
+ gnIns+=aDataCon[i].aKs[aPos[i]].nNKOff;\r
+ else\r
+ {\r
+ var n=aPos[i]+1;\r
+ while(n<aDataCon[i].aKsOnly.length&&!aDataCon[i].aKsOnly[n])\r
+ n++;\r
+ n=n-aPos[i]-1;\r
+ gnIns+=n;\r
+ }\r
+ }\r
+ }\r
+ }\r
+ aOriPos[i]=aPos[i];\r
+ getLimit(aDataCon,aPos,aMaxPos,aMinPos,i);\r
+ }\r
+ if((gbNeedCalc||gbFindCK)&&!bDown&&gnIns!=-1)\r
+ {\r
+ gnIns+=(aDataCon.length-1)\r
+ }\r
+ if(gnIns!=-1||gbFindCK)\r
+ {\r
+ oHTML.nNeeded=gnNeeded;\r
+ var bDone=writeItems(oHTML,aDataCon,aPos,aMinPos,aMaxPos,bDown,1);\r
+ if(oHTML.nConsumed!=0)\r
+ {\r
+ var nB;\r
+ if(!bDown)\r
+ nB=gnIns-oHTML.nConsumed+1;\r
+ else\r
+ nB=gnIns;\r
+ \r
+ var oldScrollPos=document.body.scrollTop;\r
+ if(insertIdxKs(nB,oHTML,gbScrl))\r
+ {\r
+ updateUsedK(aDataCon,aOriPos,aPos,bDown);\r
+ if(!gbScrl&&gbMac)\r
+ {\r
+ while(document.body.scrollTop!=oldScrollPos)\r
+ document.body.scrollTop=oldScrollPos;\r
+ }\r
+ gbScrl=false;\r
+ }\r
+ if(gbFindCK)\r
+ {\r
+ gbFindCK=false;\r
+ gbNeedCalc=true;\r
+ gsSKB=oHTML.sFK;\r
+ gnIns=-1;\r
+ setTimeout("checkReady();",50);\r
+ return;\r
+ }\r
+ }\r
+ else if(gbFindCK)\r
+ {\r
+ gbFindCK=false;\r
+ gbNeedCalc=true;\r
+ gsSKB=getFirstKeyFromPos(aDataCon,aPos);\r
+ gnIns=-1;\r
+ setTimeout("checkReady();",50);\r
+ return;\r
+ }\r
+ if(!findCKInDom()) return;\r
+\r
+ gnNeeded=gnNeeded-oHTML.nCurrent;\r
+ gnIns=-1;\r
+ markEnd();\r
+ setTimeout("checkAgain();",50);\r
+ gbNeedCalc=false;\r
+ }\r
+ else\r
+ {\r
+ if(!findCKInDom()) return;\r
+ markEnd();\r
+ setTimeout("checkAgain();",50);\r
+ }\r
+ }\r
+}\r
+\r
+function getFirstKeyFromPos(aDataCon,aPos)\r
+{\r
+ var sCurrentK=getBiggestChar();\r
+ for(var i=0;i<aPos.length;i++)\r
+ {\r
+ if(aDataCon[i].aKs&&aDataCon[i].aKs.length>0&&aPos[i]>=0&&aPos[i]<aDataCon[i].aKs.length)\r
+ {\r
+ if(sCurrentK==""||\r
+ compare(sCurrentK,aDataCon[i].aKs[aPos[i]].sName)>0)\r
+ {\r
+ sCurrentK=aDataCon[i].aKs[aPos[i]].sName;\r
+ }\r
+ }\r
+ }\r
+ return sCurrentK;\r
+}\r
+\r
+function checkAgain()\r
+{\r
+ if(!gbProcess)\r
+ {\r
+ if(gsBCK!=null)\r
+ {\r
+ gsCK=gsBCK;\r
+ gsBCK=null;\r
+ findCK();\r
+ }\r
+ else\r
+ {\r
+ markBegin();\r
+ getUnitIdx(document.body.scrollTop,document.body.clientHeight);\r
+ }\r
+ }\r
+ else\r
+ setTimeout("checkAgain()",50);\r
+}\r
+\r
+function getLimit(aDataCon,aPos,aMaxPos,aMinPos,i)\r
+{\r
+ aMaxPos[i]=aDataCon[i].nNum;\r
+ aMinPos[i]=-1;\r
+ var oPNode=null;\r
+ if(aDataCon[i].oUsedItems)\r
+ {\r
+ var oUsedItems=aDataCon[i].oUsedItems;\r
+ do{\r
+ if(oUsedItems.nB>aPos[i])\r
+ {\r
+ aMaxPos[i]=oUsedItems.nB;\r
+ break;\r
+ }\r
+ oPNode=oUsedItems;\r
+ oUsedItems=oUsedItems.oN;\r
+ }while(oUsedItems!=null);\r
+ if(oPNode)\r
+ aMinPos[i]=oPNode.nE;\r
+ }\r
+ else if(aDataCon[i].aKs==null)\r
+ {\r
+ aMaxPos[i]=aMinPos[i]=aPos[i];\r
+ }\r
+ if(aMinPos[i]>=aPos[i]||aMaxPos[i]<=aPos[i])\r
+ {\r
+ aMaxPos[i]=aMinPos[i]=aPos[i];\r
+ }\r
+}\r
+\r
+function getIdxPos(oIdx,bDown,sK)\r
+{\r
+ var aKs=oIdx.aKs;\r
+ var nIdx;\r
+ if(bDown)\r
+ nIdx=oIdx.nNum;\r
+ else\r
+ nIdx=-1;\r
+ if(aKs!=null)\r
+ {\r
+ for(var i=0;i<aKs.length;i++)\r
+ { \r
+ if(bDown)\r
+ {\r
+ if(compare(aKs[i].sName,sK)>0)\r
+ {\r
+ nIdx=i;\r
+ break;\r
+ }\r
+ }\r
+ else\r
+ {\r
+ if(compare(aKs[i].sName,sK)<0)\r
+ nIdx=i;\r
+ else\r
+ break;\r
+ }\r
+ i+=aKs[i].nNKOff;\r
+ }\r
+ }\r
+ else if(oIdx.aKsOnly)\r
+ {\r
+ var aKsOnly=oIdx.aKsOnly;\r
+ for(var i=0;i<aKsOnly.length;i++)\r
+ { \r
+ if(aKsOnly[i])\r
+ {\r
+ if(bDown)\r
+ {\r
+ if(compare(aKsOnly[i],sK)>0)\r
+ {\r
+ nIdx=i;\r
+ break;\r
+ }\r
+ }\r
+ else\r
+ {\r
+ if(compare(aKsOnly[i],sK)<0)\r
+ nIdx=i;\r
+ else\r
+ break;\r
+ }\r
+ }\r
+ }\r
+ }\r
+ return nIdx;\r
+}\r
+\r
+function writeItems(oHTML,aDataCon,aPos,aMinPos,aMaxPos,bDown,nLevel)\r
+{\r
+ var aOldPos=new Array();\r
+ for(var i=0;i<aPos.length;i++)\r
+ {\r
+ aOldPos[i]=aPos[i];\r
+ }\r
+ var p;\r
+ do{\r
+ var sCurrentK="";\r
+ var aCurIdxSet=new Array();\r
+ p=0;\r
+ for(i=0;i<aDataCon.length;i++)\r
+ {\r
+ if(aDataCon[i].aKs&&aDataCon[i].aKs.length&&aPos[i]!=-1&&\r
+ (bDown&&aPos[i]<aMaxPos[i])||(!bDown&&aPos[i]>aMinPos[i]))\r
+ {\r
+ if(sCurrentK==""||\r
+ (bDown&&compare(sCurrentK,aDataCon[i].aKs[aPos[i]].sName)>0)||\r
+ (!bDown&&compare(sCurrentK,aDataCon[i].aKs[aPos[i]].sName)<0))\r
+ {\r
+ sCurrentK=aDataCon[i].aKs[aPos[i]].sName;\r
+ p=0;\r
+ aCurIdxSet[p++]=i;\r
+ }\r
+ else if(sCurrentK==aDataCon[i].aKs[aPos[i]].sName){\r
+ aCurIdxSet[p++]=i;\r
+ }\r
+ }\r
+ else if(nLevel==1&&aMaxPos[i]!=aMinPos[i]){\r
+ if(bDown&&aPos[i]==aMaxPos[i])\r
+ {\r
+ if(aDataCon[i].aKs)\r
+ {\r
+ gsSKA=aDataCon[i].aKs[aOldPos[i]].sName;\r
+ return false;\r
+ }\r
+ }\r
+ else if(!bDown&&aPos[i]==aMinPos[i])\r
+ {\r
+ if(aDataCon[i].aKs)\r
+ {\r
+ gsSKB=aDataCon[i].aKs[aOldPos[i]].sName;\r
+ return false;\r
+ }\r
+ }\r
+ }\r
+ }\r
+ if(p>=1){\r
+ for(var s=0;s<p;s++)\r
+ {\r
+ aOldPos[aCurIdxSet[s]]=aPos[aCurIdxSet[s]];\r
+ }\r
+ mergeItems(oHTML,bDown,aDataCon,aCurIdxSet,p,aPos,nLevel);\r
+ adjustPosition(bDown,aDataCon,aCurIdxSet,p,aPos);\r
+ \r
+ if(nLevel==1&&oHTML.nNeeded<=oHTML.nCurrent){\r
+ return true;\r
+ }\r
+ }\r
+ }while(p>0);\r
+ return true;\r
+}\r
+\r
+function updateUsedK(aDataCon,aOriPos,aOldPos,bDown)\r
+{\r
+ for(var i=0;i<aDataCon.length;i++)\r
+ {\r
+ if (aOldPos[i]!=aOriPos[i])\r
+ {\r
+ var nBP=0;\r
+ var nEP=0;\r
+ if(bDown)\r
+ {\r
+ nBP=aOriPos[i];\r
+ nEP=aOldPos[i]-1;\r
+ }\r
+ else\r
+ {\r
+ if (aOldPos[i]!=-1)\r
+ nBP=aOldPos[i]+aDataCon[i].aKs[aOldPos[i]].nNKOff+1;\r
+ else\r
+ nBP=0;\r
+ nEP=aOriPos[i]+aDataCon[i].aKs[aOriPos[i]].nNKOff;\r
+ }\r
+ if(nBP<=nEP)\r
+ {\r
+ setContentsUsed(aDataCon[i],nBP,nEP);\r
+ \r
+ var oFirstPair=aDataCon[i].oUsedItems;\r
+ if(oFirstPair.oN==null&&oFirstPair.nB==0&&oFirstPair.nE==aDataCon[i].nNum-1)\r
+ {\r
+ storeKeysOnly(aDataCon[i]);\r
+ aDataCon[i].oUsedItems=aDataCon[i].aKs=aDataCon[i].sFileName=null;\r
+ }\r
+ }\r
+ }\r
+ }\r
+}\r
+\r
+function storeKeysOnly(oCData)\r
+{\r
+ oCData.aKsOnly=new Array();\r
+ for(var i=0;i<oCData.aKs.length;i++)\r
+ {\r
+ oCData.aKsOnly[i]=oCData.aKs[i].sName;\r
+ i+=oCData.aKs[i].nNKOff;\r
+ }\r
+}\r
+\r
+function setContentsUsed(oIdx,nB,nE)\r
+{\r
+ if(!oIdx.oUsedItems)\r
+ oIdx.oUsedItems=new usedItems(nB,nE);\r
+ else\r
+ {\r
+ var oUsedItems=oIdx.oUsedItems;\r
+ var oPNode=null;\r
+ do{\r
+ if(oUsedItems.nB>nB)\r
+ {\r
+ if(oUsedItems.nB==nE+1)\r
+ {\r
+ oUsedItems.nB=nB;\r
+ }\r
+ else{\r
+ var oNewNode=new usedItems(oUsedItems.nB,oUsedItems.nE);\r
+ oNewNode.oN=oUsedItems.oN;\r
+ oUsedItems.nB=nB;\r
+ oUsedItems.nE=nE;\r
+ oUsedItems.oN=oNewNode;\r
+ }\r
+ break;\r
+ }\r
+ oPNode=oUsedItems;\r
+ oUsedItems=oUsedItems.oN;\r
+ }while(oUsedItems);\r
+ if(!oUsedItems)\r
+ {\r
+ if(oPNode!=null)\r
+ oPNode.oN=new usedItems(nB,nE);\r
+ }\r
+ if(oPNode!=null){\r
+ if(oPNode.nE==oPNode.oN.nB-1)\r
+ {\r
+ oPNode.nE=oPNode.oN.nE;\r
+ oPNode.oN=oPNode.oN.oN;\r
+ }\r
+ }\r
+ }\r
+}\r
+\r
+function projInfo(sPPath,sDPath,sFile)\r
+{\r
+ this.sPPath=sPPath;\r
+ this.sDPath=sDPath;\r
+ this.sFile=sFile;\r
+}\r
+\r
+function addProjInfo(sPPath,sDPath,sFile)\r
+{\r
+ var oIdxInfo=new projInfo(sPPath,sDPath,sFile);\r
+ gaData[gaData.length]=oIdxInfo;\r
+ return oIdxInfo;\r
+}\r
+\r
+function writeDataIFrame()\r
+{\r
+ if(gnLoad<gaData.length)\r
+ {\r
+ gbLoadInfo=true;\r
+ loadData2(gaData[gnLoad].sPPath+gaData[gnLoad].sDPath+gaData[gnLoad].sFile);\r
+ }\r
+ else{\r
+ if(gnItems!=0)\r
+ {\r
+ markBegin();\r
+ writeFakeItems();\r
+ gsSKA="";\r
+ gnNeeded=gnVisible;\r
+ gnIns=0;\r
+ checkReady();\r
+ }\r
+ }\r
+}\r
+\r
+function getH6ById(nPos)\r
+{\r
+ if(document.all)\r
+ return document.all("fk"+nPos);\r
+ else if(document.getElementsByName)\r
+ return document.getElementsByName("fk"+nPos);\r
+ return null; \r
+}\r
+\r
+function showItemsInEvaluation(nBP)\r
+{\r
+ var bRtn=true;\r
+ var fPer=nBP/gnItems;\r
+ var nB=Math.floor(fPer*gnMaxItems);\r
+ var oCData=getChunkByIdx(gnRef,nB);\r
+ if(oCData)\r
+ {\r
+ if(!oCData.aKs&&oCData.sFileName!=null)\r
+ {\r
+ gnNKI=nB;\r
+ goCData=oCData;\r
+ oCData.nProjId=gnRef;\r
+ gbLoadInfo=false;\r
+ beginLoading();\r
+ loadData2(gaData[gnRef].sPPath+gaData[gnRef].sDPath+oCData.sFileName);\r
+ }\r
+ else{\r
+ gsSKA=getKByIdx(oCData,nB);\r
+ if(gsSKA)\r
+ {\r
+ gsSKB=null;\r
+ gbNeedCalc=true;\r
+ gbScrl=true;\r
+ checkReady()\r
+ }\r
+ else\r
+ {\r
+ markEnd();\r
+ bRtn=false;\r
+ }\r
+ }\r
+ }\r
+ else\r
+ {\r
+ markEnd();\r
+ bRtn=false;\r
+ }\r
+ return bRtn;\r
+}\r
+\r
+function isUsed(oCData,nPos)\r
+{\r
+ var oUsed=oCData.oUsedItems;\r
+ while(oUsed&&oUsed.nB<=nPos)\r
+ {\r
+ if(oUsed.nE>=nPos) return true;\r
+ oUsed=oUsed.oN;\r
+ }\r
+ return false;\r
+}\r
+\r
+function getKByIdx(oCData,nB)\r
+{\r
+ var nRelPos=nB-(oCData.nTotal-oCData.nNum);\r
+ var aIKs=oCData.aKs;\r
+ if(nRelPos>=0&&aIKs&&nRelPos<aIKs.length)\r
+ {\r
+ var oK=null;\r
+ do{\r
+ oK=aIKs[nRelPos++];\r
+ } \r
+ while((oK.nType==3||isUsed(oCData,nRelPos-1))&&nRelPos<aIKs.length);\r
+ if(oK.nType!=3)\r
+ {\r
+ return oK.sName;\r
+ }\r
+ else{\r
+ nRelPos=nB-(oCData.nTotal-oCData.nNum)-1;\r
+ if(nRelPos>=0)\r
+ {\r
+ do{\r
+ oK=aIKs[nRelPos--];\r
+ }\r
+ while((oK.nType==3||isUsed(oCData,nRelPos+1))&&nRelPos>=0);\r
+ }\r
+ if(oK.nType!=3)\r
+ {\r
+ return oK.sName;\r
+ }\r
+ }\r
+ }\r
+ return null;\r
+}\r
+\r
+function loadData2(sFileName)\r
+{\r
+ disEvt();\r
+ if(gbXML)\r
+ loadDataXML(sFileName);\r
+ else\r
+ loadData(sFileName);\r
+ enEvt();\r
+}\r
+\r
+function projReady(aChunk)\r
+{\r
+ gaChunks[gnLoad++]=aChunk;\r
+ var len=aChunk.length;\r
+ var nTotal=0;\r
+ if(len>0)\r
+ nTotal=aChunk[len-1].nTotal;\r
+ gnItems+=nTotal;\r
+ if(nTotal>gnMaxItems)\r
+ {\r
+ gnMaxItems=nTotal;\r
+ gnRef=gnLoad-1;\r
+ }\r
+ setTimeout("writeDataIFrame();",1);\r
+}\r
+\r
+function writeFakeItems()\r
+{\r
+ disEvt();\r
+ gnUHeight=15;\r
+ var sHTML=getFakeItemsHTMLbyCount(0,gnItems);\r
+ document.body.insertAdjacentHTML("beforeEnd",sHTML);\r
+ var obj=getH6ById(0);\r
+ if (document.body != null)\r
+ {\r
+ gnVisible=Math.ceil(document.body.clientHeight/gnUHeight);\r
+ }\r
+ gaFakes[0]=new fakeItemsArea(0,gnItems,"",getEndString(),obj);\r
+ enEvt();\r
+}\r
+\r
+function getEndString()\r
+{\r
+ var sBC=getBiggestChar();\r
+ return sBC+sBC+sBC+sBC+sBC+sBC+sBC+sBC;\r
+}\r
+\r
+function getUnitIdx(nScrl,nHeight)\r
+{\r
+ if(gaFakes.length==0)\r
+ {\r
+ markEnd();\r
+ return;\r
+ }\r
+ var nB=0;\r
+ var nE=gaFakes.length-1;\r
+ var nM=-1;\r
+ var nTop=0;\r
+ var nBtm=0;\r
+ var bF=false;\r
+ do{\r
+ nM=(nB+nE)>>1;\r
+ nBtm=gaFakes[nM].getBtm();\r
+ nTop=gaFakes[nM].getTop();\r
+ \r
+ if(nTop>=nScrl+nHeight)\r
+ nE=nM-1;\r
+ else if(nBtm<nScrl)\r
+ nB=nM+1;\r
+ else{\r
+ bF=true;\r
+ break;\r
+ }\r
+ }while(nE>=nB);\r
+ if(bF)\r
+ {\r
+ if(nTop>=nScrl){\r
+ gsSKA=gaFakes[nM].sKA;\r
+ gsSKB=null;\r
+ gnNeeded=Math.ceil((nHeight-nTop+nScrl)/gnUHeight);\r
+ gnIns=gaFakes[nM].nB;\r
+ checkReady();\r
+ }\r
+ else if(nBtm<=nScrl+nHeight){\r
+ gsSKB=gaFakes[nM].sKB;\r
+ gsSKA=null;\r
+ gnNeeded=Math.ceil((nBtm-nScrl+gnScrlMgn)/gnUHeight);\r
+ gbNeedCalc=true;\r
+ checkReady();\r
+ }\r
+ else{\r
+ gnNeeded=gnVisible;\r
+ var nUnitIdx=gaFakes[nM].nB+Math.floor((nScrl-nTop)/gnUHeight);\r
+ if (!showItemsInEvaluation(nUnitIdx))\r
+ {\r
+ gsSKA=gaFakes[nM].sKA;\r
+ gsSKB=null;\r
+ gnNeeded=Math.ceil(nHeight/gnUHeight);\r
+ gnIns=gaFakes[nM].nB;\r
+ checkReady();\r
+ }\r
+ }\r
+ }\r
+ else\r
+ markEnd();\r
+}\r
+\r
+function disEvt()\r
+{\r
+ window.onscroll=null;\r
+ window.onresize=null;\r
+}\r
+\r
+function enEvt()\r
+{\r
+ window.onscroll=window_OnScroll;\r
+ window.onresize=window_OnResize;\r
+}\r
+\r
+function insertIdxKs(nIns,oHTML,bScrl)\r
+{\r
+ var bRtn=true;\r
+ disEvt();\r
+ var nCount=oHTML.nConsumed;\r
+ var nB=0;\r
+ var nE=gaFakes.length-1;\r
+ var nM=-1;\r
+ var bF=false;\r
+ do{\r
+ nM=(nB+nE)>>1;\r
+ if(gaFakes[nM].nB>nIns)\r
+ nE=nM-1;\r
+ else if(gaFakes[nM].nB+gaFakes[nM].nNum<=nIns)\r
+ nB=nM+1;\r
+ else{\r
+ bF=true;\r
+ break;\r
+ }\r
+ }while(nE>=nB);\r
+ if(bF)\r
+ {\r
+ var oFIA=gaFakes[nM];\r
+ var nOffsetTop=oFIA.getTop();\r
+ var nOffsetBottom=oFIA.getBtm();\r
+ var nDelta=0;\r
+ var nHDiff=nIns-oFIA.nB;\r
+ var nTDiff=oFIA.nNum+oFIA.nB-(nIns+nCount);\r
+ if(nHDiff>0)\r
+ {\r
+ nDelta=oFIA.setNum(nHDiff);\r
+ var sOldKBefore=oFIA.sKB;\r
+ oFIA.sKB=oHTML.sFK;\r
+ if(nTDiff>0)\r
+ {\r
+ var sHTML=getFakeItemsHTMLbyCount(nIns,nTDiff);\r
+ oFIA.insertAdjacentHTML("afterEnd",sHTML);\r
+ var obj=getH6ById(nIns);\r
+ insertItemIntoArray(gaFakes,nM+1,new fakeItemsArea(nIns+nCount,nTDiff,oHTML.sLK,sOldKBefore,obj));\r
+ }\r
+ oFIA.insertAdjacentHTML("afterEnd",oHTML.sHTML); \r
+ if(bScrl)\r
+ {\r
+ if(gbMac&&gbIE4)\r
+ {\r
+ var nScrollPos=nOffsetBottom-nDelta;\r
+ while(document.body.scrollTop!=nScrollPos)\r
+ document.body.scrollTop=nScrollPos;\r
+ }\r
+ else\r
+ window.scrollTo(0,nOffsetBottom-nDelta);\r
+ }\r
+ }\r
+ else{\r
+ oFIA.insertAdjacentHTML("beforeBegin",oHTML.sHTML);\r
+ if(bScrl){\r
+ if(gbMac&&gbIE4)\r
+ {\r
+ var nScrollPos=nOffsetTop;\r
+ while(document.body.scrollTop!=nScrollPos)\r
+ document.body.scrollTop=nScrollPos;\r
+ }\r
+ else\r
+ window.scrollTo(0,nOffsetTop);\r
+ }\r
+ \r
+ if(nTDiff>0)\r
+ {\r
+ oFIA.nB=nIns+nCount;\r
+ nDelta=oFIA.setNum(nTDiff);\r
+ oFIA.sKA=oHTML.sLK;\r
+ } \r
+ else{\r
+ gaFakes[nM].setNum(0);\r
+ removeItemFromArray(gaFakes,nM);\r
+ }\r
+ }\r
+ }\r
+ else\r
+ bRtn=false;\r
+ enEvt();\r
+ return bRtn;\r
+}\r
+\r
+function window_OnScroll()\r
+{\r
+ gnSE++;\r
+ setTimeout("procScroll();",50); \r
+}\r
+\r
+function procScroll()\r
+{\r
+ if(gnSE==1&&!gbProcess)\r
+ {\r
+ markBegin();\r
+ getUnitIdx(document.body.scrollTop,document.body.clientHeight);\r
+ }\r
+ gnSE--;\r
+}\r
+\r
+function window_OnResize()\r
+{\r
+ gnRE++;\r
+ setTimeout("procResize();",50);\r
+}\r
+\r
+function procResize()\r
+{\r
+ if(gnRE==1&&!gbProcess)\r
+ {\r
+ markBegin();\r
+ gnVisible=Math.ceil(document.body.clientHeight/gnUHeight);\r
+ if(gnIns==-1)\r
+ getUnitIdx(document.body.scrollTop,document.body.clientHeight);\r
+ }\r
+ gnRE--;\r
+}\r
+\r
+function getChunkByIdx(nIdx,nPosition)\r
+{\r
+ var oCData=null;\r
+ if(nIdx<gaChunks.length)\r
+ {\r
+ var len=gaChunks[nIdx].length;\r
+ if(len>0)\r
+ {\r
+ var nB=0;\r
+ var nE=len-1;\r
+ var bF=false;\r
+ do{\r
+ var nM=(nB+nE)>>1;\r
+ if(nPosition<gaChunks[nIdx][nM].nTotal)\r
+ {\r
+ bF=true;\r
+ nE=nM;\r
+ }\r
+ else\r
+ nB=nM+1;\r
+ }while(nE>nB);\r
+ if(bF)\r
+ oCData=gaChunks[nIdx][nE];\r
+ else if(nPosition<gaChunks[nIdx][nB].nTotal)\r
+ oCData=gaChunks[nIdx][nB];\r
+ }\r
+ }\r
+ return oCData;\r
+}\r
+\r
+function getChunkedData(nIdx,bDown,sK)\r
+{\r
+ var oCData=null;\r
+ var nCandId=-1;\r
+ if(nIdx<gaChunks.length)\r
+ {\r
+ var len=gaChunks[nIdx].length;\r
+ if(len>0)\r
+ {\r
+ var nB=0;\r
+ var nE=len-1;\r
+ var bF=false;\r
+ do{\r
+ var nM=(nB+nE+(bDown?0:1))>>1;\r
+ if(bDown)\r
+ {\r
+ if(compare(sK,gaChunks[nIdx][nM].sEK)<0)\r
+ {\r
+ bF=true;\r
+ nE=nM;\r
+ }\r
+ else\r
+ nB=nM+1;\r
+ }\r
+ else\r
+ {\r
+ if(compare(sK,gaChunks[nIdx][nM].sBK)>0)\r
+ {\r
+ bF=true;\r
+ nB=nM;\r
+ }\r
+ else\r
+ nE=nM-1;\r
+ }\r
+ }while(nE>nB);\r
+ if(bF)\r
+ {\r
+ if(bDown)\r
+ nCandId=nE;\r
+ else\r
+ nCandId=nB;\r
+ }\r
+ else\r
+ {\r
+ if(bDown)\r
+ {\r
+ if(gaChunks[nIdx].length>nB&&compare(sK,gaChunks[nIdx][nB].sEK)<0)\r
+ nCandId=nB;\r
+ else\r
+ nCandId=gaChunks[nIdx].length-1;\r
+ }\r
+ else\r
+ {\r
+ if(0<=nE&&compare(sK,gaChunks[nIdx][nE].sBK)>0)\r
+ nCandId=nE;\r
+ else\r
+ nCandId=0;\r
+ }\r
+ }\r
+ return gaChunks[nIdx][nCandId];\r
+ }\r
+ }\r
+ return null;\r
+}\r
+\r
+function findCK()\r
+{\r
+ if(gsCK!=null)\r
+ {\r
+ gsSKA=gsCK;\r
+ gbFindCK=true;\r
+ gnNeeded=1;\r
+ markBegin();\r
+ checkReady();\r
+ }\r
+}\r
+\r
+function writeLoadingDiv(nIIdx)\r
+{\r
+ return "<div id=\""+gsLoadingDivID+"\" style=\"position:absolute;top:0;left:0;z-index:600;visibility:hidden;padding-left:4px;background-color:ivory;border-width:1;border-style:solid;border-color:black;width:150px;\">"+gsLoadingMsg+"</div>";\r
+}\r
+\r
+var gbWhHost=true;
\ No newline at end of file
--- /dev/null
+<html>\r
+<head>\r
+<title>Index content</title>\r
+<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
+<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">\r
+<meta name "description" content="WebHelp 2002">\r
+<base target="bsscright">\r
+<script language="javascript" src="whver.js"></script>\r
+<script language="javascript1.2" src="whmozemu.js"></script>\r
+<script language="javascript1.2" src="whmsg.js"></script>\r
+<script language="javascript1.2" src="whproxy.js"></script>\r
+<script language="javascript1.2" src="whlang.js"></script>\r
+<script language="javascript1.2" src="whutils.js"></script>\r
+<script language="javascript1.2" src="whhost.js"></script>\r
+<script language="javascript1.2" src="whihost.js"></script>\r
+<script language="javascript1.2">\r
+<!--\r
+var gnPageWidth = 0;\r
+var gnPageHeight = 0;\r
+var goPopup = null;\r
+var gITE = new Array();\r
+var gIndexLetterArray = new Array();\r
+var gbPopupMenuTimeoutExpired=false;\r
+var gBsClientWidth=640;\r
+var gBsClientHeight=480;\r
+var g_bIsPopupMenuInit=false;\r
+\r
+function WritePopupMenuLayer()\r
+{\r
+ if (!g_bIsPopupMenuInit)\r
+ {\r
+ document.write("<DIV ID='PopupMenu' STYLE='position:absolute; left:0px; top:0px; z-index:4; visibility:hidden;'></DIV>");\r
+ document.write("<STYLE TYPE='text/css'>");\r
+ if (gbMac && gbIE4) {\r
+ document.write(".PopupOver {font-family:'Arial'; color:white; background:navy; font-size:10pt; text-decoration:none;}");\r
+ document.write(".PopupNotOver {font-family:'Arial'; color:black; background:#c0c0c0; font-size:10pt; text-decoration:none;}");\r
+ } else {\r
+ document.write(".PopupOver {font-family:'Arial'; color:white; background:navy; font-size:8pt; text-decoration:none;}");\r
+ document.write(".PopupNotOver {font-family:'Arial'; color:black; background:#c0c0c0; font-size:8pt; text-decoration:none;}");\r
+ }\r
+ document.write("</STYLE>");\r
+ }\r
+ g_bIsPopupMenuInit = true;\r
+}\r
+\r
+function PopupMenu_Invoke()\r
+{\r
+ if (gbNav6)\r
+ resetHighLight();\r
+ \r
+ if (!gbNav6 && document.readyState != "complete")\r
+ return false;\r
+ var fn_arguments = PopupMenu_Invoke.arguments; \r
+ // Make sure we have reasonable arguments\r
+ var argLen = fn_arguments.length;\r
+ if (argLen < 3) {\r
+ return false;\r
+ }\r
+\r
+ // Check to see if we only have one target\r
+ var strTarget = "";\r
+ \r
+ strTarget = "TARGET='" + fn_arguments[1] + "'";\r
+ \r
+ if (argLen < 5) {\r
+ // Get the place that we will be putting the topic into\r
+ var strURL = fn_arguments[3];\r
+\r
+ if (fn_arguments[1] != null && typeof(fn_arguments[1]) != "undefined")\r
+ window.open(strURL, fn_arguments[1]);\r
+ else\r
+ window.open(strURL);\r
+ \r
+ return false;\r
+ }\r
+ \r
+ var strMenu = '<TABLE STYLE="border:2px outset white;" CELLSPACING=0';\r
+ if (gbMac && gbIE4) {\r
+ strMenu += ' CELLPADDING=4';\r
+ } else {\r
+ strMenu += ' CELLPADDING=2';\r
+ } \r
+ strMenu += ' BGCOLOR=#c0c0c0>';\r
+\r
+ // Add each of the items\r
+ if (gbIE55)\r
+ {\r
+ var i = 2;\r
+ while (i <= argLen - 1) {\r
+ strMenu += '<TR><TD><NOBR>'\r
+ strMenu += '<DIV STYLE="padding-left:3pt; padding-right:3pt;"><A ';\r
+ strMenu += ' onclick="parent.PopupMenu_2HandleClick(\'' + fn_arguments[i + 1] + '\', \'' + fn_arguments[1] + '\');"';\r
+ strMenu += ' onmouseover="parent.PopupMenu_Over(event);"';\r
+ strMenu += ' onmouseout="parent.PopupMenu_Out(event);"';\r
+ strMenu += '>';\r
+ strMenu += '<SPAN CLASS="PopupNotOver">' + fn_arguments[i] + '</SPAN>';\r
+ strMenu += '</A></DIV></NOBR></TD></TR>';\r
+ i += 2;\r
+ }\r
+ }\r
+ else\r
+ {\r
+ var i = 2;\r
+ while (i <= argLen - 1) {\r
+ strMenu += '<TR><TD><NOBR>'\r
+ strMenu += '<DIV STYLE="padding-left:3pt; padding-right:3pt;"><A HREF="' + fn_arguments[i + 1] + '" ' + strTarget;\r
+ strMenu += ' onclick="PopupMenu_HandleClick(event);"';\r
+ strMenu += ' onmouseover="PopupMenu_Over(event);"';\r
+ strMenu += ' onmouseout="PopupMenu_Out(event);"';\r
+ strMenu += '>';\r
+ strMenu += '<SPAN CLASS="PopupNotOver">' + fn_arguments[i] + '</SPAN>';\r
+ strMenu += '</A></DIV></NOBR></TD></TR>';\r
+ i += 2;\r
+ }\r
+ }\r
+ strMenu += "</TABLE>";\r
+\r
+ if (gbMac && gbIE4) {\r
+ // ie5 in mac need something. </TABLE> is one of them.\r
+ strMenu +="<TABLE></TABLE>";\r
+ }\r
+\r
+ var layerPopup = null;\r
+ var stylePopup = null;\r
+ var nEventX = 0;\r
+ var nEventY = 0;\r
+ var nWindowWidth = 0;\r
+ if (gbIE4)\r
+ {\r
+ layerPopup = document.all["PopupMenu"];\r
+ layerPopup.innerHTML = strMenu;\r
+ stylePopup = layerPopup.style;\r
+\r
+ _BSPSGetClientSize();\r
+\r
+ // Get the position of the item causing the event (relative to its parent)\r
+ nEventX = window.event.clientX;\r
+ nEventY = window.event.clientY;\r
+ \r
+ if (nEventY + layerPopup.scrollHeight + 10 < gBsClientHeight) {\r
+ nEventY += document.body.scrollTop + 10;\r
+ } else {\r
+ nEventY = (document.body.scrollTop + gBsClientHeight) - layerPopup.scrollHeight - 20;\r
+ }\r
+ stylePopup.top = nEventY;\r
+\r
+ if (nEventX + layerPopup.scrollWidth + 20 > gBsClientWidth) {\r
+ if (gBsClientWidth - layerPopup.scrollWidth < 5) {\r
+ stylePopup.left = 5;\r
+ } else {\r
+ stylePopup.left = gBsClientWidth - layerPopup.scrollWidth - 5;\r
+ }\r
+ } else {\r
+ stylePopup.left = nEventX + document.body.scrollLeft + 20;\r
+ }\r
+\r
+ if (gbIE55) {\r
+ var nPosX = window.event.clientX;\r
+ var nPosY = window.event.clientY;\r
+ if (window.event.srcElement)\r
+ {\r
+ nPosX = window.event.srcElement.offsetLeft + window.event.srcElement.offsetWidth - document.body.scrollLeft;\r
+ nPosY = window.event.srcElement.offsetTop + window.event.srcElement.offsetHeight - document.body.scrollTop;\r
+ }\r
+ goPopup = window.createPopup();\r
+ var oPopupBody = goPopup.document.body;\r
+ goPopup.document.createStyleSheet();\r
+ goPopup.document.styleSheets[0].addRule(".PopupOver", "{font-family:\"Arial\"; cursor: hand;color:white; background:navy; font-size:8pt; text-decoration:none;}");\r
+ goPopup.document.styleSheets[0].addRule(".PopupNotOver", "{font-family:\"Arial\"; color:black; background:#c0c0c0; font-size:8pt; text-decoration:none;}");\r
+ oPopupBody.insertAdjacentHTML("afterBegin", strMenu);\r
+ goPopup.show(nPosX, nPosY, layerPopup.scrollWidth, layerPopup.scrollHeight, document.body);\r
+ }\r
+ else \r
+ {\r
+ stylePopup.visibility = "visible";\r
+ document.onclick = PopupMenu_HandleClick;\r
+ }\r
+ } else if (gbNav6) {\r
+ layerPopup = document.getElementById("PopupMenu");\r
+ layerPopup.style.visibility = "hidden";\r
+ \r
+ var e = fn_arguments[0];\r
+ nEventX = e.pageX;\r
+ nEventY = e.pageY;\r
+ _BSPSGetClientSize();\r
+ layerPopup.innerHTML = strMenu;\r
+\r
+ if (nEventY + layerPopup.offsetHeight + 20 < window.pageYOffset + gBsClientHeight) {\r
+ nEventY += 20;\r
+ } else {\r
+ nEventY = gBsClientHeight + window.pageYOffset - layerPopup.offsetHeight - 20;\r
+ }\r
+\r
+ if (nEventX + layerPopup.offsetWidth + 20 > gBsClientWidth + window.pageXOffset) {\r
+ if (gBsClientWidth + window.pageXOffset - layerPopup.offsetWidth < 20) {\r
+ nEventX = 5;\r
+ } else {\r
+ nEventX = gBsClientWidth + window.pageXOffset - layerPopup.offsetWidth - 20;\r
+ }\r
+ } else {\r
+ nEventX += 20;\r
+ }\r
+ layerPopup.style.top = nEventY;\r
+ layerPopup.style.left = nEventX;\r
+\r
+ // set again to avoid the frash in netscape 6.\r
+ layerPopup.innerHTML = strMenu;\r
+ layerPopup.style.visibility = "visible";\r
+ window.onclick = PopupMenu_HandleClick;\r
+ } \r
+\r
+ window.gbPopupMenuTimeoutExpired = false;\r
+ setTimeout("PopupMenu_Timeout();", 100);\r
+ return false;\r
+}\r
+\r
+function PopupMenu_Timeout()\r
+{\r
+ window.gbPopupMenuTimeoutExpired = true;\r
+}\r
+\r
+function PopupMenu_Over(e)\r
+{\r
+ if (gbIE4)\r
+ e.srcElement.className = "PopupOver";\r
+ else if (gbNav6)\r
+ e.target.parentNode.className = "PopupOver";\r
+}\r
+\r
+function PopupMenu_Out(e)\r
+{\r
+ if (gbIE4)\r
+ e.srcElement.className = "PopupNotOver";\r
+ else if (gbNav6)\r
+ e.target.parentNode.className = "PopupNotOver";\r
+}\r
+\r
+function PopupMenu_2HandleClick(surl, starget)\r
+{\r
+ window.open(surl, starget);\r
+ goPopup.hide();\r
+}\r
+\r
+function PopupMenu_HandleClick(e)\r
+{\r
+ if (!window.gbPopupMenuTimeoutExpired) {\r
+ return;\r
+ }\r
+\r
+ var layerPopup = getElement("PopupMenu");\r
+ layerPopup.style.visibility = "hidden";\r
+\r
+ return;\r
+}\r
+\r
+//Get client size info\r
+function _BSPSGetClientSize()\r
+{\r
+ gBsClientWidth = document.body.clientWidth;\r
+ gBsClientHeight = document.body.clientHeight;\r
+}\r
+\r
+if (window.gbWhIHost)\r
+{\r
+ setBackgroundcolor("White");\r
+ \r
+ setFont("Normal", "Tahoma","8pt","Black","Normal","Normal","none");\r
+ setFont("Empty", "Tahoma","8pt","Black","Normal","Normal","none");\r
+ setFont("Hover", "Tahoma","8pt","Navy","Normal","Normal","underline");\r
+ setActiveBgColor("Silver");\r
+ \r
+ \r
+ IndexWriteClassStyle();\r
+}\r
+else\r
+ document.location.reload();\r
+//-->\r
+</script>\r
+</head>\r
+<body topmargin="2" leftmargin="2" marginwidth="0" marginheight="0" bgproperties="fixed" scroll="auto" bgcolor="white">\r
+<script languageE="JavaScript">\r
+<!--\r
+WritePopupMenuLayer();\r
+//-->\r
+</script>\r
+</body>\r
+</html>\r
+\r
--- /dev/null
+<html>\r
+<head>\r
+<title>Index</title>\r
+<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
+<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">\r
+<meta name "description" content="WebHelp 2002">\r
+</head>\r
+<script language="javascript" src="whver.js"></script>\r
+<script language="javascript1.2" src="whproxy.js"></script>\r
+<script language="javascript1.2" src="whmsg.js"></script>\r
+<script language="javascript1.2">\r
+<!--\r
+var gbIndexLayerInit = false;\r
+if (window.gbWhProxy&&window.gbWhMsg&&window.gbWhVer)\r
+{\r
+ var strWrite;\r
+ if (gbMac)\r
+ strWrite="<FRAMESET ROWS='45,100%' framespacing=0 frameborder=0>";\r
+ else\r
+ strWrite="<FRAMESET ROWS='60,100%' framespacing=0 frameborder=0>";\r
+ strWrite +="<FRAME SRC='whiform.htm' title='index form frame' name='idxform' noresize='yes' scrolling='no'>";\r
+ strWrite +="<FRAME SRC='whibody.htm' title='index content frame' name='idxbody' scrolling='yes'>";\r
+ strWrite +="</FRAMESET>";\r
+ document.write(strWrite);\r
+}\r
+else\r
+ document.location.reload();\r
+//-->\r
+</script>\r
+</html>\r
--- /dev/null
+<html>\r
+<head>\r
+<title>Index form</title>\r
+<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
+<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">\r
+<meta name "description" content="WebHelp 2002">\r
+</head>\r
+<style>\r
+<!--\r
+body {margin:0;}\r
+-->\r
+</style>\r
+<body bgcolor="#c0c0c0">\r
+<script language="javascript" src="whver.js"></script>\r
+<script language="javascript1.2" src="whmsg.js"></script>\r
+<script language="javascript1.2" src="whproxy.js"></script>\r
+<script language="javascript1.2" src="whutils.js"></script>\r
+<script language="javascript1.2" src="whform.js"></script>\r
+<script language="javascript1.2">\r
+<!--\r
+function indexLookup(bCR)\r
+{\r
+ var strInput = document.IndexInputForm.keywordField.value.toUpperCase();\r
+ if (strInput != "") {\r
+ var oParam = new Object();\r
+ oParam.sInput = strInput;\r
+ oParam.bCR = bCR;\r
+ var oMessage = new whMessage(WH_MSG_SEARCHINDEXKEY, this, 1, oParam);\r
+ SendMessage(oMessage);\r
+ }\r
+ if (gbMac) {\r
+ document.IndexInputForm.keywordField.focus();\r
+ }\r
+}\r
+\r
+function window_Unload()\r
+{\r
+ UnRegisterListener2(this, WH_MSG_SHOWTOC);\r
+ UnRegisterListener2(this, WH_MSG_SHOWIDX);\r
+ UnRegisterListener2(this, WH_MSG_SHOWFTS);\r
+ UnRegisterListener2(this, WH_MSG_SHOWGLO);\r
+}\r
+\r
+function onSendMessage(oMessage)\r
+{\r
+ if (oMessage.nMessageId == WH_MSG_SHOWIDX)\r
+ {\r
+ document.IndexInputForm.keywordField.focus();\r
+ }\r
+ else if (oMessage.nMessageId == WH_MSG_SHOWFTS ||\r
+ oMessage.nMessageId == WH_MSG_SHOWTOC || \r
+ oMessage.nMessageId == WH_MSG_SHOWGLO)\r
+ {\r
+ document.IndexInputForm.keywordField.blur();\r
+ }\r
+ return true;\r
+}\r
+\r
+if (window.gbWhForm)\r
+{\r
+ RegisterListener2(this, WH_MSG_SHOWTOC);\r
+ RegisterListener2(this, WH_MSG_SHOWIDX);\r
+ RegisterListener2(this, WH_MSG_SHOWFTS);\r
+ RegisterListener2(this, WH_MSG_SHOWGLO);\r
+ window.onunload=window_Unload;\r
+ window.onload = init;\r
+ gfunLookUp = indexLookup;\r
+ gfunInit = null;\r
+ gstrFormName = "IndexInputForm"\r
+ gsTitle = "Type in the keyword to find:";\r
+ gsTitle = "Type in the keyword to find:";\r
+\r
+ setBackgroundcolor("White");\r
+ \r
+ setBtnType("none");\r
+ \r
+ \r
+ \r
+ setGoText("Go");\r
+ setFont("Title", "Tahoma","8pt","Navy","Normal","Normal","none");\r
+ \r
+ \r
+ document.write(getFormHTML());\r
+ writeFormStyle();\r
+}\r
+else\r
+ document.location.reload();\r
+//-->\r
+</script>\r
+</body>\r
+</html>
\ No newline at end of file
--- /dev/null
+var gsDefaultTarget="bsscright";\r
+var gsBgColor="#ffffff";\r
+var gsBgImage="";\r
+var goIdxFont=null;\r
+var goIdxEmptyFont=null;\r
+var goIdxHoverFont=null;\r
+var gsIdxMargin="0pt";\r
+var gsIdxIndent="8pt";\r
+var gsIdxActiveBgColor="#cccccc";\r
+var gsCK = null;\r
+var gsBCK = null;\r
+var gbCR = false;\r
+var gbBCR = false;\r
+var gbWhIHost=true;\r
+\r
+function myEvent()\r
+{\r
+ this.pageX = 0;\r
+ this.pageY = 0;\r
+}\r
+var _event=new myEvent();\r
+\r
+function setBackgroundcolor(sBgColor)\r
+{\r
+ gsBgColor=sBgColor;\r
+}\r
+\r
+function setBackground(sBgImage)\r
+{\r
+ gsBgImage=sBgImage;\r
+}\r
+\r
+function setFont(sType,sFontName,sFontSize,sFontColor,sFontStyle,sFontWeight,sFontDecoration)\r
+{\r
+ var vFont=new whFont(sFontName,sFontSize,sFontColor,sFontStyle,sFontWeight,sFontDecoration);\r
+ if(sType=="Normal")\r
+ goIdxFont=vFont;\r
+ else if(sType=="Empty")\r
+ goIdxEmptyFont=vFont;\r
+ else if(sType=="Hover")\r
+ goIdxHoverFont=vFont;\r
+}\r
+\r
+function setActiveBgColor(sBgColor)\r
+{\r
+ gsIdxActiveBgColor=sBgColor;\r
+}\r
+\r
+function setMargin(sMargin)\r
+{\r
+ gsIdxMargin=sMargin;\r
+}\r
+\r
+function setIndent(sIndent)\r
+{\r
+ gsIdxIndent=sIndent;\r
+}\r
+\r
+function writeOneItem(oHTML,bDown,aDataCon,aCurIdxSet,nLength,aPos,nLevel)\r
+{\r
+ var sHTML="";\r
+ var nIdxSet=aCurIdxSet[0];\r
+ var nIIdx=aPos[nIdxSet];\r
+ var sKOriName=getItemName(aDataCon,nIdxSet,nIIdx);\r
+ var sKName=_textToHtml(sKOriName);\r
+\r
+ var nIdxIndent=parseInt(gsIdxIndent);\r
+ var sTopics="";\r
+ if(nLevel==1){\r
+ if(getItemType(aDataCon,nIdxSet,nIIdx)==1)\r
+ {\r
+ sHTML+="<H6><nobr>";\r
+ sHTML+="<b>"+sKName+"</b></nobr></H6>";\r
+ }\r
+ else{\r
+ for(var i=0;i<nLength;i++)\r
+ sTopics+=getIdxTopics(aDataCon,aCurIdxSet[i],aPos[aCurIdxSet[i]]);\r
+ sHTML+="<p style=\"margin-left:"+gsIdxIndent+"\"><nobr>";\r
+ sHTML+="<a alt=\"" + sKName + "\" href=\"javascript:void(0);\" onfocus=\"clearHighLight();\" onclick=\"PopupMenu_Invoke(event,'"+getTargetName(aDataCon,nIdxSet,nIIdx)+"'";\r
+ if(sTopics.length>0)\r
+ sHTML+=sTopics+");return false;\">"+sKName+"</a></nobr></p>";\r
+ else\r
+ sHTML+=");return false;\" style=\""+getFontStyle(goIdxEmptyFont)+"\">"+sKName+"</a></nobr></p>";\r
+ }\r
+ }\r
+ else if(nLevel>=2){\r
+ var nIndent=nIdxIndent*nLevel;\r
+ for(var i=0;i<nLength;i++)\r
+ sTopics+=getIdxTopics(aDataCon,aCurIdxSet[i],aPos[aCurIdxSet[i]]);\r
+ if (nLevel==2)\r
+ sHTML+="<h6 class=\"firstsub\" style=\"margin-left:"+nIndent+"pt\"><nobr>";\r
+ else\r
+ sHTML+="<h6 style=\"margin-left:"+nIndent+"pt\"><nobr>";\r
+ sHTML+="<a alt=\"" + sKName + "\" href=\"javascript:void(0);\" onfocus=\"clearHighLight();\" onclick=\"PopupMenu_Invoke(event,'"+getTargetName(aDataCon,nIdxSet,nIIdx)+"'";\r
+ if(sTopics.length>0)\r
+ sHTML+=sTopics+");return false;\">"+sKName+"</a></nobr></h6>";\r
+ else\r
+ sHTML+=");return false;\" style=\""+getFontStyle(goIdxEmptyFont)+"\">"+sKName+"</a></nobr></h6>";\r
+ }\r
+ oHTML.addHTML(sHTML,nLength,bDown,(nLevel==1),sKOriName);\r
+}\r
+\r
+function getTargetName(aDataCon,nIdxSet,nIIdx)\r
+{\r
+ if(nIdxSet<aDataCon.length&&aDataCon[nIdxSet].aKs.length>nIIdx)\r
+ if(aDataCon[nIdxSet].aKs[nIIdx].sTarget)\r
+ return aDataCon[nIdxSet].aKs[nIIdx].sTarget;\r
+ return gsDefaultTarget;\r
+}\r
+\r
+function mergeItems(oHTML,bDown,aDataCon,aCurIdxSet,nLength,aPos,nLevel)\r
+{\r
+ var oLocalHTML=new indexHTMLPart();\r
+ writeOneItem(oLocalHTML,bDown,aDataCon,aCurIdxSet,nLength,aPos,nLevel);\r
+ \r
+ var aLocalPos=new Array();\r
+ var aMaxPos=new Array();\r
+ for(var i=0;i<aPos.length;i++)\r
+ {\r
+ aLocalPos[i]=aPos[i];\r
+ aMaxPos[i]=-1;\r
+ }\r
+ \r
+ for(i=0;i<nLength;i++)\r
+ {\r
+ var nNKOff=getNKOff(aDataCon,aCurIdxSet[i],aLocalPos[aCurIdxSet[i]]);\r
+ aLocalPos[aCurIdxSet[i]]++;\r
+ if(nNKOff>0)\r
+ aMaxPos[aCurIdxSet[i]]=aLocalPos[aCurIdxSet[i]]+nNKOff;\r
+ }\r
+ var oSubHTML=new indexHTMLPart();\r
+ writeItems(oSubHTML,aDataCon,aLocalPos,null,aMaxPos,true,nLevel+1);\r
+ oLocalHTML.addSubHTML(oSubHTML,true);\r
+ oHTML.appendHTML(oLocalHTML,bDown);\r
+}\r
+\r
+function adjustPosition(bDown,aDataCon,aCurIdxSet,nLength,aPos)\r
+{\r
+ if(bDown)\r
+ {\r
+ for(var i=0;i<nLength;i++)\r
+ {\r
+ var nNKOff=getNKOff(aDataCon,aCurIdxSet[i],aPos[aCurIdxSet[i]]);\r
+ aPos[aCurIdxSet[i]]+=(1+nNKOff);\r
+ }\r
+ }\r
+ else{\r
+ for(var i=0;i<nLength;i++)\r
+ {\r
+ var nPKOff=getPKOff(aDataCon,aCurIdxSet[i],aPos[aCurIdxSet[i]]);\r
+ aPos[aCurIdxSet[i]]-=(1+nPKOff);\r
+ }\r
+ }\r
+}\r
+\r
+function getItemName(aDataCon,nIdxSet,nIIdx)\r
+{\r
+ if(nIdxSet<aDataCon.length&&aDataCon[nIdxSet].aKs.length>nIIdx)\r
+ return aDataCon[nIdxSet].aKs[nIIdx].sName;\r
+ else\r
+ return null;\r
+}\r
+\r
+function getItemType(aDataCon,nIdxSet,nIIdx)\r
+{\r
+ if(nIdxSet<aDataCon.length&&aDataCon[nIdxSet].aKs.length>nIIdx)\r
+ return aDataCon[nIdxSet].aKs[nIIdx].nType;\r
+ else\r
+ return 0;\r
+}\r
+\r
+function getNKOff(aDataCon,nIdxSet,nIIdx)\r
+{\r
+ if(nIdxSet<aDataCon.length&&aDataCon[nIdxSet].aKs.length>nIIdx)\r
+ return aDataCon[nIdxSet].aKs[nIIdx].nNKOff;\r
+ else\r
+ return null;\r
+}\r
+\r
+function getPKOff(aDataCon,nIdxSet,nIIdx)\r
+{\r
+ if(nIdxSet<aDataCon.length&&aDataCon[nIdxSet].aKs.length>nIIdx)\r
+ return aDataCon[nIdxSet].aKs[nIIdx].nPKOff;\r
+ else\r
+ return null;\r
+}\r
+\r
+function window_OnLoad()\r
+{\r
+ if(gsBgImage&&gsBgImage.length>0)\r
+ {\r
+ document.body.background=gsBgImage;\r
+ }\r
+ if(gsBgColor&&gsBgColor.length>0)\r
+ {\r
+ document.body.bgColor=gsBgColor;\r
+ }\r
+ document.body.insertAdjacentHTML("beforeEnd",writeLoadingDiv());\r
+ loadIdx();\r
+ var oMsg=new whMessage(WH_MSG_SHOWIDX,this,1,null)\r
+ SendMessage(oMsg);\r
+}\r
+\r
+function loadIdx()\r
+{\r
+ if(!gbReady)\r
+ {\r
+ var oResMsg=new whMessage(WH_MSG_GETPROJINFO,this,1,null);\r
+ if(SendMessage(oResMsg)&&oResMsg.oParam)\r
+ {\r
+ gbReady=true;\r
+ var oProj=oResMsg.oParam;\r
+ var aProj=oProj.aProj;\r
+ gbXML=oProj.bXML;\r
+ if(aProj.length>0)\r
+ {\r
+ var sLangId=aProj[0].sLangId;\r
+ for(var i=0;i<aProj.length;i++)\r
+ {\r
+ if(aProj[i].sIdx!=null&&aProj[i].sIdx!=""&&aProj[i].sLangId==sLangId)\r
+ {\r
+ addProjInfo(aProj[i].sPPath,aProj[i].sDPath,aProj[i].sIdx);\r
+ }\r
+ }\r
+ }\r
+ writeDataIFrame();\r
+ enEvt();\r
+ } \r
+ }\r
+}\r
+\r
+function getIdxTopics(aDataCon,nIdxSet,nIIdx)\r
+{\r
+ var sTopics="";\r
+ if(nIdxSet<aDataCon.length&&aDataCon[nIdxSet].aKs.length>nIIdx)\r
+ {\r
+ if(aDataCon[nIdxSet].aKs[nIIdx].aTopics)\r
+ {\r
+ var nLen=aDataCon[nIdxSet].aKs[nIIdx].aTopics.length;\r
+ var nProj=aDataCon[nIdxSet].nProjId;\r
+ var sPath=gaData[nProj].sPPath;\r
+ for(var i=0;i<nLen;i++)\r
+ {\r
+ var sURL=aDataCon[nIdxSet].aKs[nIIdx].aTopics[i].sURL;\r
+ var sFullPath=_getFullPath(sPath,sURL);\r
+ sTopics+=",'"+excapeSingleQuot(_textToHtml(aDataCon[nIdxSet].aKs[nIIdx].aTopics[i].sName))+"','"+_textToHtml_nonbsp(sFullPath)+"'";\r
+ }\r
+ }\r
+ }\r
+ return sTopics; \r
+}\r
+\r
+function excapeSingleQuot(str)\r
+{\r
+ if(str==null) return null;\r
+ var sRes=str;\r
+ var re=new RegExp("'","g");\r
+ sRes=sRes.replace(re,"\\'");\r
+ return sRes;\r
+}\r
+\r
+function findCKInDom()\r
+{\r
+ if(gsCK!=null)\r
+ {\r
+ var sK=gsCK;\r
+ var oP=getElementsByTag(document,"P");\r
+ if(!oP) return false;\r
+ var len=oP.length;\r
+ var nB=0;\r
+ var nE=len-1;\r
+ var nM=0;\r
+ var sItem="";\r
+ var bF=false;\r
+ while(nB<nE){\r
+ nM=(nB+nE+1)>>1;\r
+ sItem=getInnerText(oP[nM]);\r
+ \r
+ if(compare(sItem,sK)==0)\r
+ {\r
+ bF=true;\r
+ break;\r
+ }\r
+ else if(compare(sItem,sK)>0)\r
+ nE=nM-1;\r
+ else if(compare(sItem,sK)<0)\r
+ nB=nM;\r
+ }\r
+ if(!bF)\r
+ {\r
+ if(nB==nE) nM=nB;\r
+ \r
+ if(nM+1<len)\r
+ {\r
+ sItem=getInnerText(oP[nM+1]);\r
+ if(compare(sItem,sK)<=0) nM++;\r
+ } \r
+ if(nM+1<len)\r
+ {\r
+ sItem=getInnerText(oP[nM+1]);\r
+ if(compare(sItem.substring(0,sK.length),sK)==0) nM++;\r
+ } \r
+ }\r
+ \r
+ var oMatch=oP[nM];\r
+ if(oMatch)\r
+ {\r
+ window.scrollTo(0,oMatch.offsetTop);\r
+ var tempColl=getElementsByTag(oMatch,"A");\r
+ if(tempColl&&tempColl.length>0){\r
+ var nbTag=getElementsByTag(oMatch,"NOBR");\r
+ if(nbTag&&nbTag.length>0)\r
+ HighLightElement(nbTag[0], gsIdxActiveBgColor, "transparent");\r
+ if (gbCR)\r
+ {\r
+ if (gbIE4)\r
+ tempColl(0).click();\r
+ else\r
+ {\r
+ var strCommand = tempColl[0].getAttribute("onClick");\r
+ var nstrCommand = strCommand.indexOf(";");\r
+ strCommand = strCommand.substring(0, nstrCommand);\r
+ strCommand = strCommand.replace("event", "_event");\r
+ window._event.pageX = oMatch.offsetLeft ;\r
+ window._event.pageY = oMatch.offsetTop + 20;\r
+ window.setTimeout(strCommand, 100);\r
+ }\r
+ }\r
+ }\r
+ }\r
+ gsCK=gsBCK;\r
+ gbCR=gbBCR;\r
+ if(gsBCK!=null)\r
+ {\r
+ gsBCK=null;\r
+ gbBCR=false;\r
+ findCK();\r
+ return false;\r
+ }\r
+ \r
+ }\r
+ return true;\r
+}\r
+\r
+function clearHighLight()\r
+{\r
+ resetHighLight(gsBgColor);\r
+}\r
+\r
+function IndexWriteClassStyle()\r
+{\r
+ var sStyle="";\r
+ sStyle+="<STYLE TYPE='text/css'>";\r
+ if (gsBgImage)\r
+ sStyle+="body {border-top:"+gsBgColor+" 1px solid;}\n";\r
+ else\r
+ sStyle+="body {border-top:black 1px solid;}\n";\r
+ if(gbIE4&&gbMac&&!gbIE5)\r
+ {\r
+ var nMargin=parseInt(gsIdxMargin);\r
+ nMargin-=10;\r
+ sStyle+="P {"+getFontStyle(goIdxFont)+"margin-top:"+gsIdxMargin+";margin-bottom:"+gsIdxMargin+";}\n";\r
+ sStyle+="H6 {"+getFontStyle(goIdxFont)+"margin-top:"+gsIdxMargin+";margin-bottom:"+gsIdxMargin+";}\n";\r
+ sStyle+="H6.firstsub {"+getFontStyle(goIdxFont)+"margin-top:"+nMargin+"pt;margin-bottom:"+gsIdxMargin+";}\n";\r
+ }\r
+ else\r
+ {\r
+ sStyle+="P {"+getFontStyle(goIdxFont)+"margin-top:"+gsIdxMargin+";margin-bottom:"+gsIdxMargin+";}\n";\r
+ sStyle+="H6 {"+getFontStyle(goIdxFont)+"margin-top:"+gsIdxMargin+";margin-bottom:"+gsIdxMargin+";}\n";\r
+ }\r
+ sStyle+="DIV {margin-top:"+gsIdxMargin+";margin-bottom:"+gsIdxMargin+";}\n";\r
+ sStyle+="A:link {"+getFontStyle(goIdxFont)+"}\n";\r
+ sStyle+="A:visited {"+getFontStyle(goIdxFont)+"}\n";\r
+ sStyle+="A:active {background-color:"+gsIdxActiveBgColor+";}\n";\r
+ sStyle+="A:hover {"+getFontStyle(goIdxHoverFont)+"}\n";\r
+ sStyle+="</STYLE>"; \r
+ document.write(sStyle);\r
+ return;\r
+}\r
+\r
+function window_Unload()\r
+{\r
+ UnRegisterListener2(this,WH_MSG_PROJECTREADY);\r
+ UnRegisterListener2(this,WH_MSG_SEARCHINDEXKEY);\r
+}\r
+\r
+function onSendMessage(oMsg)\r
+{\r
+ if(oMsg)\r
+ {\r
+ var nMsgId=oMsg.nMessageId;\r
+ if(nMsgId==WH_MSG_SEARCHINDEXKEY)\r
+ {\r
+ if(oMsg.oParam && oMsg.oParam.sInput)\r
+ {\r
+ if(gsCK==null)\r
+ {\r
+ gsCK=oMsg.oParam.sInput;\r
+ gbCR = oMsg.oParam.bCR;\r
+ findCK();\r
+ }\r
+ else\r
+ {\r
+ gsBCK=oMsg.oParam.sInput;\r
+ gbBCR = oMsg.oParam.bCR;\r
+ }\r
+ }\r
+ }\r
+ else if(nMsgId==WH_MSG_PROJECTREADY)\r
+ {\r
+ loadIdx();\r
+ }\r
+ }\r
+ return true;\r
+}\r
+\r
+if(window.gbWhVer&&window.gbWhLang&&window.gbWhMsg&&window.gbWhUtil&&window.gbWhHost&&window.gbWhProxy)\r
+{\r
+ RegisterListener2(this,WH_MSG_PROJECTREADY);\r
+ RegisterListener2(this,WH_MSG_SEARCHINDEXKEY);\r
+ goIdxFont=new whFont("Verdana","8pt","#000000","normal","normal","none");\r
+ goIdxEmptyFont=new whFont("Verdana","8pt","#666666","normal","normal","none");\r
+ goIdxHoverFont=new whFont("Verdana","8pt","#007f00","normal","normal","underline");\r
+\r
+ window.onload=window_OnLoad;\r
+ window.onbeforeunload=window_BUnload;\r
+ window.onunload=window_Unload;\r
+ gbWhIHost=true;\r
+}\r
+else\r
+ document.location.reload();\r
+\r
--- /dev/null
+var garrSortChar=new Array();\r
+var gaFtsStop=new Array();\r
+var gaFtsStem=new Array();\r
+var gbWhLang=false;\r
+\r
+garrSortChar[0] = 0;\r
+garrSortChar[1] = 1;\r
+garrSortChar[2] = 2;\r
+garrSortChar[3] = 3;\r
+garrSortChar[4] = 4;\r
+garrSortChar[5] = 5;\r
+garrSortChar[6] = 6;\r
+garrSortChar[7] = 7;\r
+garrSortChar[8] = 8;\r
+garrSortChar[9] = 40;\r
+garrSortChar[10] = 41;\r
+garrSortChar[11] = 42;\r
+garrSortChar[12] = 43;\r
+garrSortChar[13] = 44;\r
+garrSortChar[14] = 9;\r
+garrSortChar[15] = 10;\r
+garrSortChar[16] = 11;\r
+garrSortChar[17] = 12;\r
+garrSortChar[18] = 13;\r
+garrSortChar[19] = 14;\r
+garrSortChar[20] = 15;\r
+garrSortChar[21] = 16;\r
+garrSortChar[22] = 17;\r
+garrSortChar[23] = 18;\r
+garrSortChar[24] = 19;\r
+garrSortChar[25] = 20;\r
+garrSortChar[26] = 21;\r
+garrSortChar[27] = 22;\r
+garrSortChar[28] = 23;\r
+garrSortChar[29] = 24;\r
+garrSortChar[30] = 25;\r
+garrSortChar[31] = 26;\r
+garrSortChar[32] = 38;\r
+garrSortChar[33] = 45;\r
+garrSortChar[34] = 46;\r
+garrSortChar[35] = 47;\r
+garrSortChar[36] = 48;\r
+garrSortChar[37] = 49;\r
+garrSortChar[38] = 50;\r
+garrSortChar[39] = 33;\r
+garrSortChar[40] = 51;\r
+garrSortChar[41] = 52;\r
+garrSortChar[42] = 53;\r
+garrSortChar[43] = 88;\r
+garrSortChar[44] = 54;\r
+garrSortChar[45] = 34;\r
+garrSortChar[46] = 55;\r
+garrSortChar[47] = 56;\r
+garrSortChar[48] = 115;\r
+garrSortChar[49] = 119;\r
+garrSortChar[50] = 121;\r
+garrSortChar[51] = 123;\r
+garrSortChar[52] = 125;\r
+garrSortChar[53] = 126;\r
+garrSortChar[54] = 127;\r
+garrSortChar[55] = 128;\r
+garrSortChar[56] = 129;\r
+garrSortChar[57] = 130;\r
+garrSortChar[58] = 57;\r
+garrSortChar[59] = 58;\r
+garrSortChar[60] = 89;\r
+garrSortChar[61] = 90;\r
+garrSortChar[62] = 91;\r
+garrSortChar[63] = 59;\r
+garrSortChar[64] = 60;\r
+garrSortChar[65] = 131;\r
+garrSortChar[66] = 148;\r
+garrSortChar[67] = 150;\r
+garrSortChar[68] = 154;\r
+garrSortChar[69] = 158;\r
+garrSortChar[70] = 168;\r
+garrSortChar[71] = 171;\r
+garrSortChar[72] = 173;\r
+garrSortChar[73] = 175;\r
+garrSortChar[74] = 185;\r
+garrSortChar[75] = 187;\r
+garrSortChar[76] = 189;\r
+garrSortChar[77] = 191;\r
+garrSortChar[78] = 193;\r
+garrSortChar[79] = 197;\r
+garrSortChar[80] = 214;\r
+garrSortChar[81] = 216;\r
+garrSortChar[82] = 218;\r
+garrSortChar[83] = 220;\r
+garrSortChar[84] = 225;\r
+garrSortChar[85] = 230;\r
+garrSortChar[86] = 240;\r
+garrSortChar[87] = 242;\r
+garrSortChar[88] = 244;\r
+garrSortChar[89] = 246;\r
+garrSortChar[90] = 252;\r
+garrSortChar[91] = 61;\r
+garrSortChar[92] = 62;\r
+garrSortChar[93] = 63;\r
+garrSortChar[94] = 64;\r
+garrSortChar[95] = 66;\r
+garrSortChar[96] = 67;\r
+garrSortChar[97] = 131;\r
+garrSortChar[98] = 148;\r
+garrSortChar[99] = 150;\r
+garrSortChar[100] = 154;\r
+garrSortChar[101] = 158;\r
+garrSortChar[102] = 168;\r
+garrSortChar[103] = 171;\r
+garrSortChar[104] = 173;\r
+garrSortChar[105] = 175;\r
+garrSortChar[106] = 185;\r
+garrSortChar[107] = 187;\r
+garrSortChar[108] = 189;\r
+garrSortChar[109] = 191;\r
+garrSortChar[110] = 193;\r
+garrSortChar[111] = 197;\r
+garrSortChar[112] = 214;\r
+garrSortChar[113] = 216;\r
+garrSortChar[114] = 218;\r
+garrSortChar[115] = 220;\r
+garrSortChar[116] = 225;\r
+garrSortChar[117] = 230;\r
+garrSortChar[118] = 240;\r
+garrSortChar[119] = 242;\r
+garrSortChar[120] = 244;\r
+garrSortChar[121] = 246;\r
+garrSortChar[122] = 252;\r
+garrSortChar[123] = 68;\r
+garrSortChar[124] = 69;\r
+garrSortChar[125] = 70;\r
+garrSortChar[126] = 71;\r
+garrSortChar[127] = 27;\r
+garrSortChar[128] = 114;\r
+garrSortChar[129] = 28;\r
+garrSortChar[130] = 82;\r
+garrSortChar[131] = 170;\r
+garrSortChar[132] = 85;\r
+garrSortChar[133] = 112;\r
+garrSortChar[134] = 109;\r
+garrSortChar[135] = 110;\r
+garrSortChar[136] = 65;\r
+garrSortChar[137] = 113;\r
+garrSortChar[138] = 223;\r
+garrSortChar[139] = 86;\r
+garrSortChar[140] = 213;\r
+garrSortChar[141] = 29;\r
+garrSortChar[142] = 255;\r
+garrSortChar[143] = 30;\r
+garrSortChar[144] = 31;\r
+garrSortChar[145] = 80;\r
+garrSortChar[146] = 81;\r
+garrSortChar[147] = 83;\r
+garrSortChar[148] = 84;\r
+garrSortChar[149] = 111;\r
+garrSortChar[150] = 36;\r
+garrSortChar[151] = 37;\r
+garrSortChar[152] = 79;\r
+garrSortChar[153] = 229;\r
+garrSortChar[154] = 222;\r
+garrSortChar[155] = 87;\r
+garrSortChar[156] = 212;\r
+garrSortChar[157] = 32;\r
+garrSortChar[158] = 254;\r
+garrSortChar[159] = 251;\r
+garrSortChar[160] = 39;\r
+garrSortChar[161] = 72;\r
+garrSortChar[162] = 97;\r
+garrSortChar[163] = 98;\r
+garrSortChar[164] = 99;\r
+garrSortChar[165] = 100;\r
+garrSortChar[166] = 73;\r
+garrSortChar[167] = 101;\r
+garrSortChar[168] = 74;\r
+garrSortChar[169] = 102;\r
+garrSortChar[170] = 133;\r
+garrSortChar[171] = 93;\r
+garrSortChar[172] = 103;\r
+garrSortChar[173] = 35;\r
+garrSortChar[174] = 104;\r
+garrSortChar[175] = 75;\r
+garrSortChar[176] = 105;\r
+garrSortChar[177] = 92;\r
+garrSortChar[178] = 122;\r
+garrSortChar[179] = 124;\r
+garrSortChar[180] = 76;\r
+garrSortChar[181] = 106;\r
+garrSortChar[182] = 107;\r
+garrSortChar[183] = 108;\r
+garrSortChar[184] = 77;\r
+garrSortChar[185] = 120;\r
+garrSortChar[186] = 199;\r
+garrSortChar[187] = 94;\r
+garrSortChar[188] = 116;\r
+garrSortChar[189] = 117;\r
+garrSortChar[190] = 118;\r
+garrSortChar[191] = 78;\r
+garrSortChar[192] = 131;\r
+garrSortChar[193] = 131;\r
+garrSortChar[194] = 131;\r
+garrSortChar[195] = 131;\r
+garrSortChar[196] = 131;\r
+garrSortChar[197] = 131;\r
+garrSortChar[198] = 131;\r
+garrSortChar[199] = 150;\r
+garrSortChar[200] = 158;\r
+garrSortChar[201] = 158;\r
+garrSortChar[202] = 158;\r
+garrSortChar[203] = 158;\r
+garrSortChar[204] = 175;\r
+garrSortChar[205] = 175;\r
+garrSortChar[206] = 175;\r
+garrSortChar[207] = 175;\r
+garrSortChar[208] = 154;\r
+garrSortChar[209] = 193;\r
+garrSortChar[210] = 197;\r
+garrSortChar[211] = 197;\r
+garrSortChar[212] = 197;\r
+garrSortChar[213] = 197;\r
+garrSortChar[214] = 197;\r
+garrSortChar[215] = 95;\r
+garrSortChar[216] = 197;\r
+garrSortChar[217] = 230;\r
+garrSortChar[218] = 230;\r
+garrSortChar[219] = 230;\r
+garrSortChar[220] = 230;\r
+garrSortChar[221] = 246;\r
+garrSortChar[222] = 227;\r
+garrSortChar[223] = 224;\r
+garrSortChar[224] = 131;\r
+garrSortChar[225] = 131;\r
+garrSortChar[226] = 131;\r
+garrSortChar[227] = 131;\r
+garrSortChar[228] = 131;\r
+garrSortChar[229] = 131;\r
+garrSortChar[230] = 131;\r
+garrSortChar[231] = 150;\r
+garrSortChar[232] = 158;\r
+garrSortChar[233] = 158;\r
+garrSortChar[234] = 158;\r
+garrSortChar[235] = 158;\r
+garrSortChar[236] = 175;\r
+garrSortChar[237] = 175;\r
+garrSortChar[238] = 175;\r
+garrSortChar[239] = 175;\r
+garrSortChar[240] = 154;\r
+garrSortChar[241] = 193;\r
+garrSortChar[242] = 197;\r
+garrSortChar[243] = 197;\r
+garrSortChar[244] = 197;\r
+garrSortChar[245] = 197;\r
+garrSortChar[246] = 197;\r
+garrSortChar[247] = 96;\r
+garrSortChar[248] = 197;\r
+garrSortChar[249] = 230;\r
+garrSortChar[250] = 230;\r
+garrSortChar[251] = 230;\r
+garrSortChar[252] = 230;\r
+garrSortChar[253] = 246;\r
+garrSortChar[254] = 227;\r
+garrSortChar[255] = 250;\r
+\r
+gaFtsStop[0] = "a";\r
+gaFtsStop[1] = "about";\r
+gaFtsStop[2] = "after";\r
+gaFtsStop[3] = "against";\r
+gaFtsStop[4] = "all";\r
+gaFtsStop[5] = "also";\r
+gaFtsStop[6] = "among";\r
+gaFtsStop[7] = "an";\r
+gaFtsStop[8] = "and";\r
+gaFtsStop[9] = "are";\r
+gaFtsStop[10] = "as";\r
+gaFtsStop[11] = "at";\r
+gaFtsStop[12] = "be";\r
+gaFtsStop[13] = "became";\r
+gaFtsStop[14] = "because";\r
+gaFtsStop[15] = "been";\r
+gaFtsStop[16] = "between";\r
+gaFtsStop[17] = "but";\r
+gaFtsStop[18] = "by";\r
+gaFtsStop[19] = "can";\r
+gaFtsStop[20] = "come";\r
+gaFtsStop[21] = "do";\r
+gaFtsStop[22] = "during";\r
+gaFtsStop[23] = "each";\r
+gaFtsStop[24] = "early";\r
+gaFtsStop[25] = "for";\r
+gaFtsStop[26] = "form";\r
+gaFtsStop[27] = "found";\r
+gaFtsStop[28] = "from";\r
+gaFtsStop[29] = "had";\r
+gaFtsStop[30] = "has";\r
+gaFtsStop[31] = "have";\r
+gaFtsStop[32] = "he";\r
+gaFtsStop[33] = "her";\r
+gaFtsStop[34] = "his";\r
+gaFtsStop[35] = "however";\r
+gaFtsStop[36] = "in";\r
+gaFtsStop[37] = "include";\r
+gaFtsStop[38] = "into";\r
+gaFtsStop[39] = "is";\r
+gaFtsStop[40] = "it";\r
+gaFtsStop[41] = "its";\r
+gaFtsStop[42] = "late";\r
+gaFtsStop[43] = "later";\r
+gaFtsStop[44] = "made";\r
+gaFtsStop[45] = "many";\r
+gaFtsStop[46] = "may";\r
+gaFtsStop[47] = "me";\r
+gaFtsStop[48] = "med";\r
+gaFtsStop[49] = "more";\r
+gaFtsStop[50] = "most";\r
+gaFtsStop[51] = "near";\r
+gaFtsStop[52] = "no";\r
+gaFtsStop[53] = "non";\r
+gaFtsStop[54] = "not";\r
+gaFtsStop[55] = "of";\r
+gaFtsStop[56] = "on";\r
+gaFtsStop[57] = "only";\r
+gaFtsStop[58] = "or";\r
+gaFtsStop[59] = "other";\r
+gaFtsStop[60] = "over";\r
+gaFtsStop[61] = "several";\r
+gaFtsStop[62] = "she";\r
+gaFtsStop[63] = "some";\r
+gaFtsStop[64] = "such";\r
+gaFtsStop[65] = "than";\r
+gaFtsStop[66] = "that";\r
+gaFtsStop[67] = "the";\r
+gaFtsStop[68] = "their";\r
+gaFtsStop[69] = "then";\r
+gaFtsStop[70] = "there";\r
+gaFtsStop[71] = "these";\r
+gaFtsStop[72] = "they";\r
+gaFtsStop[73] = "this";\r
+gaFtsStop[74] = "through";\r
+gaFtsStop[75] = "to";\r
+gaFtsStop[76] = "under";\r
+gaFtsStop[77] = "until";\r
+gaFtsStop[78] = "use";\r
+gaFtsStop[79] = "was";\r
+gaFtsStop[80] = "we";\r
+gaFtsStop[81] = "were";\r
+gaFtsStop[82] = "when";\r
+gaFtsStop[83] = "where";\r
+gaFtsStop[84] = "which";\r
+gaFtsStop[85] = "who";\r
+gaFtsStop[86] = "with";\r
+gaFtsStop[87] = "you";\r
+\r
+gaFtsStem[0] = "s";\r
+gaFtsStem[1] = "e";\r
+gaFtsStem[2] = "ed";\r
+gaFtsStem[3] = "es";\r
+gaFtsStem[4] = "er";\r
+gaFtsStem[5] = "ly";\r
+gaFtsStem[6] = "ing";\r
+gaFtsStem[7] = "ingly";\r
+\r
+\r
+// as javascript 1.3 support unicode instead of ISO-Latin-1\r
+// need to transfer come code back to ISO-Latin-1 for compare purpose\r
+// Note: Different Language(Code page) maybe need different array:\r
+var gaUToC=new Array();\r
+gaUToC[8364]=128;\r
+gaUToC[8218]=130;\r
+gaUToC[402]=131;\r
+gaUToC[8222]=132;\r
+gaUToC[8230]=133;\r
+gaUToC[8224]=134;\r
+gaUToC[8225]=135;\r
+gaUToC[710]=136;\r
+gaUToC[8240]=137;\r
+gaUToC[352]=138;\r
+gaUToC[8249]=139;\r
+gaUToC[338]=140;\r
+gaUToC[381]=142;\r
+gaUToC[8216]=145;\r
+gaUToC[8217]=146;\r
+gaUToC[8220]=147;\r
+gaUToC[8221]=148;\r
+gaUToC[8226]=149;\r
+gaUToC[8211]=150;\r
+gaUToC[8212]=151;\r
+gaUToC[732]=152;\r
+gaUToC[8482]=153;\r
+gaUToC[353]=154;\r
+gaUToC[8250]=155;\r
+gaUToC[339]=156;\r
+gaUToC[382]=158;\r
+gaUToC[376]=159;\r
+\r
+var gsBiggestChar="";\r
+function getBiggestChar()\r
+{\r
+ if(gsBiggestChar.length==0)\r
+ {\r
+ if(garrSortChar.length<256)\r
+ gsBiggestChar=String.fromCharCode(255);\r
+ else\r
+ {\r
+ var nBiggest=0;\r
+ var nBigChar=0;\r
+ for(var i=0;i<=255;i++)\r
+ {\r
+ if(garrSortChar[i]>nBiggest)\r
+ {\r
+ nBiggest=garrSortChar[i];\r
+ nBigChar=i;\r
+ }\r
+ }\r
+ gsBiggestChar=String.fromCharCode(nBigChar);\r
+ }\r
+\r
+ } \r
+ return gsBiggestChar;\r
+}\r
+\r
+function getCharCode(str,i)\r
+{\r
+ var code=str.charCodeAt(i)\r
+ if(code>256)\r
+ {\r
+ code=gaUToC[code];\r
+ }\r
+ return code;\r
+}\r
+\r
+function compare(strText1,strText2)\r
+{\r
+ if(garrSortChar.length<256)\r
+ {\r
+ var strt1=strText1.toLowerCase();\r
+ var strt2=strText2.toLowerCase();\r
+ if(strt1<strt2) return -1;\r
+ if(strt1>strt2) return 1;\r
+ return 0;\r
+ }\r
+ else\r
+ {\r
+ for(var i=0;i<strText1.length&&i<strText2.length;i++)\r
+ {\r
+ if(garrSortChar[getCharCode(strText1,i)]<garrSortChar[getCharCode(strText2,i)]) return -1;\r
+ if(garrSortChar[getCharCode(strText1,i)]>garrSortChar[getCharCode(strText2,i)]) return 1;\r
+ }\r
+ if(strText1.length<strText2.length) return -1;\r
+ if(strText1.length>strText2.length) return 1;\r
+ return 0;\r
+ }\r
+}\r
+gbWhLang=true;
\ No newline at end of file
--- /dev/null
+if (! window.gbIE4 && window.gbNav6 && !document.childNodes[0].insertAdjacentHTML){\r
+\r
+HTMLElement.prototype.insertAdjacentElement = function(where,parsedNode)\r
+{\r
+ switch (where){\r
+ case 'beforeBegin':\r
+ this.parentNode.insertBefore(parsedNode,this)\r
+ break;\r
+ case 'afterBegin':\r
+ this.insertBefore(parsedNode,this.firstChild);\r
+ break;\r
+ case 'beforeEnd':\r
+ this.appendChild(parsedNode);\r
+ break;\r
+ case 'afterEnd':\r
+ if (this.nextSibling){\r
+ this.parentNode.insertBefore\r
+(parsedNode,this.nextSibling);\r
+ } else {\r
+ this.parentNode.appendChild(parsedNode)\r
+ }\r
+ break;\r
+ }\r
+}\r
+\r
+HTMLElement.prototype.insertAdjacentHTML = function(where,htmlStr){\r
+\r
+ var r = this.ownerDocument.createRange();\r
+ r.setStartBefore(this);\r
+ var parsedHTML = r.createContextualFragment(htmlStr);\r
+ this.insertAdjacentElement(where,parsedHTML)\r
+}\r
+\r
+\r
+HTMLElement.prototype.insertAdjacentText = function(where,txtStr){\r
+\r
+ var parsedText = document.createTextNode(txtStr)\r
+ this.insertAdjacentElement(where,parsedText)\r
+}\r
+}\r
+\r
+function testScroll() {\r
+ // Initialize scrollbar cache if necessary\r
+ if (window._pageXOffset==null) {\r
+ window._pageXOffset = window.pageXOffset\r
+ window._pageYOffset = window.pageYOffset\r
+ }\r
+ // Expose Internet Explorer compatible object model\r
+ document.body.scrollTop = window.pageYOffset\r
+ document.body.scrollLeft = window.pageXOffset\r
+ window.document.body.scrollHeight = document.height\r
+ window.document.body.scrollWidth = document.width\r
+ window.document.body.clientWidth = window.innerWidth;\r
+ window.document.body.clientHeight = window.innerHeight;\r
+\r
+ // If cache!=current values, call the onscroll event\r
+ if (((window.pageXOffset!=window._pageXOffset) || \r
+ (window.pageYOffset!=window._pageYOffset)) && (window.onscroll)) \r
+ window.onscroll()\r
+ // Cache new values\r
+ window._pageXOffset = window.pageXOffset\r
+ window._pageYOffset = window.pageYOffset\r
+ }\r
+\r
+// Create compatibility layer for Netscape\r
+if (window.gbNav6) {\r
+ setInterval("testScroll()",50)\r
+}
\ No newline at end of file
--- /dev/null
+var WH_MSG_RESIZEPANE =0x0100;\r
+var WH_MSG_SHOWPANE =0x0101;\r
+var WH_MSG_HIDEPANE =0x0102;\r
+var WH_MSG_SYNCTOC =0x0103;\r
+var WH_MSG_NEXT =0x0104;\r
+var WH_MSG_PREV =0x0105;\r
+var WH_MSG_ENABLEPREV =0x0106;\r
+var WH_MSG_ENABLESYNC =0x0107;\r
+var WH_MSG_ENABLEWEBSEARCH =0x0108;\r
+\r
+var WH_MSG_ISPANEVISIBLE =0x0109;\r
+var WH_MSG_PANESTATUE =0x010a;\r
+\r
+var WH_MSG_SYNCINFO =0x010b;\r
+var WH_MSG_PANEINFO =0x010c;\r
+var WH_MSG_WEBSEARCH =0x010d;\r
+\r
+var WH_MSG_SEARCHINDEXKEY =0x0201;\r
+\r
+var WH_MSG_SEARCHFTSKEY =0x020a;\r
+\r
+var WH_MSG_PROJECTREADY =0x0301;\r
+var WH_MSG_GETPROJINFO =0x0302;\r
+\r
+var WH_MSG_SHOWTOC =0x0401;\r
+var WH_MSG_SHOWIDX =0x0402;\r
+var WH_MSG_SHOWFTS =0x0403;\r
+var WH_MSG_SHOWGLO =0x0404;\r
+\r
+var WH_MSG_SHOWGLODEF =0x0500;\r
+\r
+var WH_MSG_GETTOCPATHS =0x0600;\r
+var WH_MSG_GETAVIAVENUES =0x0601;\r
+var WH_MSG_GETCURRENTAVENUE =0x0602;\r
+var WH_MSG_GETPANEINFO =0x0603;\r
+var WH_MSG_AVENUEINFO =0x0604;\r
+\r
+var WH_MSG_GETSTARTFRAME =0x0701;\r
+var WH_MSG_GETDEFAULTTOPIC =0x0702;\r
+\r
+var WH_MSG_SEARCHTHIS =0x0801;\r
+var WH_MSG_GETSEARCHS =0x0802;\r
+\r
+var WH_MSG_ISINFRAMESET =0x0900;\r
+\r
+var WH_MSG_TOOLBARORDER =0x0a00;\r
+var WH_MSG_MINIBARORDER =0x0a01;\r
+var WH_MSG_ISSYNCSSUPPORT =0x0a02;\r
+var WH_MSG_ISSEARCHSUPPORT =0x0a03;\r
+var WH_MSG_GETPANETYPE =0x0a04;\r
+var WH_MSG_BACKUPSEARCH =0x0a05;\r
+var WH_MSG_GETPANES =0x0a06;\r
+var WH_MSG_INITSEARCHSTRING =0x0a07;\r
+var WH_MSG_RELOADNS6 =0x0a08;\r
+var WH_MSG_ISAVENUESUPPORT =0x0a09;\r
+\r
+function whMessage(nMessageId,wSender,nVersion,oParam)\r
+{\r
+ this.nMessageId=nMessageId;\r
+ this.wSender=wSender;\r
+ this.nVersion=nVersion;\r
+ this.oParam=oParam;\r
+}\r
+var gbWhMsg=true;
\ No newline at end of file
--- /dev/null
+<html>\r
+<head>\r
+<title>SALOME reference manual</title>\r
+<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
+<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">\r
+<meta name "description" content="WebHelp 2002">\r
+<script language="javascript1.2" src="whutils.js"></script>\r
+<script language="javascript1.2" src="whmsg.js"></script>\r
+<script language="javascript1.2" src="whstub.js"></script>\r
+<script language="javascript" src="whver.js"></script>\r
+<script language="javascript1.2" src="whstart.js"></script>\r
+</head>\r
+\r
+<frameset id="whPfset" cols="260,*"><noframes><p>Your browser does not support frames. We recommend that you update your browser to a version that supports frames.</p><p>To view the Help system without frames click on this<a href="whgdata/whnvp30.htm">hyperlink.</a></p></noframes><frame src="whgdata/whnvp30.htm" title="navigation pane" name="navigation pane" scrolling="no"><frame src="files/introduction.htm" title="topic pane" name="bsscright" scrolling="yes"></frameset>\r
+</html>
\ No newline at end of file
--- /dev/null
+var gaProj=new Array();\r
+var gnChecked=0;\r
+var gsProjName="";\r
+var gbReady=false;\r
+var goMan=null;\r
+var gbXML=false;\r
+var gsFirstPane="";\r
+var gServerEnabled=false;\r
+var gsPath="";\r
+var gbWhPHost=false;\r
+var goDiv = null;\r
+var gsHTML = "";\r
+\r
+if (navigator.currentNavPen)\r
+ gsFirstPane = navigator.currentNavPen;\r
+\r
+\r
+function delayLoad()\r
+{\r
+ if (goDiv&&gsHTML)\r
+ {\r
+ goDiv.innerHTML=gsHTML;\r
+ goDiv=null;\r
+ gsHTML="";\r
+ }\r
+}\r
+\r
+function whCom(sName,sComFile)\r
+{\r
+ this.msName=sName;\r
+ this.msDivId=sName+"Div";\r
+ this.msIFrameId=sName+"IFrame";\r
+ this.msComFile=sComFile;\r
+ this.mbloaded=false;\r
+ this.mbShow=false;\r
+ this.show=function(bShow)\r
+ {\r
+ if(this.mbShow!=bShow)\r
+ {\r
+ if(bShow&&!this.mbloaded)\r
+ {\r
+ this.load();\r
+ }\r
+\r
+ var oDiv=getElement(this.msDivId);\r
+ if(oDiv)\r
+ {\r
+ if(gbIE55||(gbIE5&&gbMac))\r
+ {\r
+ var oIframe=getElement(this.msIFrameId);\r
+ if(oIframe)\r
+ {\r
+ if(bShow)\r
+ {\r
+ oDiv.style.zIndex=3;\r
+ if(oIframe!=null)\r
+ {\r
+ oIframe.style.zIndex=3;\r
+ if (!gbIE55)\r
+ oIframe.style.visibility="visible";\r
+ }\r
+ }\r
+ else\r
+ {\r
+ oDiv.style.zIndex=2;\r
+ if(oIframe!=null)\r
+ {\r
+ oIframe.style.zIndex=2;\r
+ if (!gbIE55)\r
+ oIframe.style.visibility="hidden";\r
+ }\r
+ }\r
+ }\r
+ }\r
+ if (!gbIE55)\r
+ oDiv.style.visibility=(bShow==true)?'visible':'hidden';\r
+ this.mbShow=bShow;\r
+ }\r
+\r
+ }\r
+ }\r
+ this.load=function()\r
+ {\r
+ if(!this.mbloaded)\r
+ {\r
+ if(this.msComFile.length>0){\r
+ var strFile= _getFullPath(getPath(), this.msComFile);\r
+ var oDiv=getElement(this.msDivId);\r
+ if(oDiv){\r
+ if(gbIE4){\r
+ var nIFrameHeight=oDiv.style.pixelHeight;\r
+ var nIFrameWidth=oDiv.style.pixelWidth;\r
+ var sHTML="<IFRAME ID="+this.msIFrameId+" title=\"" + this.msName + "\" SRC=\""+strFile+"\" BORDER=0 FRAMEBORDER=no STYLE=\"width:";\r
+ if(gbMac){\r
+ sHTML+=nIFrameWidth+"px;height:"+nIFrameHeight+"px;\"></IFRAME>";\r
+ }else{\r
+ sHTML+="100%; height:100%;\"></IFRAME>";\r
+ }\r
+ oDiv.innerHTML=sHTML;\r
+ }else if(gbNav6){\r
+ gsHTML="<IFRAME ID="+this.msIFrameId+" title=\"" + this.msName + "\" SRC=\""+strFile+"\" BORDER=0 FRAMEBORDER=no STYLE=\"width:100%;border:0;height:";\r
+ gsHTML+="100%;\"></IFRAME>";\r
+ goDiv = oDiv;\r
+ setTimeout("delayLoad()", 100);\r
+ }\r
+ this.mbloaded=true;\r
+ }\r
+ }\r
+ }\r
+ }\r
+ this.unload=function()\r
+ {\r
+ var oDiv=getElement(this.msDivId);\r
+ if(oDiv)\r
+ oDiv.innerHTML="";\r
+ }\r
+ this.getDivHTML=function()\r
+ {\r
+ var sHTML="";\r
+ if(gbMac&&gbIE4)\r
+ sHTML+="<DIV ID="+this.msDivId+" ALIGN=left STYLE=\"position:absolute;z-index:1;left:0;top:0;width:100%;height:100%;margin:0;padding:0;border:0;\">";\r
+ else\r
+ if (gbIE5)\r
+ sHTML+="<DIV ID="+this.msDivId+" ALIGN=left STYLE=\"position:absolute;z-index:1;left:0;top:0;width:100%;height:100%;\">";\r
+ else\r
+ sHTML+="<DIV ID="+this.msDivId+" ALIGN=left STYLE=\"position:absolute;z-index:1;left:0;top:0;width:100%;height:100%;visibility:hidden\">";\r
+ sHTML+="</DIV>";\r
+ return sHTML;\r
+ }\r
+} \r
+\r
+function whComMan()\r
+{\r
+ this.sName="";\r
+ this.maCom=new Array();\r
+ this.addCom=function(sName,sComFile)\r
+ {\r
+ var owhCom=new whCom(sName,sComFile);\r
+ this.maCom[this.maCom.length]=owhCom;\r
+ }\r
+ this.init=function()\r
+ {\r
+ var sHTML="";\r
+ for(var i=0;i<this.maCom.length;i++)\r
+ {\r
+ sHTML+=this.maCom[i].getDivHTML();\r
+ }\r
+ document.body.insertAdjacentHTML("beforeEnd",sHTML);\r
+\r
+ }\r
+ this.showById=function(nId)\r
+ {\r
+ for(var s=0;s<this.maCom.length;s++)\r
+ {\r
+ if(s!==nId)\r
+ this.maCom[s].show(false);\r
+ }\r
+ this.maCom[nId].show(true);\r
+ }\r
+ this.show=function(sName)\r
+ {\r
+ navigator.currentNavPen = sName;\r
+ var bFound=false;\r
+ for(var i=0;i<this.maCom.length;i++)\r
+ {\r
+ if(sName==this.maCom[i].msName)\r
+ {\r
+ bFound=true;\r
+ break;\r
+ }\r
+ }\r
+ if(bFound)\r
+ {\r
+ this.showById(i);\r
+ this.sName=sName;\r
+ }\r
+ }\r
+ this.unload=function()\r
+ {\r
+ for(var i=0;i<this.maCom.length;i++)\r
+ {\r
+ this.maCom[i].unload();\r
+ } \r
+ }\r
+ this.getCurrent=function()\r
+ {\r
+ return this.sName;\r
+ }\r
+}\r
+\r
+function getPath()\r
+{\r
+ if(gsPath=="")\r
+ {\r
+ gsPath=location.href;\r
+ gsPath=_replaceSlash(gsPath);\r
+ var nPosFile=gsPath.lastIndexOf("/");\r
+ gsPath=gsPath.substring(0,nPosFile+1);\r
+ }\r
+ return gsPath;\r
+}\r
+\r
+goMan=new whComMan();\r
+function addPane(sName,sFileName)\r
+{\r
+ goMan.addCom(sName,sFileName); \r
+}\r
+\r
+function setShowPane(sName, bForce)\r
+{\r
+ if ((gsFirstPane == "") || bForce)\r
+ gsFirstPane=sName;\r
+}\r
+\r
+function window_OnLoad()\r
+{\r
+ if(gsProjName!="")\r
+ {\r
+ goMan.init();\r
+ if(gsFirstPane!="")\r
+ goMan.show(gsFirstPane);\r
+ else\r
+ goMan.showById(0);\r
+ loadData2(gsProjName);\r
+ }\r
+ else if (gServerEnabled)\r
+ {\r
+ goMan.init();\r
+ if(gsFirstPane!="")\r
+ goMan.show(gsFirstPane);\r
+ else\r
+ goMan.showById(0);\r
+ }\r
+}\r
+\r
+function setServerEnabled()\r
+{\r
+ gServerEnabled = true;\r
+}\r
+\r
+function loadData2(strFile)\r
+{\r
+ if(gbXML)\r
+ loadDataXML(strFile);\r
+ else\r
+ loadData(strFile);\r
+}\r
+\r
+function addProject(bPreferXML,sXMLName,sHTMLName)\r
+{\r
+ var bLoadXML=bPreferXML;\r
+ if(!gbIE4&&!gbNav6)\r
+ return;\r
+ if(gbIE4&&!gbIE5)\r
+ bLoadXML=false;\r
+ if (gbIE5&&!gbMac)\r
+ bLoadXML=true;\r
+ if(gbIE55||gbNav6)\r
+ bLoadXML=true;\r
+ if(bLoadXML)\r
+ addProjectXML(sXMLName);\r
+ else\r
+ addProjectHTML(sHTMLName);\r
+}\r
+\r
+function addProjectHTML(sName)\r
+{\r
+ gbXML=false;\r
+ gsProjName=sName;\r
+}\r
+\r
+function addProjectXML(sName)\r
+{\r
+ gbXML=true;\r
+ gsProjName=sName;\r
+}\r
+\r
+function window_MyBunload()\r
+{\r
+ goMan.unload();\r
+ window_BUnload();\r
+}\r
+\r
+function putDataXML(xmlDoc,sdocPath)\r
+{\r
+ if(xmlDoc!=null)\r
+ {\r
+ var projectNode=xmlDoc.getElementsByTagName("project")[0];\r
+ if(projectNode)\r
+ {\r
+ var aRProj=new Array();\r
+ aRProj[0]=new Object();\r
+ aRProj[0].sPPath=_getPath(sdocPath);\r
+ var sLangId=projectNode.getAttribute("langid");\r
+ if(sLangId)\r
+ {\r
+ aRProj[0].sLangId=sLangId;\r
+ }\r
+ var sDPath=projectNode.getAttribute("datapath");\r
+ if(sDPath)\r
+ {\r
+ if(sDPath.lastIndexOf("/")!=sDPath.length-1)\r
+ sDPath+="/";\r
+ aRProj[0].sDPath=sDPath;\r
+ }\r
+ else\r
+ aRProj[0].sDPath="";\r
+ aRProj[0].sToc=projectNode.getAttribute("toc");\r
+ aRProj[0].sIdx=projectNode.getAttribute("index");\r
+ aRProj[0].sFts=projectNode.getAttribute("fts");\r
+ aRProj[0].sGlo=projectNode.getAttribute("glossary");\r
+ var RmtProject=projectNode.getElementsByTagName("remote");\r
+ var nCount=1;\r
+ for (var i=0;i<RmtProject.length;i++)\r
+ {\r
+ var sURL=RmtProject[i].getAttribute("url");\r
+ if(sURL)\r
+ {\r
+ aRProj[nCount]=new Object();\r
+ aRProj[nCount++].sPPath=_getFullPath(aRProj[0].sPPath,sURL);\r
+ }\r
+ }\r
+ putProjectInfo(aRProj);\r
+ }\r
+ else\r
+ {\r
+ // on Netscape 6.0 under some situation the xml file cannot be loaded.\r
+ // so we use pure html instead.\r
+ setTimeout("redirectToList();",100);\r
+ }\r
+ }\r
+}\r
+\r
+function redirectToList()\r
+{\r
+ if(gbReDirectThis)\r
+ document.location=gsNavReDirect;\r
+ else\r
+ parent.document.location=gsNavReDirect;\r
+}\r
+\r
+function putProjectInfo(aRProj)\r
+{\r
+ if(gnChecked==0||isSamePath(gaProj[gnChecked].sPPath,aRProj[0].sPPath))\r
+ {\r
+ if(gnChecked!=0)\r
+ {\r
+ if(aRProj[0].sLangId!=gaProj[0].sLangId)\r
+ alert("The project: "+aRProj[0].sPPath+" is using a different language to the main project, which will cause the index and full text search functionality to be disabled for this remote project.");\r
+ }\r
+ gaProj[gnChecked]=aRProj[0];\r
+ for(var i=1;i<aRProj.length;i++)\r
+ {\r
+ var bFound=false;\r
+ for(var j=0;j<gaProj.length;j++)\r
+ {\r
+ if(isSamePath(gaProj[j].sPPath,aRProj[i].sPPath))\r
+ {\r
+ bFound=true;\r
+ break;\r
+ }\r
+ }\r
+ if(!bFound)\r
+ {\r
+ gaProj[gaProj.length]=aRProj[i];\r
+ }\r
+ }\r
+ gnChecked++;\r
+ checkRemoteProject();\r
+ }\r
+ else\r
+ alert("Could not load correctly, please click Refresh.");\r
+}\r
+\r
+function isSamePath(sPath1,sPath2)\r
+{\r
+ return (sPath1.toLowerCase()==sPath2.toLowerCase());\r
+}\r
+\r
+function checkRemoteProject()\r
+{\r
+ if(gaProj.length!=gnChecked)\r
+ {\r
+ setTimeout("cancelProj("+gnChecked+");",10000);\r
+ loadData2(gaProj[gnChecked].sPPath+gsProjName);\r
+ }\r
+ else{\r
+ var oMsg=new whMessage(WH_MSG_PROJECTREADY,this,1,null);\r
+ gbReady=true;\r
+ SendMessage(oMsg);\r
+ }\r
+}\r
+\r
+function cancelProj(i)\r
+{\r
+ if(i==gnChecked)\r
+ {\r
+ alert("Can't load project::"+gaProj[i].sPPath);\r
+ gnChecked++;\r
+ checkRemoteProject();\r
+ } \r
+}\r
+\r
+function window_resize()\r
+{\r
+ for(var i=0;i<goMan.maCom.length;i++)\r
+ {\r
+ var oFrame=getElement(goMan.maCom[i].msIFrameId);\r
+ if(oFrame)\r
+ {\r
+ oFrame.style.height=document.body.clientHeight;\r
+ oFrame.style.width=document.body.clientWidth;\r
+ }\r
+ }\r
+ window_resize2();\r
+}\r
+\r
+function window_resize2()\r
+{\r
+ if(document.body)\r
+ {\r
+ if(document.body.clientWidth > 1 && document.body.clientHeight>1)\r
+ {\r
+ var oMsg = new whMessage(WH_MSG_RESIZEPANE, this, 1, null);\r
+ SendMessage(oMsg);\r
+ }\r
+ }\r
+}\r
+\r
+function window_unload()\r
+{\r
+ UnRegisterListener2(this,WH_MSG_GETPROJINFO);\r
+ UnRegisterListener2(this,WH_MSG_SHOWTOC);\r
+ UnRegisterListener2(this,WH_MSG_SHOWIDX);\r
+ UnRegisterListener2(this,WH_MSG_SHOWFTS);\r
+ UnRegisterListener2(this,WH_MSG_SHOWGLO);\r
+ UnRegisterListener2(this,WH_MSG_GETPANEINFO);\r
+}\r
+\r
+function onSendMessage(oMsg)\r
+{\r
+ if(oMsg)\r
+ {\r
+ var nMsgId=oMsg.nMessageId;\r
+ if(nMsgId==WH_MSG_GETPROJINFO)\r
+ {\r
+ if(gbReady)\r
+ {\r
+ var oProj=new Object();\r
+ oProj.aProj=gaProj;\r
+ oProj.bXML=gbXML;\r
+ oMsg.oParam=oProj;\r
+ }\r
+ else\r
+ return false;\r
+ }\r
+ else if(nMsgId==WH_MSG_SHOWTOC)\r
+ {\r
+ if(goMan)\r
+ goMan.show("toc");\r
+ var onMsg=new whMessage(WH_MSG_PANEINFO, this, 1, "toc");\r
+ SendMessage(onMsg);\r
+ onMsg = new whMessage(WH_MSG_SHOWPANE, this, 1, null);\r
+ SendMessage(onMsg);\r
+ }\r
+ else if(nMsgId==WH_MSG_SHOWIDX)\r
+ {\r
+ if(goMan)\r
+ goMan.show("idx");\r
+ var onMsg=new whMessage(WH_MSG_PANEINFO, this, 1, "idx");\r
+ SendMessage(onMsg);\r
+ onMsg = new whMessage(WH_MSG_SHOWPANE, this, 1, null);\r
+ SendMessage(onMsg);\r
+ }\r
+ else if(nMsgId==WH_MSG_SHOWFTS)\r
+ {\r
+ if(goMan)\r
+ goMan.show("fts");\r
+ var onMsg=new whMessage(WH_MSG_PANEINFO, this, 1, "fts");\r
+ SendMessage(onMsg);\r
+ onMsg = new whMessage(WH_MSG_SHOWPANE, this, 1, null);\r
+ SendMessage(onMsg);\r
+ }\r
+ else if(nMsgId==WH_MSG_SHOWGLO)\r
+ {\r
+ if(goMan)\r
+ goMan.show("glo");\r
+ var onMsg=new whMessage(WH_MSG_PANEINFO, this, 1, "glo");\r
+ SendMessage(onMsg);\r
+ onMsg = new whMessage(WH_MSG_SHOWPANE, this, 1, null);\r
+ SendMessage(onMsg);\r
+ }\r
+ else if(nMsgId==WH_MSG_GETPANEINFO)\r
+ {\r
+ oMsg.oParam=goMan.getCurrent();\r
+ return false;\r
+ }\r
+ }\r
+ return true;\r
+}\r
+\r
+if(window.gbWhUtil&&window.gbWhMsg&&window.gbWhVer&&window.gbWhProxy)\r
+{\r
+ RegisterListener2(this,WH_MSG_GETPROJINFO);\r
+ RegisterListener2(this,WH_MSG_SHOWTOC);\r
+ RegisterListener2(this,WH_MSG_SHOWIDX);\r
+ RegisterListener2(this,WH_MSG_SHOWFTS);\r
+ RegisterListener2(this,WH_MSG_SHOWGLO);\r
+ RegisterListener2(this,WH_MSG_GETPANEINFO);\r
+\r
+ if((gbMac&&gbIE4)||(gbSunOS&&gbIE5))\r
+ {\r
+ window.onresize=window_resize;\r
+ }\r
+ else if(gbIE4)\r
+ {\r
+ window.onresize=window_resize2;\r
+ }\r
+ window.onload=window_OnLoad;\r
+ window.onbeforeunload=window_MyBunload;\r
+ window.onunload=window_unload;\r
+ gbWhPHost=true;\r
+}\r
+else\r
+ document.location.reload();\r
+\r
--- /dev/null
+<html>\r
+<head>\r
+<title>project description</title>\r
+<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
+<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">\r
+<meta name "description" content="WebHelp 2002">\r
+</head>\r
+<body>\r
+<script language="javascript" src="whver.js"></script>\r
+<script language="javascript1.2" src="whutils.js"></script>\r
+<script language="javascript1.2" src="whproj.js"></script>\r
+<script language="javascript1.2">\r
+<!--\r
+ setLangId("1033");\r
+ setDataPath("whdata");\r
+ addToc("whtoc.htm");\r
+\r
+ addFts("whfts.htm");\r
+ addGlo("whglo.htm");\r
+\r
+//-->\r
+</script>\r
+</body>\r
+</html>
\ No newline at end of file
--- /dev/null
+var gaProj=new Array();\r
+\r
+gaProj[0]=new project("");\r
+\r
+function setLangId(sLangId)\r
+{\r
+ gaProj[0].sLangId=sLangId;\r
+}\r
+\r
+function setDataPath(sPath)\r
+{\r
+ if(sPath.length!=0)\r
+ {\r
+ if(sPath.lastIndexOf("/")!=sPath.length-1)\r
+ sPath+="/";\r
+ gaProj[0].sDPath=sPath; \r
+ }\r
+ else\r
+ gaProj[0].sDPath="";\r
+}\r
+\r
+function addToc(sFile)\r
+{\r
+ gaProj[0].sToc=sFile;\r
+}\r
+\r
+function addIdx(sFile)\r
+{\r
+ gaProj[0].sIdx=sFile;\r
+}\r
+\r
+function addFts(sFile)\r
+{\r
+ gaProj[0].sFts=sFile;\r
+}\r
+\r
+function addGlo(sFile)\r
+{\r
+ gaProj[0].sGlo=sFile;\r
+}\r
+\r
+function addRemoteProject(sProjRelPath)\r
+{\r
+ gaProj[gaProj.length]=new project(sProjRelPath);\r
+}\r
+\r
+function project(sPPath)\r
+{\r
+ this.sPPath=sPPath;\r
+ this.sLangId="";\r
+ this.sDPath="";\r
+ this.sToc="";\r
+ this.sIdx="";\r
+ this.sFts="";\r
+ this.sGlo="";\r
+}\r
+\r
+window.onload=window_OnLoad;\r
+\r
+function window_OnLoad()\r
+{\r
+ gsName=document.location.href;\r
+ gsName=_replaceSlash(gsName);\r
+ var nPos=gsName.lastIndexOf("/");\r
+ if(nPos!=-1)\r
+ gaProj[0].sPPath=gsName.substring(0,nPos+1);\r
+ else\r
+ alert("Error in Loading navigation component. Please regenerate WebHelp.");\r
+ patchPath(gaProj);\r
+ if(parent&&parent!=this&& typeof(parent.putProjectInfo)=="function")\r
+ {\r
+ parent.putProjectInfo(gaProj);\r
+ }\r
+}\r
+\r
+function patchPath(aProj)\r
+{\r
+ for(var i=1;i<aProj.length;i++)\r
+ {\r
+ aProj[i].sPPath=_getFullPath(gaProj[0].sPPath,aProj[i].sPPath);\r
+ }\r
+}
\ No newline at end of file
--- /dev/null
+<?xml version='1.0' encoding='ISO-8859-1' ?>\r
+<project langid="1033" datapath="whdata" toc="whtoc.xml" fts="whfts.xml" glossary="whglo.xml" >\r
+</project>\r
--- /dev/null
+var gbInited=false;\r
+var gWndStubPage=null;\r
+function getStubPage()\r
+{\r
+ if(!gbInited)\r
+ {\r
+ gWndStubPage=getStubPage_inter(window);\r
+ gbInited=true;\r
+ }\r
+ return gWndStubPage;\r
+}\r
+\r
+function getStubPage_inter(wCurrent)\r
+{\r
+ if(null==wCurrent.parent||wCurrent.parent==wCurrent)\r
+ return null;\r
+\r
+ if(typeof(wCurrent.parent.whname)=="string"&&"wh_stub"==wCurrent.parent.whname)\r
+ return wCurrent.parent;\r
+ else\r
+ if(wCurrent.parent.frames.length!=0&&wCurrent.parent!=wCurrent)\r
+ return getStubPage_inter(wCurrent.parent);\r
+ else\r
+ return null;\r
+}\r
+\r
+function RegisterListener(framename,nMessageId)\r
+{\r
+ var wSP=getStubPage();\r
+ if(wSP&&wSP!=this)\r
+ return wSP.RegisterListener(framename,nMessageId);\r
+ else\r
+ return false;\r
+}\r
+\r
+function RegisterListener2(oframe,nMessageId)\r
+{\r
+ var wSP=getStubPage();\r
+ if(wSP&&wSP!=this)\r
+ return wSP.RegisterListener2(oframe,nMessageId);\r
+ else\r
+ return false;\r
+}\r
+\r
+function UnRegisterListener2(oframe,nMessageId)\r
+{\r
+ var wSP=getStubPage();\r
+ if(wSP&&wSP!=this&&wSP.UnRegisterListener2)\r
+ return wSP.UnRegisterListener2(oframe,nMessageId);\r
+ else\r
+ return false;\r
+}\r
+\r
+function SendMessage(oMessage)\r
+{\r
+ var wSP=getStubPage();\r
+ if(wSP&&wSP!=this&&wSP.SendMessage)\r
+ return wSP.SendMessage(oMessage);\r
+ else\r
+ return false;\r
+}\r
+\r
+var gbWhProxy=true;
\ No newline at end of file
--- /dev/null
+<?xml version='1.0' encoding='ISO-8859-1' ?>\r
+<resource>\r
+<item name="Prev" value="<<" />\r
+<item name="Hide" value="Hide" />\r
+<item name="SyncTocTooltip" value="Sync TOC" />\r
+<item name="InTopicSearchBtnText" value="Go" />\r
+<item name="FtsInputPrompt" value="Type in the word(s) to search for:" />\r
+<item name="Done" value="Done" />\r
+<item name="JS_alert_cantLoadProject" value="Can't load project:" />\r
+<item name="Next" value=">>" />\r
+<item name="SyncToc" value="SyncToc" />\r
+<item name="ToolBarSearchBtnText" value="Go" />\r
+<item name="SuggestViewNoFrameMessage" value="To view the Help system without frames click on this" />\r
+<item name="Hide_Navigation_Component" value="Hide Navigation Component" />\r
+<item name="FtsBtnText" value="Go" />\r
+<item name="TopicsFound" value="Topics Found" />\r
+<item name="LoadingContentsData" value="Loading, click here to cancel..." />\r
+<item name="Definition" value="Definition:" />\r
+<item name="CompletingContents" value="Completing Contents..." />\r
+<item name="Seperate" value="|" />\r
+<item name="Contents" value="Contents" />\r
+<item name="Disabled Prev" value="<<" />\r
+<item name="Glossary" value="Glossary" />\r
+<item name="Search" value="Search" />\r
+<item name="CantSearch" value="Cannot search for that phrase." />\r
+<item name="LoadingIndex" value="Loading Index..." />\r
+<item name="LoadingData" value="Loading data, please wait..." />\r
+<item name="Show_Navigation_Component" value="Show Navigation Component" />\r
+<item name="Book" value="Book" />\r
+<item name="Disabled Next" value=">>" />\r
+<item name="Find" value="Find" />\r
+<item name="CantOpenURLorFile" value="Can't open URL or file" />\r
+<item name="Blank_topic_text" value="This topic was created by WinHelp Project Conversion Wizard, and is the destination of a missing topic or broken hyperlink." />\r
+<item name="BrowserLimitedMessage" value="Your browser does not support frames. We recommend that you update your browser to a version that supports frames." />\r
+<item name="LoadingTOCItem" value="Loading Table of Contents:" />\r
+<item name="Display" value="Display" />\r
+<item name="Cancel" value="Cancel" />\r
+<item name="SearchLabel" value="Search" />\r
+<item name="RelateTopicListPrompt" value="Click a topic, then click Display." />\r
+<item name="NextTooltip" value="Next Topic" />\r
+<item name="JS_alert_colorlimitation" value="WebHelp has detected that your display is set to 16 colors. For full WebHelp support, please set your display to use 256 or more colors." />\r
+<item name="TopicsNotFound" value="No Topics Found." />\r
+<item name="Show" value="Show" />\r
+<item name="PreTooltip" value="Previous Topic" />\r
+<item name="SearchPrompt" value="- Search -" />\r
+<item name="IndexBtnText" value="Go" />\r
+<item name="JS_alert_ProjectLoadingFail" value="Could not load correctly, please click Refresh." />\r
+<item name="LoadingContents" value="Loading contents, please wait..." />\r
+<item name="Term" value="Term:" />\r
+<item name="WebSearchButton" value="WebSearch" />\r
+<item name="Remote_Page" value="Remote Page" />\r
+<item name="WebSearch" value="WebSearch" />\r
+<item name="LoadingFTS" value="Reading Search Data..." />\r
+<item name="Index" value="Index" />\r
+<item name="JS_alert_ErrorInLoading" value="Error in Loading navigation component. Please regenerate WebHelp." />\r
+<item name="JS_alert_appletNotLoad" value="Unable to load applet. If you are using an old version of Netscape, the prefs.js file needs to be edited." />\r
+<item name="IndexInputPrompt" value="Type in the keyword to find:" />\r
+<item name="Page" value="Page" />\r
+<item name="SuggestViewNoFrameMsg2" value="hyperlink." />\r
+<item name="Searching" value="Searching..." />\r
+\r
+ <item name="English" value="" />\r
+ <item name="langorder" value="0,1,2,3,4,5,6,7,8,40,41,42,43,44,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,38,45,46,47,48,49,50,33,51,52,53,88,54,34,55,56,115,119,121,123,125,126,127,128,129,130,57,58,89,90,91,59,60,131,148,150,154,158,168,171,173,175,185,187,189,191,193,197,214,216,218,220,225,230,240,242,244,246,252,61,62,63,64,66,67,131,148,150,154,158,168,171,173,175,185,187,189,191,193,197,214,216,218,220,225,230,240,242,244,246,252,68,69,70,71,27,114,28,82,170,85,112,109,110,65,113,223,86,213,29,255,30,31,80,81,83,84,111,36,37,79,229,222,87,212,32,254,251,39,72,97,98,99,100,73,101,74,102,133,93,103,35,104,75,105,92,122,124,76,106,107,108,77,120,199,94,116,117,118,78,131,131,131,131,131,131,131,150,158,158,158,158,175,175,175,175,154,193,197,197,197,197,197,95,197,230,230,230,230,246,227,224,131,131,131,131,131,131,131,150,158,158,158,158,175,175,175,175,154,193,197,197,197,197,197,96,197,230,230,230,230,246,227,250," />\r
+\r
+ <panes show="0">\r
+ <toc />\r
+ <fts />\r
+ <glossary />\r
+ </panes>\r
+\r
+ <stopwords>\r
+ <word name="a" />\r
+ <word name="about" />\r
+ <word name="after" />\r
+ <word name="against" />\r
+ <word name="all" />\r
+ <word name="also" />\r
+ <word name="among" />\r
+ <word name="an" />\r
+ <word name="and" />\r
+ <word name="are" />\r
+ <word name="as" />\r
+ <word name="at" />\r
+ <word name="be" />\r
+ <word name="became" />\r
+ <word name="because" />\r
+ <word name="been" />\r
+ <word name="between" />\r
+ <word name="but" />\r
+ <word name="by" />\r
+ <word name="can" />\r
+ <word name="come" />\r
+ <word name="do" />\r
+ <word name="during" />\r
+ <word name="each" />\r
+ <word name="early" />\r
+ <word name="for" />\r
+ <word name="form" />\r
+ <word name="found" />\r
+ <word name="from" />\r
+ <word name="had" />\r
+ <word name="has" />\r
+ <word name="have" />\r
+ <word name="he" />\r
+ <word name="her" />\r
+ <word name="his" />\r
+ <word name="however" />\r
+ <word name="in" />\r
+ <word name="include" />\r
+ <word name="into" />\r
+ <word name="is" />\r
+ <word name="it" />\r
+ <word name="its" />\r
+ <word name="late" />\r
+ <word name="later" />\r
+ <word name="made" />\r
+ <word name="many" />\r
+ <word name="may" />\r
+ <word name="me" />\r
+ <word name="med" />\r
+ <word name="more" />\r
+ <word name="most" />\r
+ <word name="near" />\r
+ <word name="no" />\r
+ <word name="non" />\r
+ <word name="not" />\r
+ <word name="of" />\r
+ <word name="on" />\r
+ <word name="only" />\r
+ <word name="or" />\r
+ <word name="other" />\r
+ <word name="over" />\r
+ <word name="several" />\r
+ <word name="she" />\r
+ <word name="some" />\r
+ <word name="such" />\r
+ <word name="than" />\r
+ <word name="that" />\r
+ <word name="the" />\r
+ <word name="their" />\r
+ <word name="then" />\r
+ <word name="there" />\r
+ <word name="these" />\r
+ <word name="they" />\r
+ <word name="this" />\r
+ <word name="through" />\r
+ <word name="to" />\r
+ <word name="under" />\r
+ <word name="until" />\r
+ <word name="use" />\r
+ <word name="was" />\r
+ <word name="we" />\r
+ <word name="were" />\r
+ <word name="when" />\r
+ <word name="where" />\r
+ <word name="which" />\r
+ <word name="who" />\r
+ <word name="with" />\r
+ <word name="you" />\r
+ </stopwords>\r
+\r
+ <stems>\r
+ <stem name="s" />\r
+ <stem name="e" />\r
+ <stem name="ed" />\r
+ <stem name="es" />\r
+ <stem name="er" />\r
+ <stem name="ly" />\r
+ <stem name="ing" />\r
+ <stem name="ingly" />\r
+ </stems>\r
+\r
+ <paneskin>\r
+ <background color="#ffffff" img="" />\r
+ <font name="Tahoma" size="8pt" color="#000080" style="Normal" weight="Normal" decoration="none" />\r
+ <toc>\r
+ <background color="#ffffff" img="" />\r
+ <icons>\r
+ <book open="wht_toc2.gif" close="wht_toc1.gif" />\r
+ <item local="wht_toc3.gif" remote="wht_toc4.gif" />\r
+ <newbook open="" close="" />\r
+ <newitem local="" remote="" />\r
+ </icons>\r
+ <fonts>\r
+ <normal name="Tahoma" size="8pt" color="#000000" style="Normal" weight="Normal" decoration="none" />\r
+ <hover name="Tahoma" size="8pt" color="#000080" style="Normal" weight="Normal" decoration="underline" />\r
+ </fonts>\r
+ <activebackgroundcolor attr="#c0c0c0" />\r
+ <margin attr="" />\r
+ <indent attr="" />\r
+ </toc>\r
+ <index>\r
+ <form>\r
+ <fonts>\r
+ <title name="Tahoma" size="8pt" color="#000080" style="Normal" weight="Normal" decoration="none" />\r
+ </fonts>\r
+ <button normal="" hover="" />\r
+ <editwith value="20" />\r
+ </form>\r
+ <background color="#ffffff" img="" />\r
+ <fonts>\r
+ <normal name="Tahoma" size="8pt" color="#000000" style="Normal" weight="Normal" decoration="none" />\r
+ <hover name="Tahoma" size="8pt" color="#000080" style="Normal" weight="Normal" decoration="underline" />\r
+ <empty name="" size="8pt" color="" style="" weight="" decoration="" />\r
+ </fonts>\r
+ <activebackgroundcolor attr="#c0c0c0" />\r
+ <margin attr="" />\r
+ <indent attr="" />\r
+ </index>\r
+ <fts>\r
+ <form>\r
+ <fonts>\r
+ <title name="Tahoma" size="8pt" color="#000080" style="Normal" weight="Normal" decoration="none" />\r
+ </fonts>\r
+ <button normal="" hover="" />\r
+ <editwith value="20" />\r
+ </form>\r
+ <background color="#ffffff" img="" />\r
+ <fonts>\r
+ <normal name="Tahoma" size="8pt" color="#000000" style="Normal" weight="Normal" decoration="none" />\r
+ <hover name="Tahoma" size="8pt" color="#000080" style="Normal" weight="Normal" decoration="underline" />\r
+ <error name="Tahoma" size="8pt" color="#000000" style="Normal" weight="Normal" decoration="none" />\r
+ </fonts>\r
+ <activebackgroundcolor attr="#c0c0c0" />\r
+ <margin attr="" />\r
+ <indent attr="" />\r
+ </fts>\r
+ <glossary>\r
+ <background color="#ffffff" img="" />\r
+ <fonts>\r
+ <normal name="Tahoma" size="8pt" color="#000000" style="Normal" weight="Normal" decoration="none" />\r
+ <hover name="Tahoma" size="8pt" color="#000080" style="Normal" weight="Normal" decoration="underline" />\r
+ </fonts>\r
+ <activebackgroundcolor attr="#c0c0c0" />\r
+ <margin attr="" />\r
+ <indent attr="" />\r
+ </glossary>\r
+ </paneskin>\r
+</resource>
\ No newline at end of file
--- /dev/null
+<html>\r
+<head>\r
+<title>About WebHelp </title>\r
+<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
+<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">\r
+<meta name "description" content="WebHelp 2002">\r
+</head>\r
+<style type="text/css">\r
+<!--\r
+P {margin-left:10pt;font-size:8pt;font-family:Verdana,sans-serif;}\r
+//-->\r
+</style>\r
+<script>\r
+<!--\r
+// this block fix: HTML Dialog Ignores Size Parameters Without SCRIPT Block\r
+//-->\r
+</script> \r
+<body bgcolor="white" scroll=no RIGHTMARGIN=0 BOTTOMMARGIN=0 TOPMARGIN=0 LEFTMARGIN=0>\r
+<table border="0" cellpadding="0" cellspacing="0" width="350">\r
+ <tr>\r
+ <td><img src="wht_spac.gif" width="99" height="1" border="0"></td>\r
+ <td><img src="wht_spac.gif" width="251" height="1" border="0"></td>\r
+ <td><img src="wht_spac.gif" width="1" height="1" border="0"></td>\r
+ </tr>\r
+ <tr>\r
+ <td rowspan="2"><img src="wht_abgw.jpg" width="99" height="190" border="0"></td>\r
+ <td><img src="wht_abtw.jpg" width="211" height="86" border="0"></td>\r
+ <td><img src="wht_spac.gif" width="1" height="86" border="0"></td>\r
+ </tr>\r
+ <tr>\r
+ <td valign="top">\r
+ <p>Author: eHelp Corporation</p>\r
+ <p>Powered by: WebHelp 5.00\r
+ <br>Generated by: RoboHelp 2002</p>\r
+ <p><a class="tail" href="http://www.ehelp.com/webhelp1" target="_blank">www.ehelp.com</a></p>\r
+ </td>\r
+ <td><img src="wht_spac.gif" width="1" height="104" border="0"></td>\r
+ </tr>\r
+</table>\r
+</body>\r
+</html>
\ No newline at end of file
--- /dev/null
+<html>\r
+<head>\r
+<title>Blank Page</title>\r
+<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
+<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">\r
+<meta name "description" content="WebHelp 2002">\r
+</head>\r
+<body>\r
+</body>\r
+</html>\r
--- /dev/null
+\r
+<html>\r
+<head>\r
+</head>\r
+<script type="text/javascript" language="javascript" src="whver.js"></script>\r
+<script type="text/javascript" language="javascript" src="whutils.js"></script>\r
+<script type="text/javascript" language="javascript" src="whmsg.js"></script>\r
+<script type="text/javascript" language="javascript" >\r
+<!--\r
+if (!window.gbWhVer||!window.gbWhUtil||!window.gbWhMsg)\r
+ document.location.reload();\r
+//-->\r
+</script>\r
+\r
+<script type="text/javascript" language="javascript" src="whproxy.js"></script>\r
+<script type="text/javascript" language="javascript">\r
+<!--\r
+if (!window.gbWhProxy)\r
+ document.location.reload();\r
+//-->\r
+</script>\r
+\r
+\r
+<script language="javascript">\r
+<!--\r
+var gsPane="";\r
+var gnType=3;\r
+\r
+var oMsgPane = new whMessage(WH_MSG_GETPANETYPE, this, 1, null);\r
+if (SendMessage(oMsgPane))\r
+{\r
+ gsPane = oMsgPane.oParam.sPaneURL;\r
+ gnType = oMsgPane.oParam.nType;\r
+}\r
+\r
+ var strDefaultTopic = "about:blank";\r
+ var oParam = new Object();\r
+ oParam.sTopic = "";\r
+ var oMsg = new whMessage(WH_MSG_GETDEFAULTTOPIC, this, 1, oParam);\r
+ if (SendMessage(oMsg) && oParam.sTopic != "")\r
+ strDefaultTopic = oParam.sTopic;\r
+var strHTML = "";\r
+if (gnType == 4)\r
+{\r
+ //no navipane at all\r
+ strHTML += "<frameset border=\"0\" cols=\"100%,*\">";\r
+ strHTML += "<frame src=\"" + strDefaultTopic + "\" name=\"bsscright\" framespacing=\"0\" frameborder=\"0\" border=\"0\" scrolling=\"auto\">";\r
+ strHTML += "<frame src=\"whskin_blank.htm\" noresize>";\r
+ strHTML += "</frameset>";\r
+}\r
+else\r
+ strHTML += "<frameset cols=\"220,*\" hostof=\"parent:minibar_navpane|topic!startpage:no\" frameborder=\"yes\" id=\"whPfset\"><frame src=\"whskin_frmset010.htm\" id=\"minibar_navpane\" frameborder=\"no\" border=\"0\" scrolling=\"auto\" marginheight=\"0\" marginwidth=\"0\"></frame><frame src=\""+strDefaultTopic+"\" id=\"topic\" frameborder=\"yes\" border=\"1\" scrolling=\"auto\" title=\"Topic\" name=\"bsscright\"></frame></frameset>";\r
+document.write(strHTML);\r
+// handle show pane, hide pane and query pane status message.\r
+RegisterListener2(this, WH_MSG_RESIZEPANE);\r
+RegisterListener2(this, WH_MSG_SHOWPANE);\r
+RegisterListener2(this, WH_MSG_HIDEPANE);\r
+RegisterListener2(this, WH_MSG_ISPANEVISIBLE);\r
+\r
+function window_unload()\r
+{\r
+ UnRegisterListener2(this, WH_MSG_RESIZEPANE);\r
+ UnRegisterListener2(this, WH_MSG_SHOWPANE);\r
+ UnRegisterListener2(this, WH_MSG_HIDEPANE);\r
+ UnRegisterListener2(this, WH_MSG_ISPANEVISIBLE);\r
+}\r
+\r
+window.onunload=window_unload;\r
+\r
+var gbShow=false;\r
+var gstrFrameLastSetting="";\r
+function onSendMessage(oMsg)\r
+{\r
+ var oMsgout = null;\r
+ var nMsgId = oMsg.nMessageId;\r
+ var oFrameset = null;\r
+ if (nMsgId == WH_MSG_SHOWPANE)\r
+ {\r
+ if (!gbShow)\r
+ {\r
+ oFrameset = getElement("whPfset");\r
+ if (oFrameset)\r
+ {\r
+ if (gstrFrameLastSetting)\r
+ oFrameset.cols= gstrFrameLastSetting;\r
+ else\r
+ oFrameset.cols= "220,*";\r
+ }\r
+ gbShow=true;\r
+ oMsgout = new whMessage(WH_MSG_PANESTATUE, this, 1, "visible");\r
+ SendMessage(oMsgout);\r
+ }\r
+ return false;\r
+ }\r
+ else if (nMsgId == WH_MSG_HIDEPANE)\r
+ {\r
+ oFrameset = getElement("whPfset");\r
+ if (oFrameset)\r
+ {\r
+ gstrFrameLastSetting=oFrameset.cols; \r
+ var oWnd=frames[0];\r
+ if (oWnd && oWnd.document && oWnd.document.body)\r
+ {\r
+ var nPos=0;\r
+ if ("cols"=="cols")\r
+ nPos=oWnd.document.body.offsetWidth;\r
+ else\r
+ nPos=oWnd.document.body.offsetHeight;\r
+ if(0==0)\r
+ gstrFrameLastSetting=nPos+",*";\r
+ else\r
+ gstrFrameLastSetting="*,"+nPos;\r
+ }\r
+ oFrameset.cols = "0,*";\r
+ }\r
+ gbShow=false;\r
+ oMsgout = new whMessage(WH_MSG_PANESTATUE, this, 1, "invisible");\r
+ SendMessage(oMsgout);\r
+ return false;\r
+ }\r
+ else if (nMsgId == WH_MSG_RESIZEPANE)\r
+ {\r
+ if (!gbShow)\r
+ {\r
+ gbShow=true;\r
+ oMsgout = new whMessage(WH_MSG_PANESTATUE, this, 1, "visible");\r
+ SendMessage(oMsgout);\r
+ }\r
+ return false;\r
+ }\r
+ else if (nMsgId == WH_MSG_ISPANEVISIBLE)\r
+ {\r
+ oMsg.oParam.bVisible = isNavPaneVisible();\r
+ return false;\r
+ }\r
+ return true;\r
+}\r
+\r
+function isNavPaneVisible()\r
+{\r
+ var bVisible = false;\r
+ var sSplit = getElement("whPfset").cols;\r
+ var nSplit = sSplit.indexOf(",");\r
+ if (nSplit != -1)\r
+ {\r
+ var sPart1 = sSplit.substring(0, nSplit);\r
+ var sPart2 = sSplit.substring(nSplit + 1);\r
+ if ("minibar_navpane" == "navpane")\r
+ {\r
+ var sTemp = sPart1;\r
+ sPart1 = sPart2;\r
+ sPart2 = sTemp;\r
+ }\r
+\r
+ if (sPart2 != "*")\r
+ {\r
+ var n = parseInt(sPart2);\r
+ if (n>0)\r
+ bVisible = true;\r
+ }\r
+ else\r
+ {\r
+ if (sPart1 != "100%")\r
+ bVisible = true;\r
+ }\r
+ }\r
+ return bVisible;\r
+}\r
+//-->\r
+</script>\r
+\r
+</html>
\ No newline at end of file
--- /dev/null
+\r
+<html>\r
+<head>\r
+</head>\r
+<script type="text/javascript" language="javascript" src="whver.js"></script>\r
+<script type="text/javascript" language="javascript" src="whutils.js"></script>\r
+<script type="text/javascript" language="javascript" src="whmsg.js"></script>\r
+<script type="text/javascript" language="javascript" >\r
+<!--\r
+if (!window.gbWhVer||!window.gbWhUtil||!window.gbWhMsg)\r
+ document.location.reload();\r
+//-->\r
+</script>\r
+\r
+<script type="text/javascript" language="javascript" src="whproxy.js"></script>\r
+<script type="text/javascript" language="javascript">\r
+<!--\r
+if (!window.gbWhProxy)\r
+ document.location.reload();\r
+//-->\r
+</script>\r
+\r
+\r
+<script language="javascript">\r
+<!--\r
+var gsPane="";\r
+var gnType=3;\r
+\r
+var oMsgPane = new whMessage(WH_MSG_GETPANETYPE, this, 1, null);\r
+if (SendMessage(oMsgPane))\r
+{\r
+ gsPane = oMsgPane.oParam.sPaneURL;\r
+ gnType = oMsgPane.oParam.nType;\r
+}\r
+var strHTML = "";\r
+if (gnType == 4)\r
+{\r
+ //no navipane at all\r
+ strHTML += "<frameset border=\"0\" cols=\"100%,*\">";\r
+ strHTML += "<frame src='whskin_mbars.htm' id='minibar' frameborder='no' border='0' scrolling='no' marginheight='0' title='Mini Toolbar'></frame>";\r
+ strHTML += "<frame src=\"whskin_blank.htm\" noresize>";\r
+ strHTML += "</frameset>";\r
+}\r
+else\r
+ strHTML += "<frameset rows=\"24,*\" hostof=\"parent:minibar|navpane!startpage:no\" frameborder=\"no\" border=\"0\"><frame src=\"whskin_mbars.htm\" id=\"minibar\" frameborder=\"no\" border=\"0\" scrolling=\"no\" marginheight=\"0\" title=\"Mini Toolbar\"></frame><frame src=\""+gsPane+"\" id=\"navpane\" frameborder=\"no\" border=\"0\" scrolling=\"no\" marginheight=\"0\" marginwidth=\"0\" title=\"Navigator Pane\"></frame></frameset>";\r
+\r
+document.write(strHTML);\r
+//-->\r
+</script>\r
+</html>
\ No newline at end of file
--- /dev/null
+<html>\r
+<head>\r
+<title>WebHelp 5.00 </title>\r
+<meta name="description" content="output from robohelp">\r
+<meta name="keywords" content="robohelp,webhelp,webhelp 2002,webhelp enterprise,webehelp enterprise 2002,roboinfo,roboinfo 2002">\r
+</head>\r
+<body>\r
+<h1> WebHelp 5.00 System Info </h1>\r
+<table>\r
+<tr><td> Start Page </td><td>kernel.html</td></tr>\r
+<tr><td> Skin Name </td><td>Default</td></tr>\r
+<tr><td> Generating Time </td><td>14:23 03/03/2004</td></tr>\r
+<tr><td> Language ID </td><td>1033</td></tr>\r
+<tr><td> Compile Script </td><td>webhelp5_compile_script.xml</td></tr>\r
+<tr><td> Compile Build Version </td><td>10.00.949</td></tr>\r
+<tr><td> Product Name </td><td>WebHelp 5.00</td></tr>\r
+<tr><td> Authoring Tool Name </td><td>RoboHelp 2002</td></tr>\r
+<table>\r
+</body>\r
+</html>
\ No newline at end of file
--- /dev/null
+<html>\r
+<head>\r
+<META HTTP-EQUIV="content-type" CONTENT="text/html; charset=iso-8859-1">\r
+</head>\r
+<style>\r
+<!--\r
+body {margin:0;}\r
+-->\r
+</style>\r
+<script language="javascript" src="whver.js"></script>\r
+<script language="javascript1.2" src="whutils.js"></script>\r
+<script language="javascript1.2" src="whmsg.js"></script>\r
+<script language="javascript1.2" src="whproxy.js"></script>\r
+<script language="javascript1.2" src="whmozemu.js"></script>\r
+<script language="javascript1.2" src="whtbar.js"></script>\r
+<body marginheight="0" marginwidth="0" bgcolor="#99ccff" scroll="no">\r
+<script language="javascript1.2">\r
+<!--\r
+if (window.gbWhTBar)\r
+{\r
+ setButtonFont("avprev","Tahoma","8pt","Black","Normal","Normal","none");\r
+setButtonFont("avnext","Tahoma","8pt","Black","Normal","Normal","none");\r
+setButtonFont("synctoc","Tahoma","8pt","Black","Normal","Normal","none");\r
+setButtonFont("hide2","Tahoma","8pt","Black","Normal","Normal","none");\r
+\r
+ gsIPrev = "wht_prev.gif";\r
+ gsIPrevD = "wht_prev_g.gif";\r
+ gsINext = "wht_next.gif";\r
+ gsINextD = "wht_next_g.gif";\r
+ gsISync = "wht_sync.gif";\r
+ gsIHide = "wht_hide.gif";\r
+ setBackgroundcolor("#99ccff");\r
+ \r
+ \r
+ addButton("avprev",BTN_TEXT|BTN_IMG,"","","","","",0,0,"","","","","","");\r
+addButton("avnext",BTN_TEXT|BTN_IMG,"","","","","",0,0,"","","","","","");\r
+addButton("synctoc",BTN_TEXT|BTN_IMG,"","","","","",0,0,"","","","","","");\r
+addButton("hide2",BTN_TEXT|BTN_IMG,"","","","","",0,0,"","","","","","");\r
+\r
+ addButton("blankblock");\r
+ writeStyle(true);\r
+ ReSortMinibarButtons();\r
+ writeToolBar();\r
+}\r
+else\r
+ document.location.reload();\r
+\r
+if (window.gbNav6)\r
+{\r
+ var oMsg=new whMessage(WH_MSG_RELOADNS6,this, 1,null);\r
+ SendMessage(oMsg);\r
+}\r
+//-->\r
+</script>\r
+</body>\r
+</html>
\ No newline at end of file
--- /dev/null
+<html>\r
+<head>\r
+<title>Navigation Pane</title>\r
+<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
+<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">\r
+<meta name "description" content="WebHelp 2002">\r
+<SCRIPT LANGUAGE="JavaScript1.2" ARCHIVE="nsdnsfix.jar" ID="ChangeProfileScriptinNavPane2"> var sd_strAgent = navigator.userAgent.toLowerCase(); var sd_strVersion = navigator.appVersion.toLowerCase(); var sd_nVerMajor = parseInt(sd_strVersion); var sd_nVerMinor = parseFloat(sd_strVersion); var sd_bNS = ((sd_strAgent.indexOf("mozilla") != -1) && ((sd_strAgent.indexOf('spoofer') == -1) && (sd_strAgent.indexOf('compatible') == -1))); var sd_bNS4 = ((sd_bNS) && (sd_nVerMajor >= 4)); if (sd_nVerMinor == 4.60) { netscape.security.PrivilegeManager.enablePrivilege("UniversalPreferencesRead"); var sd_prefValue = navigator.preference("security.lower_java_network_security_by_trusting_proxies"); if (!sd_prefValue) { alert("There are some limitations in Netscape 4.6. Please download and install the latest version of Netscape. Your current Netscape profile needs to be modified. Select 'Remember this decision' and click 'Grant' when prompted to allow the modifications. Click OK to proceed."); netscape.security.PrivilegeManager.enablePrivilege("UniversalPreferencesWrite"); navigator.preference("security.lower_java_network_security_by_trusting_proxies", true); alert("Please restart Netscape"); window.close(); } } </SCRIPT>\r
+<script language="javascript" src="whver.js"></script>\r
+<script language="javascript1.2" src="whmsg.js"></script>\r
+<script language="javascript1.2" src="whproxy.js"></script>\r
+<script language="javascript1.2" src="whutils.js"></script>\r
+<script language="javascript1.2">\r
+<!--\r
+var gsInitPane="toc";\r
+var gsCurrentPane="";\r
+var gbLoading = "unknown";\r
+var gbTryTime = 0;\r
+var gbMaxTryTime = 6;\r
+var gbPassPhase0 = 0;\r
+var gbretried = 0;\r
+var gbmaxretry = 3;\r
+var gbretrytime = new Array();\r
+\r
+var origWidth = 0;\r
+var origHeight = 0;\r
+\r
+gbretrytime[0]= 5000;\r
+gbretrytime[1]= 30000;\r
+gbretrytime[2]= 60000;\r
+\r
+function addPane(sName, sFile)\r
+{\r
+}\r
+\r
+function setShowPane(sName)\r
+{\r
+ gsInitPane=sName;\r
+}\r
+ addPane("toc","whtdhtml.htm");\r
+ addPane("fts","whfdhtml.htm");\r
+ addPane("glo","whgdhtml.htm");\r
+ setShowPane("toc");\r
+\r
+\r
+function window_unload()\r
+{\r
+ if (!gbNav4 || gbNav6) // resize will call unload, but the register code will never be called on Netscape 4.\r
+ {\r
+ UnRegisterListener2(this, WH_MSG_SHOWTOC);\r
+ UnRegisterListener2(this, WH_MSG_SHOWIDX);\r
+ UnRegisterListener2(this, WH_MSG_SHOWFTS);\r
+ UnRegisterListener2(this, WH_MSG_SHOWGLO);\r
+ UnRegisterListener2(this, WH_MSG_SYNCTOC);\r
+ UnRegisterListener2(this, WH_MSG_SEARCHTHIS);\r
+ UnRegisterListener2(this, WH_MSG_GETPANEINFO);\r
+ }\r
+}\r
+\r
+function window_OnLoad()\r
+{\r
+ if (gsInitPane == "toc")\r
+ {\r
+ var oMsg=new whMessage(WH_MSG_SHOWTOC,this,1,null)\r
+ SendMessage(oMsg); \r
+ }\r
+ else if (gsInitPane=="idx")\r
+ {\r
+ var oMsg=new whMessage(WH_MSG_SHOWIDX,this,1,null)\r
+ SendMessage(oMsg); \r
+ }\r
+ else if (gsInitPane=="fts")\r
+ {\r
+ var oMsg=new whMessage(WH_MSG_SHOWFTS,this,1,null)\r
+ SendMessage(oMsg); \r
+ }\r
+ else if (gsInitPane=="glo")\r
+ {\r
+ var oMsg=new whMessage(WH_MSG_SHOWGLO,this,1,null)\r
+ SendMessage(oMsg); \r
+ }\r
+ \r
+}\r
+\r
+function onResize()\r
+{\r
+ if (gbIE4)\r
+ {\r
+ if(document.body)\r
+ {\r
+ if(document.body.clientWidth > 1 && document.body.clientHeight>1)\r
+ {\r
+ var oMsg = new whMessage(WH_MSG_RESIZEPANE, this, 1, null);\r
+ SendMessage(oMsg);\r
+ }\r
+ }\r
+ }\r
+ else \r
+ {\r
+ if (window.innerWidth != 0 && window.innerHeight != 0)\r
+ {\r
+ var oMsg = new whMessage(WH_MSG_RESIZEPANE, this, 1, null);\r
+ SendMessage(oMsg);\r
+ }\r
+ }\r
+}\r
+\r
+function CheckLoadingPhase0()\r
+{\r
+ if (!gbPassPhase0) {\r
+ setTimeout("CheckLoadingPhase0()", 1000);\r
+ document.applets[0];\r
+ gbPassPhase0 = 1;\r
+ }\r
+ else {\r
+ CheckLoadingPhase1();\r
+ }\r
+}\r
+\r
+function CheckLoadingPhase1()\r
+{\r
+ if (gbNav4) {\r
+ if ("unknown" == gbLoading && document.readystate < 4) {\r
+ setTimeout("CheckLoadingPhase1()", 1000);\r
+ }\r
+ else if ("unknown" == gbLoading) {\r
+ CheckLoadingPhase2();\r
+ }\r
+ }\r
+}\r
+\r
+function CheckLoadingPhase2()\r
+{\r
+ if (gbNav4) {\r
+ gbTryTime ++;\r
+ if ("unknown" == gbLoading) {\r
+ if (gbTryTime <= gbMaxTryTime )\r
+ setTimeout("CheckLoadingPhase2()", 1000);\r
+ else {\r
+ if (gnVerMinor != 4.60) {\r
+ if (gnVerMinor >= 4.06)\r
+ document.location.href = "nsdnsfix.htm"\r
+ else {\r
+ alert("Unable to load applet. If you are using an old version of Netscape, the prefs.js file needs to be edited.");\r
+ }\r
+ }\r
+ } \r
+ }\r
+ }\r
+}\r
+\r
+function CheckAppletLoaded()\r
+{\r
+ if (typeof(document.WebHelp) == "undefined")\r
+ {\r
+ document.location.reload();\r
+ if (gbretried < gbmaxretry)\r
+ {\r
+ gbretried ++;\r
+ setTimeout("CheckAppletLoaded();", gbretrytime[gbretried]);\r
+ }\r
+ }\r
+}\r
+\r
+function reDo() \r
+{\r
+ if (innerWidth != origWidth || innerHeight != origHeight) \r
+ {\r
+ //reloaded applet if nessary\r
+ gbretried = 0;\r
+\r
+ if (gnVerMinor == 4.60) \r
+ {\r
+ //reload the applet again.\r
+ document.location.reload();\r
+ gbretried ++;\r
+ }\r
+ setTimeout("CheckAppletLoaded();", gbretrytime[gbretried]);\r
+ }\r
+}\r
+\r
+function onSendMessage(oMsg)\r
+{\r
+ if (oMsg)\r
+ { \r
+ var nMsgId = oMsg.nMessageId;\r
+ var WebHelpApplet = null;\r
+ if (gbNav4)\r
+ {\r
+ WebHelpApplet = document.applets["WebHelp"];\r
+ if (!WebHelpApplet.Command)\r
+ document.location="whskin_plist.htm";\r
+ }\r
+ else\r
+ WebHelpApplet = window.WebHelp;\r
+\r
+ if (nMsgId == WH_MSG_SHOWTOC)\r
+ {\r
+ gsCurrentPane="toc";\r
+ WebHelpApplet.Command("Contents",null);\r
+ var onMsg=new whMessage(WH_MSG_PANEINFO,this,1,"toc");\r
+ SendMessage(onMsg);\r
+ onMsg=new whMessage(WH_MSG_SHOWPANE,this,1,null);\r
+ SendMessage(onMsg);\r
+ }\r
+ else if(nMsgId==WH_MSG_SHOWIDX)\r
+ {\r
+ gsCurrentPane="idx";\r
+ WebHelpApplet.Command("Index",null);\r
+ var onMsg=new whMessage(WH_MSG_PANEINFO,this,1,"idx");\r
+ SendMessage(onMsg);\r
+ onMsg=new whMessage(WH_MSG_SHOWPANE,this,1,null);\r
+ SendMessage(onMsg);\r
+ }\r
+ else if(nMsgId==WH_MSG_SHOWFTS)\r
+ {\r
+ gsCurrentPane="fts";\r
+ WebHelpApplet.Command("Search",null);\r
+ var onMsg=new whMessage(WH_MSG_PANEINFO,this,1,"fts");\r
+ SendMessage(onMsg);\r
+ onMsg=new whMessage(WH_MSG_SHOWPANE,this,1,null);\r
+ SendMessage(onMsg);\r
+ }\r
+ else if(nMsgId==WH_MSG_SHOWGLO)\r
+ {\r
+ gsCurrentPane="glo";\r
+ WebHelpApplet.Command("Glossary",null);\r
+ var onMsg=new whMessage(WH_MSG_PANEINFO,this,1,"glo");\r
+ SendMessage(onMsg);\r
+ onMsg=new whMessage(WH_MSG_SHOWPANE,this,1,null);\r
+ SendMessage(onMsg);\r
+ }\r
+ else if(nMsgId==WH_MSG_SYNCTOC)\r
+ {\r
+ gsCurrentPane="toc";\r
+ var oTopicParam=oMsg.oParam;\r
+ if(oTopicParam&&oTopicParam.aPaths&&oTopicParam.aPaths.length>0&&oTopicParam.sPPath)\r
+ {\r
+ var sPPath=_browserURLToAppletURL(oTopicParam.sPPath);\r
+ var sParam="";\r
+ for(var i=0;i<oTopicParam.aPaths.length;i++)\r
+ {\r
+ sParam+=oTopicParam.aPaths[i]+"\r\r";\r
+ }\r
+ if(gbLoading!="unknown")\r
+ WebHelpApplet.Command("SyncToc",sPPath,sParam);\r
+ }\r
+ }\r
+ else if(nMsgId==WH_MSG_SEARCHTHIS)\r
+ {\r
+ gsCurrentPane="fts";\r
+ WebHelpApplet.Command("Search",oMsg.oParam);\r
+ var onMsg=new whMessage(WH_MSG_PANEINFO,this,1,"fts");\r
+ SendMessage(onMsg);\r
+ onMsg=new whMessage(WH_MSG_SHOWPANE,this,1,null);\r
+ SendMessage(onMsg);\r
+ }\r
+ else if(nMsgId==WH_MSG_GETPANEINFO)\r
+ {\r
+ oMsg.oParam=gsCurrentPane;\r
+ return false;\r
+ }\r
+ }\r
+ return true;\r
+}\r
+\r
+function _browserURLToAppletURL(sBURL)\r
+{\r
+ var sAURL="";\r
+ var nPos=sBURL.indexOf('%');\r
+ while(nPos!=-1)\r
+ {\r
+ sAURL+=sBURL.substring(0,nPos);\r
+ sBURL=sBURL.substring(nPos+1);\r
+ var sNum="";\r
+ var i=0;\r
+ while(sBURL.charAt(i)>='0'&&sBURL.charAt(i)<='9')\r
+ {\r
+ sNum+=sBURL.charAt(i++); \r
+ }\r
+ if(sNum!="")\r
+ {\r
+ var nNum=parseInt(sNum,16);\r
+ sAURL+=String.fromCharCode(nNum);\r
+ sBURL=sBURL.substring(i);\r
+ }\r
+ nPos=sBURL.indexOf('%');\r
+ }\r
+ sAURL+=sBURL;\r
+ return sAURL;\r
+}\r
+\r
+function getInitTocInfo()\r
+{\r
+ var oParam=new Object();\r
+ oParam.oTocInfo=null;\r
+ var oMsg=new whMessage(WH_MSG_GETTOCPATHS,this,1,oParam);\r
+ if(SendMessage(oMsg))\r
+ {\r
+ var oTopicParam=oMsg.oParam.oTocInfo;\r
+ if(oTopicParam&&oTopicParam.aPaths&&oTopicParam.aPaths.length>0&&oTopicParam.sPPath)\r
+ {\r
+ var sPPath=_browserURLToAppletURL(oTopicParam.sPPath);\r
+ var sParam="";\r
+ for(var i=0;i<oTopicParam.aPaths.length;i++)\r
+ {\r
+ sParam+=oTopicParam.aPaths[i]+"\r\r";\r
+ }\r
+ var WebHelpApplet;\r
+ if(gbNav4)\r
+ WebHelpApplet=document.applets["WebHelp"];\r
+ else\r
+ WebHelpApplet=WebHelp;\r
+ WebHelpApplet.Command("SyncToc",sPPath,sParam);\r
+ }\r
+ }\r
+}\r
+\r
+if(window.gbWhUtil&&window.gbWhMsg&&window.gbWhVer&&window.gbWhProxy)\r
+{\r
+ RegisterListener2(this, WH_MSG_SHOWTOC);\r
+ RegisterListener2(this, WH_MSG_SHOWIDX);\r
+ RegisterListener2(this, WH_MSG_SHOWFTS);\r
+ RegisterListener2(this, WH_MSG_SHOWGLO);\r
+ RegisterListener2(this, WH_MSG_SYNCTOC);\r
+ RegisterListener2(this, WH_MSG_SEARCHTHIS);\r
+ RegisterListener2(this, WH_MSG_GETPANEINFO);\r
+\r
+ window.onresize=onResize;\r
+ window.onunload = window_unload;\r
+ window.onload=window_OnLoad;\r
+ window.onerror = null;\r
+ var gbWindows = ((gAgent.indexOf("win") != -1) || (gAgent.indexOf("16bit") != -1));\r
+\r
+ if (gbNav4 && !gbNav6 && gbWindows) {\r
+ setTimeout("CheckLoadingPhase0()", 1000);\r
+ }\r
+ if (gbNav4)\r
+ {\r
+ origWidth = innerWidth;\r
+ origHeight = innerHeight;\r
+ onresize = reDo;\r
+ }\r
+}\r
+else\r
+ document.location.reload();\r
+//-->\r
+</script>\r
+</head>\r
+<body topmargin="0" leftmargin="0" rightmargin="0" bottommargin="0" bgcolor="c0c0c0">\r
+<applet code=WebHelp.class name=WebHelp archive=webhelp.jar width=100% height=100% MAYSCRIPT hspace=0 vspace=0>\r
+<PARAM name=ProjectFile value=whproj.xml><PARAM name=ResourceFile value=whres.xml>\r
+<PARAM name=HideTabs value=true>\r
+<PARAM name=Frame value=bsscright>\r
+<PARAM name=cabbase value=webhelp.cab>\r
+</applet>\r
+</body>\r
+</html>\r
--- /dev/null
+<html>\r
+<head>\r
+<title> Navigation Pane </title>\r
+<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
+<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">\r
+<meta name "description" content="WebHelp 2002">\r
+</head>\r
+<body border=0 topmargin=0 bottommargin=0 rightmargin=0 leftmargin=0 scroll=no>\r
+<script language="javascript" src="whver.js"></script>\r
+<script language="javascript1.2" src="whmozemu.js"></script>\r
+<script language="javascript1.2" src="whmsg.js"></script>\r
+<script language="javascript1.2" src="whproxy.js"></script>\r
+<script language="javascript1.2" src="whutils.js"></script>\r
+<script language="javascript1.2" src="whphost.js"></script>\r
+<script language="javascript1.2">\r
+<!--\r
+if (window.gbWhPHost)\r
+{\r
+ var gsNavReDirect="whskin_plist.htm";\r
+ var gbReDirectThis=true;\r
+ var oMsg = new whMessage(WH_MSG_GETPANES, this, 1, null);\r
+ if (SendMessage(oMsg))\r
+ {\r
+ if (oMsg.oParam)\r
+ {\r
+ for (var i=0;i<oMsg.oParam.aPanes.length;i++)\r
+ {\r
+ addPane(oMsg.oParam.aPanes[i].sPaneName, oMsg.oParam.aPanes[i].sPaneURL);\r
+ }\r
+ setShowPane(oMsg.oParam.sDefault);\r
+ setServerEnabled();\r
+ }\r
+ else\r
+ writeWebHelpPane();\r
+ }\r
+ else\r
+ writeWebHelpPane();\r
+}\r
+else\r
+ document.location.reload();\r
+\r
+function writeWebHelpPane()\r
+{\r
+ var bPreferXML = false;\r
+ var strProjectFileXML = "whproj.xml";\r
+ var strProjectFileHTM = "whproj.htm"; \r
+ addProject(bPreferXML, strProjectFileXML, strProjectFileHTM);\r
+ addPane("toc","whtdhtml.htm");\r
+ addPane("fts","whfdhtml.htm");\r
+ addPane("glo","whgdhtml.htm");\r
+ setShowPane("toc");\r
+\r
+}\r
+//-->\r
+</script>\r
+</body>\r
+</html>
\ No newline at end of file
--- /dev/null
+<html>\r
+<head>\r
+<title> Navigation Pane </title>\r
+<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
+<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">\r
+<meta name "description" content="WebHelp 2002">\r
+<script language="javascript" src="whver.js"></script>\r
+<script language="javascript1.2" src="whmsg.js"></script>\r
+<script language="javascript1.2" src="whproxy.js"></script>\r
+</head>\r
+<script language="javascript">\r
+<!--\r
+var strFrmToc = "";\r
+var strFrmNdx = "";\r
+var strFrmFts = "";\r
+var strFrmGls = "";\r
+var strFrmDft = "";\r
+var gstrName = "";\r
+\r
+//set overwrite here\r
+function setListFrames(strToc,strNdx,strFts,strGls,strDefault)\r
+{\r
+ strFrmToc = strToc;\r
+ strFrmNdx = strNdx;\r
+ strFrmFts = strFts;\r
+ strFrmGls = strGls;\r
+ strFrmDft = strDefault;\r
+ if (strFrmDft == strFrmToc)\r
+ {\r
+ gstrName = "toc";\r
+ }\r
+ else if (strFrmDft == strFrmNdx) \r
+ {\r
+ gstrName = "idx";\r
+\r
+ }\r
+ else if (strFrmDft == strFrmFts) \r
+ {\r
+ gstrName = "fts";\r
+ }\r
+ else if (strFrmDft == strFrmGls) \r
+ {\r
+ gstrName = "glo";\r
+ }\r
+}\r
+\r
+function setWebHelpPane()\r
+{\r
+ setListFrames("whgdata/whnvf30.htm","whgdata/whnvf31.htm","whgdata/whnvf32.htm","whgdata/whnvf33.htm","whgdata/whnvf30.htm");\r
+}\r
+\r
+function window_unload()\r
+{\r
+ if (!gbNav4 || gbNav6) // resize will call unload, but the register code will never be called on Netscape 4.\r
+ {\r
+ UnRegisterListener2(this,WH_MSG_SHOWTOC);\r
+ UnRegisterListener2(this,WH_MSG_SHOWIDX);\r
+ UnRegisterListener2(this,WH_MSG_SHOWFTS);\r
+ UnRegisterListener2(this,WH_MSG_SHOWGLO);\r
+ UnRegisterListener2(this, WH_MSG_GETPANEINFO);\r
+ }\r
+}\r
+\r
+function window_onload()\r
+{\r
+ if (gstrName)\r
+ {\r
+ var onMsg=new whMessage(WH_MSG_PANEINFO, this, 1, gstrName);\r
+ SendMessage(onMsg);\r
+ }\r
+}\r
+\r
+function switchNvp(strName)\r
+{\r
+ var strFile = "";\r
+ if (strName == "toc") strFile = strFrmToc;\r
+ else if (strName == "idx") strFile = strFrmNdx;\r
+ else if (strName == "fts") strFile = strFrmFts;\r
+ else if (strName == "glo") strFile = strFrmGls;\r
+\r
+ gstrName = strName;\r
+ frames[0].location = strFile; \r
+}\r
+\r
+function onSendMessage(oMsg)\r
+{\r
+ if(oMsg)\r
+ {\r
+ var nMsgId=oMsg.nMessageId;\r
+ if (nMsgId==WH_MSG_SHOWTOC)\r
+ {\r
+ switchNvp("toc");\r
+ var onMsg=new whMessage(WH_MSG_PANEINFO, this, 1, "toc");\r
+ SendMessage(onMsg);\r
+ onMsg = new whMessage(WH_MSG_SHOWPANE, this, 1, null);\r
+ SendMessage(onMsg);\r
+ }\r
+ else if(nMsgId==WH_MSG_SHOWIDX)\r
+ {\r
+ switchNvp("idx");\r
+ var onMsg=new whMessage(WH_MSG_PANEINFO, this, 1, "idx");\r
+ SendMessage(onMsg);\r
+ onMsg = new whMessage(WH_MSG_SHOWPANE, this, 1, null);\r
+ SendMessage(onMsg);\r
+ }\r
+ else if(nMsgId==WH_MSG_SHOWFTS)\r
+ {\r
+ switchNvp("fts");\r
+ var onMsg=new whMessage(WH_MSG_PANEINFO, this, 1, "fts");\r
+ SendMessage(onMsg);\r
+ onMsg = new whMessage(WH_MSG_SHOWPANE, this, 1, null);\r
+ SendMessage(onMsg);\r
+ }\r
+ else if(nMsgId==WH_MSG_SHOWGLO)\r
+ {\r
+ switchNvp("glo");\r
+ var onMsg=new whMessage(WH_MSG_PANEINFO, this, 1, "glo");\r
+ SendMessage(onMsg);\r
+ onMsg = new whMessage(WH_MSG_SHOWPANE, this, 1, null);\r
+ SendMessage(onMsg);\r
+ }\r
+ else if (nMsgId==WH_MSG_GETPANEINFO)\r
+ {\r
+ oMsg.oParam = gstrName;\r
+ return false;\r
+ }\r
+ }\r
+ return true;\r
+}\r
+\r
+function onResize()\r
+{\r
+ if (gbIE4)\r
+ {\r
+ if(document.body)\r
+ {\r
+ if(document.body.clientWidth > 1 && document.body.clientHeight>1)\r
+ {\r
+ var oMsg = new whMessage(WH_MSG_RESIZEPANE, this, 1, null);\r
+ SendMessage(oMsg);\r
+ }\r
+ }\r
+ }\r
+ else \r
+ {\r
+ if (window.innerWidth != 0 && window.innerHeight != 0)\r
+ {\r
+ var oMsg = new whMessage(WH_MSG_RESIZEPANE, this, 1, null);\r
+ SendMessage(oMsg);\r
+ }\r
+ }\r
+}\r
+\r
+if (window.gbWhMsg&&window.gbWhVer&&window.gbWhProxy)\r
+{\r
+ var oMsg = new whMessage(WH_MSG_GETPANES, this, 1, null);\r
+ if (SendMessage(oMsg))\r
+ {\r
+ if (oMsg.oParam)\r
+ {\r
+ for (var i=0;i<oMsg.oParam.aPanes.length;i++)\r
+ {\r
+ if (oMsg.oParam.aPanes[i].sPaneName == "toc")\r
+ strFrmToc = oMsg.oParam.aPanes[i].sPaneURL;\r
+ else if (oMsg.oParam.aPanes[i].sPaneName == "idx")\r
+ strFrmNdx = oMsg.oParam.aPanes[i].sPaneURL;\r
+ else if (oMsg.oParam.aPanes[i].sPaneName == "fts")\r
+ strFrmFts = oMsg.oParam.aPanes[i].sPaneURL;\r
+ else if (oMsg.oParam.aPanes[i].sPaneName == "glo")\r
+ strFrmGls = oMsg.oParam.aPanes[i].sPaneURL;\r
+ if (oMsg.oParam.sDefault == oMsg.oParam.aPanes[i].sPaneName)\r
+ {\r
+ strFrmDft = oMsg.oParam.aPanes[i].sPaneURL;\r
+ }\r
+ }\r
+ }\r
+ else\r
+ setWebHelpPane();\r
+ }\r
+ else\r
+ setWebHelpPane();\r
+\r
+ RegisterListener2(this,WH_MSG_SHOWTOC);\r
+ RegisterListener2(this,WH_MSG_SHOWIDX);\r
+ RegisterListener2(this,WH_MSG_SHOWFTS);\r
+ RegisterListener2(this,WH_MSG_SHOWGLO);\r
+ RegisterListener2(this, WH_MSG_GETPANEINFO);\r
+\r
+ window.onresize=onResize;\r
+ window.onunload=window_unload;\r
+ window.onload=window_onload;\r
+\r
+ var strHtml = "";\r
+ strHtml += "<frameset rows=\'100%,*\'>";\r
+ strHtml += "<frame name=\'nvplist\' title=\'navpane frame\' src=\'" + strFrmDft +"\'></frame>";\r
+ strHtml += "<frame src=\'whskin_blank.htm\' noresize></frame>";\r
+ strHtml += "</frameset>";\r
+ document.write(strHtml);\r
+}\r
+else\r
+ document.location.reload();\r
+//-->\r
+</script>\r
+</html>
\ No newline at end of file
--- /dev/null
+<html>\r
+<head>\r
+<META HTTP-EQUIV="content-type" CONTENT="text/html; charset=iso-8859-1">\r
+</head>\r
+<style>\r
+<!--\r
+body {margin:0;}\r
+-->\r
+</style>\r
+<script language="javascript" src="whver.js"></script>\r
+<script language="javascript1.2" src="whutils.js"></script>\r
+<script language="javascript1.2" src="whmsg.js"></script>\r
+<script language="javascript1.2" src="whproxy.js"></script>\r
+<script language="javascript1.2" src="whmozemu.js"></script>\r
+<script language="javascript1.2" src="whtbar.js"></script>\r
+\r
+\r
+<body marginheight="0" marginwidth="0" bgcolor="#99ccff" scroll="no">\r
+<script language="javascript1.2">\r
+<!--\r
+if (window.gbWhTBar)\r
+{\r
+ setButtonFont("toc","Tahoma","8pt","Black","Normal","Normal","none");\r
+setButtonFont("toc","Tahoma","8pt","White","Normal","Normal","none", true);\r
+setButtonFont("idx","Tahoma","8pt","Black","Normal","Normal","none");\r
+setButtonFont("idx","Tahoma","8pt","White","Normal","Normal","none", true);\r
+setButtonFont("fts","Tahoma","8pt","Black","Normal","Normal","none");\r
+setButtonFont("fts","Tahoma","8pt","White","Normal","Normal","none", true);\r
+setButtonFont("glo","Tahoma","8pt","Black","Normal","Normal","none");\r
+setButtonFont("glo","Tahoma","8pt","White","Normal","Normal","none", true);\r
+setButtonFont("websearch","Tahoma","8pt","Black","Normal","Normal","none");\r
+setButtonFont("websearch","Tahoma","8pt","White","Normal","Normal","none", true);\r
+setButtonFont("searchform","Tahoma","8pt","Black","Normal","Normal","none");\r
+setButtonFont("searchform","","","","","","", true);\r
+setButtonFont("banner","","","","","","");\r
+setButtonFont("banner","","","","","","", true);\r
+\r
+ gsIToc = "wht_toc_n.gif";\r
+ gsITocS = "wht_toc_h.gif";\r
+ gsIIndex = "wht_idx_n.gif";\r
+ gsIIndexS = "wht_idx_h.gif";\r
+ gsISearch = "wht_fts_n.gif";\r
+ gsISearchS = "wht_fts_h.gif";\r
+ gsIGlossary = "wht_glo_n.gif";\r
+ gsIGlossaryS = "wht_glo_h.gif";\r
+ gsIWebSearch = "wht_ws.gif";\r
+ gsIWebSearchD = "wht_ws_g.gif";\r
+ gsIBanner = "wht_logo1.gif";\r
+ gsIGo = "wht_go.gif";\r
+ setBackgroundcolor("#99ccff");\r
+ \r
+ setAlignment("left");\r
+ \r
+ \r
+ if (!gsBgImage)\r
+ {\r
+ setButtonBgColor("toc", gsBgColor);\r
+ setButtonBgColor("idx", gsBgColor);\r
+ setButtonBgColor("fts", gsBgColor);\r
+ setButtonBgColor("glo", gsBgColor);\r
+ setButtonBgColor("toc", gsTBSelectedBgColor, true);\r
+ setButtonBgColor("idx", gsTBSelectedBgColor, true);\r
+ setButtonBgColor("fts", gsTBSelectedBgColor, true);\r
+ setButtonBgColor("glo", gsTBSelectedBgColor, true);\r
+ setButtonBgColor("toc","#99ccff");\r
+setButtonBgColor("idx","#99ccff");\r
+setButtonBgColor("fts","#99ccff");\r
+setButtonBgColor("glo","#99ccff");\r
+setButtonBgColor("websearch","#99ccff");\r
+setButtonBgColor("searchform","");\r
+setButtonBgColor("banner","");\r
+\r
+ }\r
+ setButtonBgColor("toc","#639ace", true);\r
+setButtonBgColor("idx","#639ace", true);\r
+setButtonBgColor("fts","#639ace", true);\r
+setButtonBgColor("glo","#639ace", true);\r
+setButtonBgColor("websearch","#639ace", true);\r
+setButtonBgColor("searchform","", true);\r
+setButtonBgColor("banner","", true);\r
+\r
+ addButton("toc",BTN_TEXT|BTN_IMG,"Contents","","","","",0,0,"","","","","","");\r
+addButton("fts",BTN_TEXT|BTN_IMG,"Search","","","","",0,0,"","","","","","");\r
+addButton("glo",BTN_TEXT|BTN_IMG,"Glossary","","","","",0,0,"","","","","","");\r
+addButton("searchform",BTN_TEXT,"","","","","",0,0,"","","","","","");\r
+addButton("banner",BTN_IMG,"eHelp Corporation","","","","",0,0,"","","","","","");\r
+\r
+ addButton("blankblock");\r
+ writeStyle(false);\r
+ ReSortToolbarButtons();\r
+ writeToolBar();\r
+}\r
+else\r
+ document.location.reload();\r
+//-->\r
+</script>\r
+</body>\r
+</html>
\ No newline at end of file
--- /dev/null
+<?xml version='1.0' encoding='ISO-8859-1' ?>\r
+<topictemplate>\r
+ <topic type="normal">\r
+ <add tag="head" pos="endbefore" >\r
+ <![CDATA["<script type=\"text/javascript\" language=\"javascript1.2\" src=\"";SF_MESSAGE_JS;"\"></script>\r
+<script type=\"text/javascript\" language=\"javascript\" src=\"";SF_VERSION_JS;"\"></script>\r
+<script type=\"text/javascript\" language=\"javascript1.2\" src=\"";SF_PROXY_JS ;"\"></script>\r
+<script type=\"text/javascript\" language=\"javascript1.2\" src=\"";SF_UTILS_JS;"\"></script>\r
+<script type=\"text/javascript\" language=\"javascript1.2\" src=\"";SF_TOPIC_JS;"\"></script>\r
+";]]>\r
+ </add>\r
+ <add tag="body" pos="beginafter">\r
+ <![CDATA["<script type=\"text/javascript\" language=\"javascript1.2\">\r
+<!--\r
+if (window.gbWhTopic)\r
+{\r
+ if (window.addTocInfo)\r
+ {\r
+ ";\r
+ OutputInTopicNavBarDataToc("addTocInfo(\"%s\");\r\n");\r
+ OutputInTopicNavBarDataBrowse("addAvenueInfo(\"%s\",\"%s\",\"%s\");\r\n");\r
+ OutputInTopicNavBarDataButtons("addButton(%s);\r\n");\r
+ "\r
+ }\r
+ if (window.writeBtnStyle)\r
+ writeBtnStyle();\r
+\r
+ if (window.writeIntopicBar)\r
+ writeIntopicBar(";WH_WEBSKIN.topic.bar.top.pos;");\r
+\r
+ if (window.setRelStartPage)\r
+ {\r
+ ";\r
+ OutputInTopicNavBarDataHomePage("setRelStartPage(\"%s\");\r\n");\r
+ OutputInTopicNavBarDataWebSearch.href("addSearchFormHref(\"%s\");\r\n");\r
+ "\r
+ autoSync(";WH_USER_OPTIONS.autosync_toc;");\r
+ sendSyncInfo();\r
+ sendAveInfoOut();\r
+ }\r
+}\r
+else\r
+ document.location.reload();\r
+//-->\r
+</script>"]]> \r
+ </add>\r
+ <add tag="body" pos="endbefore">\r
+ <![CDATA["<script type=\"text/javascript\" language=\"javascript1.2\">\r
+<!--\r
+if (window.writeIntopicBar)\r
+ writeIntopicBar(";WH_WEBSKIN.topic.bar.bottom.pos;");\r
+//-->\r
+</script>";\r
+OutputInTopicNavBarDataWebSearch.form();]]> \r
+ </add>\r
+ </topic>\r
+ <topic type="frameset">\r
+ <add tag="head" pos="endbefore" >\r
+ <![CDATA["<script type=\"text/javascript1.2\" language=\"javascript\" src=\"";SF_MESSAGE_JS;"\"></script>\r
+<script type=\"text/javascript\" language=\"javascript\" src=\"";SF_VERSION_JS;"\"></script>\r
+<script type=\"text/javascript\" language=\"javascript1.2\" src=\"";SF_PROXY_JS ;"\"></script>\r
+<script type=\"text/javascript\" language=\"javascript1.2\" src=\"";SF_UTILS_JS;"\"></script>\r
+<script type=\"text/javascript\" language=\"javascript1.2\" src=\"";SF_FRAMESET_JS;"\"></script>\r
+<script type=\"text/javascript\" language=\"javascript1.2\">\r
+<!--\r
+if (window.setRelStartPage)\r
+{\r
+";\r
+ OutputInTopicNavBarDataHomePage("setRelStartPage(\"%s\");\r\n");\r
+ OutputInTopicNavBarDataToc("addTocInfo(\"%s\");\r\n");\r
+ OutputInTopicNavBarDataBrowse("addAvenueInfo(\"%s\",\"%s\",\"%s\");\r\n");\r
+"\r
+}\r
+if (window.autoSync)\r
+ autoSync(";WH_USER_OPTIONS.autosync_toc;");\r
+//-->\r
+</script>\r
+";]]>\r
+ </add>\r
+ </topic>\r
+</topictemplate>\r
--- /dev/null
+RegisterListener2(this, WH_MSG_GETSTARTFRAME);\r
+RegisterListener2(this, WH_MSG_GETDEFAULTTOPIC);\r
+RegisterListener2(this, WH_MSG_MINIBARORDER);\r
+RegisterListener2(this, WH_MSG_TOOLBARORDER);\r
+RegisterListener2(this, WH_MSG_ISSEARCHSUPPORT);\r
+RegisterListener2(this, WH_MSG_ISSYNCSSUPPORT);\r
+RegisterListener2(this, WH_MSG_ISAVENUESUPPORT);\r
+RegisterListener2(this, WH_MSG_GETPANETYPE);\r
+RegisterListener2(this, WH_MSG_GETPANES);\r
+RegisterListener2(this, WH_MSG_RELOADNS6);\r
+\r
+if (gbNav6)\r
+{\r
+ var gnReload=0;\r
+ setTimeout("delayReload();",5000);\r
+}\r
+\r
+function delayReload()\r
+{\r
+ if(!gnReload)\r
+ {\r
+ if(nViewFrameType&&nViewFrameType==1)\r
+ document.location=document.location;\r
+ }\r
+}\r
+\r
+var gsToolbarOrder = "toc|fts|glo|blankblock|banner";\r
+var gsMinibarOrder = "blankblock|hide2|";\r
+\r
+var gsTopic = "files/introduction.htm";\r
+\r
+if (location.hash.length > 1)\r
+ gsTopic = location.hash.substring(1);\r
+\r
+function setToolbarOrder(sOrder)\r
+{\r
+ gsToolbarOrder = sOrder;\r
+}\r
+\r
+function setMinibarOrder(sOrder)\r
+{\r
+ gsMinibarOrder = sOrder;\r
+}\r
+\r
+function onSendMessageX(oMsg)\r
+{\r
+ var nMsgId = oMsg.nMessageId;\r
+ if (nMsgId == WH_MSG_GETSTARTFRAME)\r
+ {\r
+ oMsg.oParam.oFrame = this;\r
+ return false;\r
+ }\r
+ else if (nMsgId == WH_MSG_GETDEFAULTTOPIC)\r
+ {\r
+ if (this.cMRServer && cMRServer.m_strVersion)\r
+ {\r
+ if (cMRServer.m_strURLTopic);\r
+ {\r
+ oMsg.oParam.sTopic = cMRServer.m_strURLTopic;\r
+ return false;\r
+ }\r
+\r
+ }\r
+ oMsg.oParam.sTopic = gsTopic;\r
+ return false;\r
+ }\r
+ else if (nMsgId == WH_MSG_TOOLBARORDER)\r
+ {\r
+ var oMsg1 = new whMessage(WH_MSG_GETPANES, this, 1, null);\r
+ if (SendMessage(oMsg1))\r
+ {\r
+ if (oMsg1.oParam)\r
+ {\r
+ if (this.cMRServer && cMRServer.m_strVersion)\r
+ {\r
+ var aToolbarOrder=cMRServer.m_strAgentList.split(";");\r
+ var i=0;\r
+ for (i=0;i<aToolbarOrder.length;i++)\r
+ aToolbarOrder[i]=transferANToPN2(aToolbarOrder[i]);\r
+ aToolbarOrder[aToolbarOrder.length] = "blankblock";\r
+ if (cMRServer.m_bShowSearchInput)\r
+ {\r
+ aToolbarOrder[aToolbarOrder.length] = "searchform";\r
+ }\r
+ aToolbarOrder[aToolbarOrder.length] = "banner";\r
+ var aToolbarOrderNew = new Array();\r
+ for (i=0;i<aToolbarOrder.length;i++)\r
+ {\r
+ if (isAPane(aToolbarOrder[i]))\r
+ {\r
+ if (oMsg1.oParam.aPanes && oMsg1.oParam.aPanes.length)\r
+ {\r
+ for (var j=0;j<oMsg1.oParam.aPanes.length;j++)\r
+ {\r
+ if (aToolbarOrder[i] == oMsg1.oParam.aPanes[j].sPaneName)\r
+ {\r
+ aToolbarOrderNew[aToolbarOrderNew.length] = aToolbarOrder[i];\r
+ break;\r
+ }\r
+ }\r
+ }\r
+ }\r
+ else\r
+ aToolbarOrderNew[aToolbarOrderNew.length] = aToolbarOrder[i];\r
+ }\r
+ oMsg.oParam = aToolbarOrderNew.join("|");\r
+ return false;\r
+ }\r
+ }\r
+ }\r
+ oMsg.oParam = gsToolbarOrder;\r
+ return false;\r
+ }\r
+ else if (nMsgId == WH_MSG_MINIBARORDER)\r
+ {\r
+ oMsg.oParam = gsMinibarOrder;\r
+ return false;\r
+ }\r
+ else if (nMsgId == WH_MSG_ISSYNCSSUPPORT)\r
+ {\r
+ if (this.cMRServer && cMRServer.m_strVersion)\r
+ {\r
+ if (cMRServer.m_bShowSync)\r
+ oMsg.oParam=true;\r
+ else\r
+ oMsg.oParam=false;\r
+ return false;\r
+ }\r
+ else\r
+ {\r
+ if(nViewFrameType)\r
+ {\r
+ oMsg.oParam= (nViewFrameType < 3);\r
+ return false;\r
+ }\r
+ }\r
+ }\r
+ else if (nMsgId == WH_MSG_ISAVENUESUPPORT)\r
+ {\r
+ if (this.cMRServer && cMRServer.m_strVersion)\r
+ {\r
+ if (cMRServer.m_bShowBrowseSequences)\r
+ oMsg.oParam=true;\r
+ else\r
+ oMsg.oParam=false;\r
+ }\r
+ else\r
+ {\r
+ oMsg.oParam=true;\r
+ }\r
+ return false;\r
+ }\r
+ else if (nMsgId == WH_MSG_ISSEARCHSUPPORT)\r
+ {\r
+ if(nViewFrameType)\r
+ {\r
+ oMsg.oParam= (nViewFrameType < 3);\r
+ return false;\r
+ }\r
+ }\r
+ else if (nMsgId == WH_MSG_GETPANETYPE)\r
+ {\r
+ if(nViewFrameType)\r
+ {\r
+ var oPaneInfo = new Object();\r
+ oPaneInfo.nType = nViewFrameType;\r
+ oPaneInfo.sPaneURL = strPane;\r
+ oMsg.oParam = oPaneInfo;\r
+ return false;\r
+ }\r
+ }\r
+ else if (nMsgId == WH_MSG_GETPANES)\r
+ {\r
+ if (this.cMRServer && cMRServer.m_strVersion)\r
+ {\r
+ var oPanes = new Object();\r
+ var aAgentNames = null;\r
+ if (cMRServer.m_strDefAgent)\r
+ oPanes.sDefault = transferAgentNameToPaneName(cMRServer.m_strDefAgent);\r
+\r
+ aPanes = new Array();\r
+ for(var i=0; i< cMRServer.m_cAgents.length; i++)\r
+ {\r
+ var nCur = aPanes.length;\r
+ aPanes[nCur] = new Object();\r
+ aPanes[nCur].sPaneName = transferAgentNameToPaneName(cMRServer.m_cAgents[i].m_strID);\r
+ aPanes[nCur].sPaneURL = cMRServer.m_cAgents[i].m_strURL;\r
+ }\r
+ oPanes.aPanes = aPanes;\r
+ oMsg.oParam = oPanes;\r
+ return false;\r
+ }\r
+ else\r
+ {\r
+ oMsg.oParam = null;\r
+ return false;\r
+ }\r
+ }\r
+ else if(nMsgId==WH_MSG_RELOADNS6)\r
+ {\r
+ if(gbNav6)\r
+ gnReload=1;\r
+ return false;\r
+ }\r
+ return true;\r
+}\r
+\r
+function transferANToPN2(sAN)\r
+{\r
+ if (sAN =="toc")\r
+ return "toc";\r
+ else if (sAN =="ndx")\r
+ return "idx";\r
+ else if (sAN =="nls")\r
+ return "fts";\r
+ else if (sAN =="Glossary")\r
+ return "glo";\r
+ else if (sAN =="WebSearch")\r
+ return "websearch";\r
+ else if (sAN.indexOf("custom_")==0);\r
+ return "custom" + sAN.substring(7);\r
+ return sAN;\r
+}\r
+\r
+function transferAgentNameToPaneName(sAgentName)\r
+{\r
+ if (sAgentName =="toc")\r
+ return "toc";\r
+ else if (sAgentName =="ndx")\r
+ return "idx";\r
+ else if (sAgentName =="nls")\r
+ return "fts";\r
+ else if (sAgentName =="gls")\r
+ return "glo";\r
+ return "";\r
+}\r
+\r
+function isAPane(sPaneName)\r
+{\r
+ if (sPaneName == "toc" || sPaneName == "idx" || sPaneName == "fts" || sPaneName == "glo")\r
+ return true;\r
+ else\r
+ return false;\r
+}
\ No newline at end of file
--- /dev/null
+window.whname="wh_stub";\r
+function getframehandle(frames,framename)\r
+{\r
+ var frame=null;\r
+ if(null==frames) return null;\r
+ for(var i=0;i<frames.length;i++)\r
+ {\r
+ if(typeof(frames[i].name)!="unknown")\r
+ {\r
+ if(frames[i].name==framename)\r
+ return frames[i];\r
+ if(frames[i].frames.length>0)\r
+ frame=getframehandle(frames[i].frames,framename);\r
+ if(null!=frame)\r
+ return frame;\r
+ }\r
+ }\r
+ return frame;\r
+}\r
+\r
+function AddToArray(arr,obj)\r
+{\r
+ var bFound=false;\r
+ for(var i=0;i<arr.length;i++){\r
+ if(arr[i]==obj){\r
+ bFound=true;\r
+ break;\r
+ }\r
+ else if(arr[i]==null){\r
+ break;\r
+ }\r
+ }\r
+ if(!bFound) arr[i]=obj;\r
+}\r
+\r
+var gArrayRegistedMessage=new Array();\r
+var gArrayCompoentsArray=new Array();\r
+\r
+function GetComponentsArray(nMessageId)\r
+{\r
+ var len=gArrayRegistedMessage.length;\r
+ for(var i=0;i<len;i++)\r
+ {\r
+ if(gArrayRegistedMessage[i]==nMessageId){\r
+ if(gArrayCompoentsArray.length>i)\r
+ return gArrayCompoentsArray[i];\r
+ else\r
+ return null;\r
+ }\r
+ }\r
+ return null;\r
+}\r
+\r
+function CreateComponentsArray(nMessageId)\r
+{\r
+ var len=gArrayRegistedMessage.length;\r
+ gArrayRegistedMessage[len]=nMessageId;\r
+ gArrayCompoentsArray[len]=new Array();\r
+ return gArrayCompoentsArray[len];\r
+}\r
+\r
+function listener(sName,oWindow)\r
+{\r
+ this.sName=sName;\r
+ this.oWindow=oWindow;\r
+}\r
+\r
+function RegisterListener(windowName,nMessageId)\r
+{\r
+ var arrayComponents=GetComponentsArray(nMessageId);\r
+ if(arrayComponents==null)\r
+ arrayComponents=CreateComponentsArray(nMessageId);\r
+ \r
+ if(arrayComponents!=null)\r
+ {\r
+ for (var i=0;i<arrayComponents.length;i++)\r
+ {\r
+ if (arrayComponents[i].sName == windowName)\r
+ return false;\r
+ }\r
+ var oListener=new listener(windowName,null);\r
+ AddToArray(arrayComponents,oListener);\r
+ return true;\r
+ }\r
+ else\r
+ return false;\r
+}\r
+\r
+function RegisterListener2(oWindow,nMessageId)\r
+{\r
+ var arrayComponents=GetComponentsArray(nMessageId);\r
+ if(arrayComponents==null)\r
+ arrayComponents=CreateComponentsArray(nMessageId);\r
+ \r
+ if(arrayComponents!=null)\r
+ {\r
+ var oListener=new listener("",oWindow);\r
+ AddToArray(arrayComponents,oListener);\r
+ return true;\r
+ }\r
+ else\r
+ return false;\r
+}\r
+\r
+function UnRegisterListener2(oWindow,nMessageId)\r
+{\r
+ var arrayComponents=GetComponentsArray(nMessageId);\r
+ if(arrayComponents!=null)\r
+ {\r
+ for(var i=0;i<arrayComponents.length;i++)\r
+ {\r
+ if(arrayComponents[i].oWindow==oWindow)\r
+ {\r
+ removeItemFromArray(arrayComponents,i);\r
+ return true;\r
+ }\r
+ }\r
+ }\r
+ else\r
+ return false;\r
+}\r
+\r
+function SendMessage(oMessage)\r
+{\r
+ var bDelivered=false;\r
+ var arrayComponents=GetComponentsArray(oMessage.nMessageId);\r
+ if(arrayComponents!=null&&arrayComponents.length>0){\r
+ for(var i=0;i<arrayComponents.length;i++)\r
+ {\r
+ if(null!=arrayComponents[i])\r
+ {\r
+ var pFrame;\r
+ if(arrayComponents[i].oWindow==null)\r
+ pFrame=getframehandle(frames,arrayComponents[i].sName);\r
+ else\r
+ pFrame=arrayComponents[i].oWindow;\r
+ if(null!=pFrame)\r
+ {\r
+ if(pFrame.onSendMessageX)\r
+ {\r
+ bDelivered=true;\r
+ if(!pFrame.onSendMessageX(oMessage))\r
+ break;\r
+ }\r
+ if(pFrame.onSendMessage)\r
+ {\r
+ bDelivered=true;\r
+ if(!pFrame.onSendMessage(oMessage))\r
+ break;\r
+ }\r
+ }\r
+ }\r
+ }\r
+ }\r
+ return bDelivered;\r
+}
\ No newline at end of file
--- /dev/null
+var gaButtons=new Array();\r
+var gaTypes=new Array();\r
+var gaBtnBgColor=new Array();\r
+var gaSelBtnBgColor=new Array();\r
+var gaOrders=null;\r
+var gaObjBtns=new Array();\r
+var BTN_TEXT=1;\r
+var BTN_IMG=2;\r
+var BTN_IMG_TOP=4\r
+var BTN_IMG_BOTTOM=8;\r
+var BTN_IMG_LEFT=16;\r
+var BTN_IMG_RIGHT=32;\r
+var gsAlign="left";\r
+var gsBgImage="";\r
+var gsBgColor="#99ccff";\r
+var gsShadow="#cccccc";\r
+var gsTBBgImage="";\r
+var gnShowHideStyle=0;\r
+var goTocInfo=null;\r
+var gbTocInfoInited=false;\r
+var goWebSearch=null;\r
+var gsTBFontFamily="Arial";\r
+var gsTBFontSize="xx-small";\r
+var gsTBFontColor="#003063";\r
+var gsTBDarkColor="#808080";\r
+var gsTBLightColor="#FFFAFA";\r
+var gsTBSelectedBgColor="#639ace";\r
+var gsTBFontSelectedColor="#ffffff";\r
+var gaOnLoads=new Array();\r
+var goWebSearchEnable=true;\r
+\r
+var goShow=null;\r
+var goHide=null;\r
+var goHide2=null;\r
+var goSync=null;\r
+\r
+var goToc=null;\r
+var goIdx=null;\r
+var goFts=null;\r
+var goGlo=null;\r
+var goNext=null;\r
+var goPrev=null;\r
+\r
+var LAYOUT=1;\r
+var HLAYOUT=0;\r
+var VLAYOUT=1;\r
+var ALIGN=2;\r
+var BALIGN=0;\r
+var EALIGN=2;\r
+var goEl=null;\r
+var gnRE=0;\r
+\r
+var gnButtonLayout=0;\r
+var gnShowHide=-1;\r
+\r
+var gbEqualSize=false;\r
+var goCusButton=new Array();\r
+var gsBtnStyle="";\r
+var gaAvenues=null;\r
+var gsCurAveName="";\r
+\r
+var gsIToc=null;\r
+var gsITocS=null;\r
+var gsIIndex=null;\r
+var gsIIndexS=null;\r
+var gsISearch=null;\r
+var gsISearchS=null;\r
+var gsIGlossary=null;\r
+var gsIGlossaryS=null;\r
+var gsIBanner=null;\r
+var gsIGo=null;\r
+\r
+var gsIHide=null;\r
+var gsIPrev=null;\r
+var gsINext=null;\r
+var gsISync=null;\r
+var gsINextD=null;\r
+var gsIPrevD=null;\r
+var gsIWebSearch=null;\r
+var gsIWebSearchD=null;\r
+\r
+var gbAveButttnInited=false;\r
+var goNextParent=null;\r
+var goPrevParent=null;\r
+var gsSearchPrompt="- Search -";\r
+\r
+var gstrSearch="";\r
+var gbPreview=false;\r
+gbPreview=false; \r
+var gsSearchFormTitle="";\r
+var gnHasNavPane=-1;\r
+var gbInitBtn=false;\r
+var gaBtns=new Array();\r
+var gbWhTBar=false;\r
+var goTextFont=null;\r
+var goSelTextFont=null;\r
+var gsPane="";\r
+var gbNeedUpdateAve=false;\r
+var gbUpdateTimerCount=0;\r
+\r
+function setGoImage(sGoImage)\r
+{\r
+ if(sGoImage)\r
+ {\r
+ gsIGo=sGoImage;\r
+ }\r
+}\r
+\r
+function btnBgColor(sType,sColor)\r
+{\r
+ this.sType=sType;\r
+ this.sColor=sColor;\r
+}\r
+\r
+function setBackground(sBgImage)\r
+{\r
+ gsBgImage=sBgImage;\r
+}\r
+\r
+function setBackgroundcolor(sBgColor)\r
+{\r
+ gsBgColor=sBgColor;\r
+}\r
+\r
+function setAlignment(strAlignment)\r
+{\r
+ gnButtonLayout=0;\r
+ if(strAlignment=="left")\r
+ {\r
+ gnButtonLayout=HLAYOUT|BALIGN;\r
+ }\r
+ else if(strAlignment=="right")\r
+ {\r
+ gnButtonLayout=HLAYOUT|EALIGN;\r
+ }\r
+ else if(strAlignment=="top")\r
+ {\r
+ gnButtonLayout=VLAYOUT|BALIGN;\r
+ }\r
+ else if(strAlignment=="bottom")\r
+ {\r
+ gnButtonLayout=VLAYOUT|EALIGN;\r
+ }\r
+}\r
+\r
+function writeStyle(bMiniBar)\r
+{\r
+ var sStyle="";\r
+ sStyle+="<style type='text/css'>\n";\r
+ sStyle+="<!--\n";\r
+ sStyle+=".clsBtnNormal {\n";\r
+ if(!(gbNav4&&!gbNav6))\r
+ if (bMiniBar)\r
+ sStyle+="padding:2px;\n";\r
+ else\r
+ sStyle+="padding:5px;\n";\r
+ sStyle+="cursor:hand;\n";\r
+ sStyle+="font-family:"+gsTBFontFamily+";\n";\r
+ sStyle+="font-size:"+gsTBFontSize+";\n";\r
+ sStyle+="color:"+gsTBFontColor+";}\n";\r
+\r
+ sStyle+=".clsNoBNormal {\n";\r
+ sStyle+="padding-left:2px;padding-right:2px;\n";\r
+ sStyle+="cursor:hand;\n";\r
+ sStyle+="font-family:"+gsTBFontFamily+";\n";\r
+ sStyle+="font-size:"+gsTBFontSize+";\n";\r
+ sStyle+="color:"+gsTBFontColor+";}\n";\r
+\r
+ sStyle+=".clsNotBtn {\n";\r
+ if(!(gbNav4&&!gbNav6))\r
+ if (bMiniBar)\r
+ sStyle+="padding:2px;\n";\r
+ else\r
+ sStyle+="padding:5px;\n";\r
+ sStyle+="font-family:"+gsTBFontFamily+";\n";\r
+ sStyle+="font-size:"+gsTBFontSize+";\n";\r
+ sStyle+="color:"+gsTBFontColor+";}\n";\r
+\r
+ sStyle+=".clsBtnUp{\n";\r
+ if(!(gbNav4&&!gbNav6))\r
+ if (bMiniBar)\r
+ sStyle+="padding:1px;\n";\r
+ else\r
+ sStyle+="padding:4px;\n";\r
+ sStyle+="border-bottom:"+gsTBDarkColor+" 1px solid;\n";\r
+ sStyle+="border-left:"+gsTBLightColor+" 1px solid;\n";\r
+ sStyle+="border-right:"+gsTBDarkColor+" 1px solid;\n";\r
+ sStyle+="border-top:"+gsTBLightColor+" 1px solid;\n";\r
+ sStyle+="cursor:hand;";\r
+ sStyle+="font-family:"+gsTBFontFamily+";\n";\r
+ sStyle+="font-size:"+gsTBFontSize+";\n";\r
+ sStyle+="color:"+gsTBFontColor+";}\n";\r
+\r
+ sStyle+=".clsNoBUp{\n";\r
+ sStyle+="padding-left:2px;padding-right:2px;\n";\r
+ sStyle+="cursor:hand;";\r
+ sStyle+="font-family:"+gsTBFontFamily+";\n";\r
+ sStyle+="font-size:"+gsTBFontSize+";\n";\r
+ sStyle+="color:"+gsTBFontColor+";}\n";\r
+\r
+ sStyle+=".clsBtnDown{\n";\r
+ if(!(gbNav4&&!gbNav6))\r
+ if (bMiniBar)\r
+ sStyle+="padding:1px;\n";\r
+ else\r
+ sStyle+="padding:4px;\n";\r
+ sStyle+="border-bottom:"+gsTBLightColor+" 1px solid;\n";\r
+ sStyle+="border-left:"+gsTBDarkColor+" 1px solid;\n";\r
+ sStyle+="border-right:"+gsTBLightColor+" 1px solid;\n";\r
+ sStyle+="border-top:"+gsTBDarkColor+" 1px solid;\n";\r
+ sStyle+="color:"+gsTBFontColor+";\n";\r
+ sStyle+="cursor:hand;\n";\r
+ sStyle+="font-family:"+gsTBFontFamily+";\n";\r
+ sStyle+="font-size:"+gsTBFontSize+";}\n";\r
+\r
+ sStyle+=".clsNoBDown{\n";\r
+ sStyle+="padding-left:2px;padding-right:2px;\n";\r
+ sStyle+="cursor:hand;";\r
+ sStyle+="font-family:"+gsTBFontFamily+";\n";\r
+ sStyle+="font-size:"+gsTBFontSize+";\n";\r
+ sStyle+="color:"+gsTBFontColor+";}\n";\r
+\r
+ sStyle+=getDefaultButtonFont();\r
+ sStyle+=gsBtnStyle;\r
+ sStyle+=".clsToolbarBackground{\n";\r
+ sStyle+="margin:2px;}\n";\r
+ sStyle+="-->\n";\r
+ sStyle+=" body {\n";\r
+ if (gsBgImage)\r
+ sStyle+="border-top:"+gsBgColor+" 1px solid;}\n";\r
+ else\r
+ sStyle+="border-top:black 1px solid;}\n";\r
+ sStyle+="-->\n";\r
+ sStyle+="</style>\n";\r
+ document.write(sStyle);\r
+}\r
+\r
+function button(sType,sText,nWidth,nHeight)\r
+{\r
+ this.sType=sType;\r
+ this.sText=sText;\r
+ this.nWidth=nWidth;\r
+ this.nHeight=nHeight;\r
+ \r
+ this.aIs=new Array();\r
+ var i=0;\r
+ while(button.arguments.length>i+4)\r
+ {\r
+ if (button.arguments[4+i])\r
+ this.aIs[i]=_getFullPath(_getPath(document.location.href),button.arguments[4+i]);\r
+ else\r
+ this.aIs[i]="";\r
+ i++;\r
+ }\r
+}\r
+\r
+function getImage(oImage,sTitle)\r
+{\r
+ if(oImage.aIs[0])\r
+ {\r
+ var sI="";\r
+ if(sTitle=="")\r
+ sTitle=oImage.sText;\r
+ sI+="<img alt=\""+sTitle+"\" src=\""+oImage.aIs[0]+"\"";\r
+ if(oImage.nWidth>0)\r
+ sI+=" width="+oImage.nWidth;\r
+ if(oImage.nHeight>0)\r
+ sI+=" height="+oImage.nHeight;\r
+ sI+=" border=no align=\"absmiddle\">";\r
+ return sI;\r
+ }\r
+ return "";\r
+}\r
+\r
+function getCurrentAveName()\r
+{\r
+ var oSelect=getElement("avenue");\r
+ if(oSelect)\r
+ return oSelect.value;\r
+ else\r
+ return "";\r
+}\r
+\r
+function updateWebSearch(bEnable)\r
+{\r
+ var oWebSearch=getElement("btnwebsearch");\r
+ var oWebSearchParent=null;\r
+ if(oWebSearch)\r
+ oWebSearchParent=getParentNode(oWebSearch);\r
+ goWebSearchEnable=bEnable;\r
+ if(oWebSearchParent)\r
+ {\r
+ if(bEnable)\r
+ enableButton(oWebSearchParent,goWebSearch);\r
+ else\r
+ disableButton(oWebSearchParent,goWebSearch);\r
+ }\r
+\r
+}\r
+\r
+function setState(oEL,sState)\r
+{\r
+ if(gbNav6)\r
+ oEL.setAttribute("state",sState);\r
+ else\r
+ oEL.state=sState; \r
+}\r
+\r
+function updateAvenueIfNeeded()\r
+{\r
+ gbUpdateTimerCount--;\r
+ if (gbNeedUpdateAve&&gbUpdateTimerCount==0)\r
+ {\r
+ updateAvenue();\r
+ }\r
+}\r
+\r
+function updateAvenue()\r
+{\r
+ var sSelect=getAvenueHTML(gaAvenues);\r
+ var oSelect=getElement("avenue");\r
+ if(oSelect)\r
+ {\r
+ if(gbNav6)\r
+ {\r
+ var oParent=getParentNode(oSelect);\r
+ \r
+ if(oParent)\r
+ {\r
+ removeThis(oSelect);\r
+ oParent.insertAdjacentHTML("afterBegin",sSelect);\r
+ }\r
+ }\r
+ else\r
+ oSelect.outerHTML=sSelect; \r
+ oSelect=getElement("avenue");\r
+ if(isValidAvenue(gaAvenues,gsCurAveName))\r
+ oSelect.value=gsCurAveName;\r
+ }\r
+ updateAveButton();\r
+}\r
+\r
+function initAveButtonObj()\r
+{\r
+ if(!gbAveButttnInited)\r
+ {\r
+ var oNext=getElement("btnavnext");\r
+ if(oNext)\r
+ goNextParent=getParentNode(oNext);\r
+\r
+ var oPrev=getElement("btnavprev");\r
+ if(oPrev)\r
+ goPrevParent=getParentNode(oPrev);\r
+ }\r
+ gbAveButttnInited=true;\r
+}\r
+\r
+function disableAveButton()\r
+{\r
+ initAveButtonObj();\r
+ if(goNextParent)\r
+ disableButton(goNextParent,goNext);\r
+ if(goPrevParent)\r
+ disableButton(goPrevParent,goPrev);\r
+}\r
+\r
+function disableButton(oEl,oBtn)\r
+{\r
+ setState(oEl,"disable");\r
+ var sPF=oEl.className.substring(0,6);\r
+ oEl.className=sPF+"Normal";\r
+ var oIs=getElementsByTag(oEl,"img");\r
+ if(oIs.length>0&&oBtn&&oBtn.aIs&&oBtn.aIs.length>3)\r
+ {\r
+ if(oBtn.aIs[3])\r
+ oIs[0].src=oBtn.aIs[3];\r
+ }\r
+ else\r
+ oEl.style.visibility="hidden";\r
+}\r
+\r
+function enableButton(oEl,oBtn)\r
+{\r
+ setState(oEl,"normal");\r
+ if(oEl==goEl)\r
+ {\r
+ var sPF=oEl.className.substring(0,6);\r
+ oEl.className=sPF+"Up";\r
+ }\r
+ var oIs=getElementsByTag(oEl,"img");\r
+ if(oIs.length>0&&oBtn&&oBtn.aIs&&oBtn.aIs.length>0)\r
+ {\r
+ if(oBtn.aIs[0])\r
+ oIs[0].src=oBtn.aIs[0];\r
+ }\r
+ oEl.style.visibility="visible";\r
+}\r
+\r
+function updateAveButton()\r
+{\r
+ initAveButtonObj(); \r
+ var strAveName=getCurrentAvenue();\r
+ if(strAveName!="")\r
+ {\r
+ if(gaAvenues)\r
+ {\r
+ for(var i=0;i<gaAvenues.length;i++)\r
+ if(gaAvenues[i].sName==strAveName)\r
+ {\r
+ if(goNextParent)\r
+ {\r
+ if(gaAvenues[i].sNext!=null&&gaAvenues[i].sNext!="")\r
+ enableButton(goNextParent,goNext);\r
+ else\r
+ disableButton(goNextParent,goNext);\r
+ }\r
+ if(goPrevParent)\r
+ {\r
+ if(gaAvenues[i].sPrev!=null&&gaAvenues[i].sPrev!="")\r
+ enableButton(goPrevParent,goPrev);\r
+ else\r
+ disableButton(goPrevParent,goPrev);\r
+ } \r
+ break;\r
+ }\r
+ }\r
+ }\r
+ else\r
+ {\r
+ var bNext=false;\r
+ var bPrev=false;\r
+ if(gaAvenues&&gaAvenues.length>0)\r
+ {\r
+ for(var i=0;i<gaAvenues.length&&(!bNext||!bPrev);i++)\r
+ {\r
+ if(!bNext)\r
+ if(gaAvenues[i].sNext!=null&&gaAvenues[i].sNext!="")\r
+ bNext=true; \r
+ if(!bPrev)\r
+ if(gaAvenues[i].sPrev!=null&&gaAvenues[i].sPrev!="")\r
+ bPrev=true; \r
+ }\r
+ }\r
+ if(goNextParent)\r
+ {\r
+ if(bNext)\r
+ enableButton(goNextParent,goNext);\r
+ else\r
+ disableButton(goNextParent,goNext);\r
+ }\r
+ \r
+ if(goPrevParent)\r
+ {\r
+ if(bPrev)\r
+ enableButton(goPrevParent,goPrev);\r
+ else\r
+ disableButton(goPrevParent,goPrev);\r
+ }\r
+ }\r
+ \r
+}\r
+\r
+function isValidAvenue(aAvenues,sValue)\r
+{\r
+ if(aAvenues)\r
+ {\r
+ for(var i=0;i<aAvenues.length;i++)\r
+ {\r
+ if(aAvenues[i].sName==sValue)\r
+ return true;\r
+ }\r
+ }\r
+ return false;\r
+}\r
+\r
+function getAvenueHTML(aAvenues)\r
+{\r
+ var sSelect="<select id=\"avenue\" size=\"1\" name=\"avenue\" onchange=\"updateAveButton();\">";\r
+ sSelect+="<option value=\"\" selected> - Select Avenue - </option>";\r
+ if(aAvenues)\r
+ {\r
+ for(var i=0;i<aAvenues.length;i++)\r
+ {\r
+ sSelect+="<option value=\""+aAvenues[i].sName+"\">"+aAvenues[i].sName+"</option>";\r
+ }\r
+ }\r
+ sSelect+="</select>";\r
+ return sSelect;\r
+}\r
+\r
+function addAvenueSelection()\r
+{\r
+ var oMsg=new whMessage(WH_MSG_GETAVIAVENUES,this,1,new Object());\r
+ var sButton="";\r
+ if(SendMessage(oMsg))\r
+ {\r
+ sButton=getAvenueHTML(oMsg.oParam.aAvenues);\r
+ }\r
+ else\r
+ {\r
+ sButton=getAvenueHTML(null);\r
+ }\r
+ gaButtons[gaButtons.length]="<td NOWRAP align=\"center\" valign=\"middle\">"+sButton+"</td>";\r
+}\r
+\r
+function setSearchFormTitle(sTitle)\r
+{\r
+ gsSearchFormTitle=sTitle;\r
+}\r
+\r
+function highLightIfNeeded()\r
+{\r
+ if(document.searchForm.searchString.value==gsSearchPrompt)\r
+ {\r
+ document.searchForm.searchString.select();\r
+ }\r
+}\r
+\r
+function addSearchForm()\r
+{\r
+ var sPropmptString=gsSearchPrompt;\r
+\r
+ var nWidth=20;\r
+ if(!nWidth) nWidth=20;\r
+ if(gbNav4) nWidth=nWidth*.6;\r
+\r
+ if(gsSearchFormTitle)\r
+ sPropmptString="";\r
+ var sButton="<table CELLSPACING=0 CELLPADDING=1><tr><td valign=\"middle\" NOWRAP class=\"clsNotBtn\"><span class=\"btnsearchform\">"+_textToHtml(gsSearchFormTitle)+"</span></td><td NOWRAP valign=\"middle\"><input class=\"inputsearchform\" type=\"text\" onfocus=\"highLightIfNeeded();\" name=\"searchString\" value=\""+sPropmptString+"\" size=\""+nWidth+"\"></td>";\r
+ if(gbNav6)\r
+ sButton="<form name=\"searchForm\" method=\"POST\" action=\"javascript:searchB()\">"+sButton;\r
+ if("image"=="text")\r
+ {\r
+ sButton+="<td NOWRAP valign=\"middle\"><a class=\"searchbtn\" href=\"javascript:void(0);\" onclick=\"searchForm.submit(); return false;\"></a></td>";\r
+ }\r
+ else if("image"=="image"&&gsIGo)\r
+ {\r
+ sButton+="<td NOWRAP valign=\"middle\"><a class=\"searchbtn\" href=\"javascript:void(0);\" onclick=\"searchForm.submit(); return false;\">"\r
+ sButton+="<img alt=\"Go\" src=\""+gsIGo+"\" border=0 align=\"absmiddle\"></a></td>";\r
+ }\r
+ sButton+="</tr></table>";\r
+ if(gbNav6)\r
+ sButton+="</form>";\r
+ var nBtn=gaButtons.length;\r
+ gaButtons[nBtn]="<td NOWRAP align=\"center\" valign=\"middle\">"+sButton+"</td>";\r
+ gaTypes[nBtn]="searchform";\r
+}\r
+\r
+function getShowHide()\r
+{\r
+ var sText="";\r
+ var sI="";\r
+ if(hasNavPane())\r
+ {\r
+ if(goHide)\r
+ {\r
+ if(gnShowHideStyle&BTN_TEXT)\r
+ sText=goHide.sText;\r
+ if(gnShowHideStyle&BTN_IMG)\r
+ sI=getImage(goHide,"Hide");\r
+ }\r
+ }\r
+ else\r
+ {\r
+ if(goShow)\r
+ {\r
+ if(gnShowHideStyle&BTN_TEXT)\r
+ sText=goShow.sText;\r
+ if(gnShowHideStyle&BTN_IMG)\r
+ sI=getImage(goShow,"Show");\r
+ }\r
+ }\r
+ var sButton=genButton(sText,sI,gnShowHideStyle);\r
+ return sButton;\r
+}\r
+\r
+function addBanner(sImage)\r
+{\r
+ if(sImage)\r
+ {\r
+ var nBtn=gaButtons.length;\r
+ gaButtons[nBtn]="<td NOWRAP align=\"center\" valign=\"middle\"> <a href=\"javascript:void(0);\" onclick=\"showBanner();return false;\"><img alt=\"About WebHelp\"src=\""+sImage+"\" border=no align=\"absmiddle\"></a></td>";\r
+ gaTypes[nBtn]="banner";\r
+ }\r
+}\r
+\r
+function showBanner()\r
+{\r
+ if (!gbPreview)\r
+ {\r
+ var nWidth=360;\r
+ var nHeight=240;\r
+ var nScreenWidth=screen.width;\r
+ var nScreenHeight=screen.height;\r
+ var nLeft=(nScreenWidth-nWidth)/2;\r
+ var nTop=(nScreenHeight-nHeight)/2;\r
+ if (gbIE4)\r
+ {\r
+ if (gbIE5)\r
+ nHeight+=20;\r
+ else\r
+ nHeight+=40;\r
+ window.showModalDialog("whskin_banner.htm","","dialogHeight:"+nHeight+"px;dialogWidth:"+nWidth+"px;resizable:no;status:no;scroll:no;help:no;center:yes;");\r
+ }\r
+ else\r
+ window.open("whskin_banner.htm","banner","dependent,innerHeight="+nHeight+",innerWidth="+nWidth+",height="+nHeight+",width="+nWidth+",resizable=no,menubar=no,location=no,personalbar=no,status=no,scrollbar=no,toolbar=no,screenX="+nLeft+",screenY="+nTop);\r
+ }\r
+}\r
+\r
+function addButton(sType,nStyle,sTitle,sHref,sOnClick,sOnMouseOver,sOnLoad,nWidth,nHeight,sI1,sI2,sI3,sI4,sI5,sI6)\r
+{\r
+ var sButton="";\r
+ var bMini=false;\r
+ var sText="";\r
+ var sI="";\r
+ var bState=false;\r
+ var nBtn=gaButtons.length;\r
+ var bHref=false;\r
+ if(sType=="show"&&isShowHideEnable())\r
+ {\r
+ var svTitle="Show Navigation Component";\r
+ sButton="<a title=\""+svTitle+"\" id=\"btnshowhide\" class=\"btnshow\" href=\"javascript:void(0);\" onclick=\"showHidePane();return false;\">";\r
+ gnShowHideStyle=nStyle;\r
+ goShow=new button(sType,sTitle,nWidth,nHeight,sI1,sI2,sI3);\r
+ gaObjBtns[nBtn]=goShow;\r
+ if(gnShowHide!=-1)\r
+ {\r
+ nBtn=gnShowHide;\r
+ }\r
+ else\r
+ {\r
+ gnShowHide=nBtn;\r
+ }\r
+ sButton+=getShowHide();\r
+ sButton+="</a>";\r
+ bState=true;\r
+ }\r
+ else if(sType=="hide"&&isShowHideEnable())\r
+ {\r
+ var svTitle="Hide Navigation Component";\r
+ sButton="<a title=\""+svTitle+"\" id=\"btnshowhide\" class=\"btnhide\" href=\"javascript:void(0);\" onclick=\"showHidePane();return false;\">";\r
+ gnShowHideStyle=nStyle;\r
+ goHide=new button(sType,sTitle,nWidth,nHeight,sI1,sI2,sI3);\r
+ gaObjBtns[nBtn]=goHide;\r
+ if(gnShowHide!=-1)\r
+ {\r
+ nBtn=gnShowHide;\r
+ }\r
+ else\r
+ {\r
+ gnShowHide=nBtn;\r
+ }\r
+ sButton+=getShowHide();\r
+ sButton+="</a>";\r
+ bState=true;\r
+ }\r
+ else if(sType=="hide2"&&(!gbNav4))\r
+ {\r
+ var svTitle="Hide Navigation Component";\r
+ sButton="<a title=\""+svTitle+"\" id=\"btnhide\" class=\"btnhide\" href=\"javascript:void(0);\" onclick=\"showHidePane();return false;\">";\r
+ gnShowHideStyle=nStyle;\r
+ if(!sI1)\r
+ sI1=gsIHide;\r
+ goHide2=new button(sType,sTitle,nWidth,nHeight,sI1,sI2,sI3);\r
+ gaObjBtns[nBtn]=goHide2;\r
+ if(nStyle&BTN_TEXT)\r
+ sText=goHide2.sText\r
+ \r
+ if(nStyle&BTN_IMG)\r
+ sI=getImage(goHide2,svTitle);\r
+ sButton+=genButton(sText,sI,nStyle);\r
+ sButton+="</a>";\r
+ bMini=true;\r
+ }\r
+ else if(sType=="synctoc")\r
+ {\r
+ var svTitle="Sync TOC";\r
+ sButton="<a title=\""+svTitle+"\" id=\"btnsynctoc\" class=\"btnsynctoc\" href=\"javascript:void(0);\" onclick=\"syncWithShow();return false;\">";\r
+ if(!sI1)\r
+ sI1=gsISync;\r
+ goSync=new button(sType,sTitle,nWidth,nHeight,sI1,sI2,sI3);\r
+ gaObjBtns[nBtn]=goSync;\r
+ if(nStyle&BTN_TEXT)\r
+ sText=goSync.sText\r
+ \r
+ if(nStyle&BTN_IMG)\r
+ sI=getImage(goSync,svTitle);\r
+ sButton+=genButton(sText,sI,nStyle);\r
+ sButton+="</a>";\r
+ bMini=true;\r
+ }\r
+ else if(sType=="toc")\r
+ {\r
+ var svTitle="Contents";\r
+ sButton="<a title=\""+svTitle+"\" id=\"btntoc\" class=\"btntoc\" href=\"javascript:void(0);\" onclick=\"showToc();return false;\">";\r
+ if(!sI1)\r
+ sI1=gsIToc;\r
+ if(!sI2)\r
+ sI2=gsITocS;\r
+ if(!sI4)\r
+ sI4=gsITocS;\r
+ goToc=new button(sType,sTitle,nWidth,nHeight,sI1,sI2,sI3,sI4,sI5,sI6);\r
+ gaObjBtns[nBtn]=goToc;\r
+ if(nStyle&BTN_TEXT)\r
+ sText=goToc.sText\r
+ \r
+ if(nStyle&BTN_IMG)\r
+ sI=getImage(goToc,svTitle);\r
+ sButton+=genButton(sText,sI,nStyle);\r
+ sButton+="</a>";\r
+ bState=true;\r
+ }\r
+ else if(sType=="idx")\r
+ {\r
+ var svTitle="Index";\r
+ sButton="<a title=\""+svTitle+"\" id=\"btnidx\" class=\"btnidx\" href=\"javascript:void(0);\" onclick=\"showIndex();return false;\">";\r
+ if(!sI1)\r
+ sI1=gsIIndex;\r
+ if(!sI2)\r
+ sI2=gsIIndexS;\r
+ if(!sI4)\r
+ sI4=gsIIndexS;\r
+ goIdx=new button(sType,sTitle,nWidth,nHeight,sI1,sI2,sI3,sI4,sI5,sI6);\r
+ gaObjBtns[nBtn]=goIdx;\r
+ if(nStyle&BTN_TEXT)\r
+ sText=goIdx.sText\r
+ \r
+ if(nStyle&BTN_IMG)\r
+ sI=getImage(goIdx,svTitle);\r
+ sButton+=genButton(sText,sI,nStyle);\r
+ sButton+="</a>";\r
+ bState=true;\r
+ }\r
+ else if(sType=="fts")\r
+ {\r
+ var svTitle="Search";\r
+ sButton="<a title=\""+svTitle+"\" id=\"btnfts\" class=\"btnfts\" href=\"javascript:void(0);\" onclick=\"showFts();return false;\">";\r
+ if(!sI1)\r
+ sI1=gsISearch;\r
+ if(!sI2)\r
+ sI2=gsISearchS;\r
+ if(!sI4)\r
+ sI4=gsISearchS;\r
+ goFts=new button(sType,sTitle,nWidth,nHeight,sI1,sI2,sI3,sI4,sI5,sI6);\r
+ gaObjBtns[nBtn]=goFts;\r
+ if(nStyle&BTN_TEXT)\r
+ sText=goFts.sText\r
+ \r
+ if(nStyle&BTN_IMG)\r
+ sI=getImage(goFts,svTitle);\r
+ sButton+=genButton(sText,sI,nStyle);\r
+ sButton+="</a>";\r
+ bState=true;\r
+ }\r
+ else if(sType=="glo")\r
+ {\r
+ var svTitle="Glossary";\r
+ sButton="<a title=\""+svTitle+"\" id=\"btnglo\" class=\"btnglo\" href=\"javascript:void(0);\" onclick=\"showGlossary();return false;\">";\r
+ if(!sI1)\r
+ sI1=gsIGlossary;\r
+ if(!sI2)\r
+ sI2=gsIGlossaryS;\r
+ if(!sI4)\r
+ sI4=gsIGlossaryS;\r
+ goGlo=new button(sType,sTitle,nWidth,nHeight,sI1,sI2,sI3,sI4,sI5,sI6);\r
+ gaObjBtns[nBtn]=goGlo;\r
+ if(nStyle&BTN_TEXT)\r
+ sText=goGlo.sText\r
+ \r
+ if(nStyle&BTN_IMG)\r
+ sI=getImage(goGlo,svTitle);\r
+ sButton+=genButton(sText,sI,nStyle);\r
+ sButton+="</a>";\r
+ bState=true;\r
+ }\r
+ else if(sType=="avnext")\r
+ {\r
+ var svTitle="Next Topic";\r
+ sButton="<a title=\""+svTitle+"\" id=\"btnavnext\" class=\"btnavnext\" href=\"javascript:void(0);\" onclick=\"goAveNext();return false;\">";\r
+ if(!sI1)\r
+ sI1=gsINext;\r
+ if(!sI4)\r
+ sI4=gsINextD;\r
+ goNext=new button(sType,sTitle,nWidth,nHeight,sI1,sI2,sI3,sI4,sI5,sI6);\r
+ gaObjBtns[nBtn]=goNext;\r
+ if(nStyle&BTN_TEXT)\r
+ sText=goNext.sText\r
+ \r
+ if(nStyle&BTN_IMG)\r
+ sI=getImage(goNext,svTitle);\r
+ sButton+=genButton(sText,sI,nStyle);\r
+ sButton+="</a>";\r
+ bMini=true;\r
+ }\r
+ else if(sType=="avprev")\r
+ {\r
+ var svTitle="Previous Topic";\r
+ sButton="<a title=\""+svTitle+"\" id=\"btnavprev\" class=\"btnavprev\" href=\"javascript:void(0);\" onclick=\"goAvePrev();return false;\">";\r
+ if(!sI1)\r
+ sI1=gsIPrev;\r
+ if(!sI4)\r
+ sI4=gsIPrevD;\r
+ goPrev=new button(sType,sTitle,nWidth,nHeight,sI1,sI2,sI3,sI4,sI5,sI6);\r
+ gaObjBtns[nBtn]=goPrev;\r
+ if(nStyle&BTN_TEXT)\r
+ sText=goPrev.sText\r
+ \r
+ if(nStyle&BTN_IMG)\r
+ sI=getImage(goPrev,svTitle);\r
+ sButton+=genButton(sText,sI,nStyle);\r
+ sButton+="</a>";\r
+ bMini=true;\r
+ }\r
+ else if(sType=="blankblock")\r
+ {\r
+ gaButtons[nBtn]=null;\r
+ gaTypes[nBtn]=sType;\r
+ }\r
+ else if(sType=="websearch")\r
+ {\r
+ var svTitle="WebSearch";\r
+ sButton="<a title=\""+svTitle+"\" id=\"btnwebsearch\" class=\"btnwebsearch\" href=\"javascript:void(0);\" onclick=\"doWebSearch();return false;\">";\r
+ if(!sI1)\r
+ sI1=gsIWebSearch;\r
+ if(!sI4)\r
+ sI4=gsIWebSearchD;\r
+ goWebSearch=new button(sType,sTitle,nWidth,nHeight,sI1,sI2,sI3,sI4,sI5,sI6);\r
+ gaObjBtns[nBtn]=goWebSearch;\r
+ if(nStyle&BTN_TEXT)\r
+ sText=goWebSearch.sText\r
+ \r
+ if(nStyle&BTN_IMG)\r
+ sI=getImage(goWebSearch,svTitle);\r
+ sButton+=genButton(sText,sI,nStyle);\r
+ sButton+="</a>";\r
+ }\r
+ else if(sType.indexOf("custom")==0)\r
+ {\r
+ var nCusBtnIdx=goCusButton.length;\r
+ goCusButton[nCusBtnIdx]=new cusButton(sType,sTitle,sOnClick,sOnMouseOver,sOnLoad,nWidth,nHeight,sI1,sI2,sI3);\r
+ gaObjBtns[nBtn]=goCusButton[nCusBtnIdx];\r
+ var re=new RegExp("\"","g");\r
+ var svTitle=sTitle.replace(re, """);\r
+ if(sHref&&sHref.length!=0)\r
+ {\r
+ sButton="<a title=\""+svTitle+"\" id=\"btn"+sType+"\" class=\"btn"+sType+"\" target=\"bsscright\" href=\""+sHref+"\" onclick=\"cusOnClick("+nCusBtnIdx+");";\r
+ bHref=true;\r
+ }\r
+ else\r
+ sButton="<a title=\""+svTitle+"\" id=\"btn"+sType+"\" class=\"btn"+sType+"\" href=\"javascript:void(0);\" onclick=\"cusOnClick("+nCusBtnIdx+");return false;";\r
+ sButton+="\" onmouseover=\"cusOnMouseOver("+nCusBtnIdx+");\" title=\""+sType+"\">";\r
+ if(nStyle&BTN_TEXT)\r
+ sText=sTitle;\r
+ if(nStyle&BTN_IMG)\r
+ sI+=getImage(goCusButton[nCusBtnIdx],sTitle);\r
+ sButton+=genButton(sText,sI,nStyle);\r
+ sButton+="</a>";\r
+ }\r
+ if(sButton.length!=0)\r
+ {\r
+ var btnClass="";\r
+ if(sText||bMini)\r
+ btnClass="clsBtnNormal";\r
+ else\r
+ btnClass="clsNoBNormal";\r
+\r
+ if(!bState)\r
+ {\r
+ if(bHref)\r
+ gaButtons[nBtn]="<td NOWRAP valign=\"middle\" align=\"center\" class="+btnClass+" onclick=\"onBtnClick(event);\" onmousedown=\"onBtnMouseDown(event, "+nBtn+");\" onmouseup=\"onBtnMouseUp(event, "+nBtn+");\" onmouseover=\"onBtnMouseOver(event, "+nBtn+");\" onmouseout=\"onBtnMouseOut(event, "+nBtn+");\">"+sButton+"</td>";\r
+ else\r
+ gaButtons[nBtn]="<td NOWRAP valign=\"middle\" align=\"center\" class="+btnClass+" onclick=\"onBtnClick(event);return false;\" onmousedown=\"onBtnMouseDown(event, "+nBtn+");\" onmouseup=\"onBtnMouseUp(event, "+nBtn+");\" onmouseover=\"onBtnMouseOver(event, "+nBtn+");\" onmouseout=\"onBtnMouseOut(event, "+nBtn+");\">"+sButton+"</td>";\r
+ }\r
+ else\r
+ gaButtons[nBtn]="<td NOWRAP valign=\"middle\" align=\"center\" class="+btnClass+" state=\"up\" onclick=\"onBtnClick(event);return false;\" onmousedown=\"onBtnMouseDown(event, "+nBtn+");\" onmouseup=\"onBtnMouseUp(event, "+nBtn+");\" onmouseover=\"onBtnMouseOver(event, "+nBtn+");\" onmouseout=\"onBtnMouseOut(event, "+nBtn+");\">"+sButton+"</td>";\r
+ gaTypes[nBtn]=sType;\r
+ }\r
+\r
+ if(sType=="avenuesel")\r
+ addAvenueSelection();\r
+ else if(sType=="searchform")\r
+ addSearchForm();\r
+ else if(sType=="banner")\r
+ {\r
+ if(!sI1)\r
+ sI1=gsIBanner;\r
+ addBanner(sI1);\r
+ }\r
+}\r
+\r
+function isShowHideEnable()\r
+{\r
+ if(gbIE4)\r
+ return true;\r
+ else\r
+ return false;\r
+}\r
+\r
+function genButton(sText,sI,nStyle)\r
+{\r
+ var sButton="";\r
+ var sShowText=_textToHtml(sText);\r
+ if (gbNav4 && !gbNav6)\r
+ sShowText += " ";\r
+ if(sText!=""&&sI!="")\r
+ {\r
+ if(nStyle&BTN_IMG_TOP)\r
+ sButton+=sI+"<br>"+ sShowText;\r
+ else if(nStyle&BTN_IMG_BOTTOM)\r
+ sButton+=sText+"<br>"+sI;\r
+ else if(nStyle&BTN_IMG_RIGHT)\r
+ sButton+=sText+" "+sI;\r
+ else\r
+ sButton+=sI+" "+sShowText;\r
+ }\r
+ else if(sText!="")\r
+ {\r
+ sButton+=sShowText;\r
+ }\r
+ else if(sI!="")\r
+ {\r
+ sButton+=sI;\r
+ }\r
+ return sButton;\r
+}\r
+\r
+function searchB()\r
+{\r
+ var onMsg=new whMessage(WH_MSG_SHOWFTS,this,1,null);\r
+ SendMessage(onMsg);\r
+\r
+ var oMsg=new whMessage(WH_MSG_SEARCHTHIS,this,1,document.searchForm.searchString.value);\r
+ if(!SendMessage(oMsg))\r
+ gstrSearch=document.searchForm.searchString.value;\r
+ else\r
+ gstrSearch="";\r
+}\r
+\r
+function ReSortToolbarButtons()\r
+{\r
+ var bSearchEnabled=isSearchEnabled();\r
+ var strOrder="";\r
+ var oMsg=new whMessage(WH_MSG_TOOLBARORDER,this,1,null);\r
+ if(SendMessage(oMsg))\r
+ {\r
+ strOrder=oMsg.oParam;\r
+ }\r
+ if(strOrder.length>0)\r
+ {\r
+ gaOrders=strOrder.split("|");\r
+ var aTempButtons=new Array();\r
+ var ti=0;\r
+ for(var si=0;si<gaOrders.length;si++)\r
+ {\r
+ if(gaOrders[si]!="searchform"||bSearchEnabled)\r
+ {\r
+ var sb=-1;\r
+ for(var st=0;st<gaTypes.length;st++)\r
+ {\r
+ if(gaOrders[si]==gaTypes[st])\r
+ {\r
+ sb=st;\r
+ break;\r
+ }\r
+ }\r
+ if(sb!=-1)\r
+ {\r
+ aTempButtons[aTempButtons.length]=gaButtons[sb];\r
+ }\r
+ }\r
+ }\r
+ gaButtons=aTempButtons;\r
+ }\r
+}\r
+\r
+function isSyncEnabled()\r
+{\r
+ var bEnabled=false;\r
+ var oMsg=new whMessage(WH_MSG_ISSYNCSSUPPORT,this,1,null);\r
+ if(SendMessage(oMsg))\r
+ {\r
+ bEnabled=oMsg.oParam;\r
+ }\r
+ return bEnabled;\r
+}\r
+\r
+function isAvenueEnabled()\r
+{\r
+ var bEnabled=false;\r
+ var oMsg=new whMessage(WH_MSG_ISAVENUESUPPORT,this,1,null);\r
+ if(SendMessage(oMsg))\r
+ {\r
+ bEnabled=oMsg.oParam;\r
+ }\r
+ return bEnabled;\r
+}\r
+\r
+function isSearchEnabled()\r
+{\r
+ var bEnabled=false;\r
+ var oMsg=new whMessage(WH_MSG_ISSEARCHSUPPORT,this,1,null);\r
+ if(SendMessage(oMsg))\r
+ {\r
+ bEnabled=oMsg.oParam;\r
+ }\r
+ return bEnabled;\r
+}\r
+\r
+function ReSortMinibarButtons()\r
+{\r
+ var bSyncEnabled=isSyncEnabled();\r
+ var bAvenueEnabled=isAvenueEnabled();\r
+ var strOrder="";\r
+ var oMsg=new whMessage(WH_MSG_MINIBARORDER,this,1,null);\r
+ if(SendMessage(oMsg))\r
+ {\r
+ strOrder=oMsg.oParam;\r
+ }\r
+ if(strOrder.length>0)\r
+ {\r
+ gaOrders=strOrder.split("|");\r
+ var aTempButtons=new Array();\r
+ var ti=0;\r
+ for(var si=0;si<gaOrders.length;si++)\r
+ {\r
+ if((gaOrders[si]!="synctoc"||bSyncEnabled)&&\r
+ ((gaOrders[si]!="avnext"&&gaOrders[si]!="avprev")||bAvenueEnabled))\r
+ {\r
+ var sb=-1;\r
+ for(var st=0;st<gaTypes.length;st++)\r
+ {\r
+ if(gaOrders[si]==gaTypes[st])\r
+ {\r
+ sb=st;\r
+ break;\r
+ }\r
+ }\r
+ if(sb!=-1)\r
+ {\r
+ aTempButtons[aTempButtons.length]=gaButtons[sb];\r
+ }\r
+ }\r
+ }\r
+ gaButtons=aTempButtons;\r
+ }\r
+}\r
+\r
+function writeToolBar()\r
+{\r
+ var sHTML="";\r
+ if(gaButtons.length>0)\r
+ {\r
+ var strHeight="100%";\r
+ var strWidth="100%";\r
+ if (gbNav4)\r
+ {\r
+ strHeight=window.innerHeight-4;\r
+ strWidth=window.innerWidth-4;\r
+ }\r
+ if (gbIE4)\r
+ {\r
+ strHeight=document.body.clientHeight-4;\r
+ strWidth=document.body.clientWidth-4;\r
+ }\r
+ if(gbNav6)\r
+ sHTML="<table class=\"clsToolbarBackground\" cellpadding=\"0\" cellspacing=\"0\" border=\"0\" height=\""+strHeight+"\" width=\""+strWidth+"\">";\r
+ else\r
+ sHTML="<form name=\"searchForm\" method=\"POST\" action=\"javascript:searchB()\"><table class=\"clsToolbarBackground\" cellpadding=\"0\" cellspacing=\"0\" border=\"0\" height=\""+strHeight+"\" width=\""+strWidth+"\">";\r
+ if((gnButtonLayout&LAYOUT)==HLAYOUT)\r
+ {\r
+ sHTML+="<tr>";\r
+ for(var i=0;i<gaButtons.length;i++)\r
+ {\r
+ if(gaButtons[i])\r
+ sHTML+=gaButtons[i];\r
+ else\r
+ sHTML+="<td width=\"100%\"></td>";\r
+ }\r
+ sHTML+="</tr>";\r
+ }\r
+ else\r
+ {\r
+ for(var i=0;i<gaButtons.length;i++)\r
+ {\r
+ if(gaButtons[i])\r
+ sHTML+="<tr width=\"100%\">"+gaButtons[i]+"</tr>";\r
+ else\r
+ sHTML+="<tr height=\"100%\"><td></td></tr>";\r
+ }\r
+ }\r
+ if(gbNav6)\r
+ sHTML+="</table>";\r
+ else\r
+ sHTML+="</table></form>";\r
+ }\r
+ document.write(sHTML);\r
+ if(document.body)\r
+ document.body.onselectstart=onSelect;\r
+ updateAveButton();\r
+}\r
+\r
+function hasNavPane()\r
+{\r
+ if(gnHasNavPane==-1)\r
+ {\r
+ gnHasNavPane=0;\r
+ var oParam=new Object();\r
+ oParam.bVisible=false;\r
+ var oMsg=new whMessage(WH_MSG_ISPANEVISIBLE,this,1,oParam);\r
+ if(SendMessage(oMsg))\r
+ {\r
+ if(oParam.bVisible)\r
+ gnHasNavPane=1;\r
+ }\r
+ \r
+ }\r
+ if(gnHasNavPane==1)\r
+ return true;\r
+ else\r
+ return false;\r
+}\r
+\r
+function getTocInfo()\r
+{\r
+ var oParam=new Object();\r
+ oParam.oTocInfo=null;\r
+ var oMsg=new whMessage(WH_MSG_GETTOCPATHS,this,1,oParam);\r
+ if(SendMessage(oMsg))\r
+ {\r
+ goTocInfo=oParam.oTocInfo;\r
+ gbTocInfoInited=true;\r
+ }\r
+}\r
+\r
+function onBtnClick(e)\r
+{\r
+ var oEl=null;\r
+ var oElo=null;\r
+ if(gbNav6)\r
+ {\r
+ oElo=e.target;\r
+ while(oElo&&oElo.nodeName.indexOf("#")==0) oElo=getParentNode(oElo);\r
+ oEl=oElo;\r
+ }\r
+ else\r
+ {\r
+ oElo=event.srcElement;\r
+ oEl=oElo;\r
+ event.cancelBubble=true;\r
+ }\r
+ while(-1==oEl.className.indexOf("clsBtn")&&-1==oEl.className.indexOf("clsNoB"))\r
+ {\r
+ oEl=getParentNode(oEl);\r
+ if(!oEl) return;\r
+ }\r
+ if(oElo.tagName=="A"||oElo.tagName=="IMG") return true;\r
+ var oaA=getElementsByTag(oElo,"A");\r
+ if(oaA&&oaA.length)\r
+ {\r
+ var oA=oaA[0];\r
+ if(gbNav6)\r
+ {\r
+ var sCmd=oA.getAttribute("onclick");\r
+ var nCmd=sCmd.indexOf("return false;");\r
+ if(nCmd!=-1);\r
+ sCmd=sCmd.substring(0,nCmd);\r
+ setTimeout(sCmd,1);\r
+ }\r
+ else\r
+ oA.onclick();\r
+ }\r
+}\r
+\r
+function onBtnMouseDown(e,nBtn)\r
+{\r
+ var oEl=null;\r
+ if(gbNav6)\r
+ {\r
+ var oElo=e.target;\r
+ while(oElo&&oElo.nodeName.indexOf("#")==0) oElo=getParentNode(oElo);\r
+ oEl=oElo;\r
+ }\r
+ else\r
+ {\r
+ oEl=event.srcElement;\r
+ event.cancelBubble=true;\r
+ }\r
+ while(-1==oEl.className.indexOf("clsBtn")&&-1==oEl.className.indexOf("clsNoB"))\r
+ {\r
+ oEl=getParentNode(oEl);\r
+ if(!oEl) return;\r
+ }\r
+ var sPF=oEl.className.substring(0,6);\r
+ var oIs=getElementsByTag(oEl,"img");\r
+ if(oIs.length>0&&gaObjBtns[nBtn]&&gaObjBtns[nBtn].aIs&&gaObjBtns[nBtn].aIs.length>2)\r
+ {\r
+ if(gaObjBtns[nBtn].aIs[2])\r
+ oIs[0].src=gaObjBtns[nBtn].aIs[2];\r
+ }\r
+ var sState=getState(oEl);\r
+ if(sState!="disable")\r
+ {\r
+ oEl.className=sPF+"Down";\r
+ }\r
+}\r
+\r
+function onBtnMouseUp(e,nBtn)\r
+{\r
+ var oEl=null;\r
+ if(gbNav6)\r
+ {\r
+ var oElo=e.target;\r
+ while(oElo&&oElo.nodeName.indexOf("#")==0) oElo=getParentNode(oElo);\r
+ oEl=oElo;\r
+ }\r
+ else\r
+ {\r
+ oEl=event.srcElement;\r
+ event.cancelBubble=true;\r
+ }\r
+ while(-1==oEl.className.indexOf("clsBtn")&&-1==oEl.className.indexOf("clsNoB"))\r
+ {\r
+ oEl=getParentNode(oEl);\r
+ if(!oEl) return;\r
+ }\r
+ var sPF=oEl.className.substring(0,6);\r
+ var sState=getState(oEl);\r
+ if(sState=="down"||sState=="disable")\r
+ {\r
+ var oIs=getElementsByTag(oEl,"img");\r
+ if(oIs.length>0&&gaObjBtns[nBtn]&&gaObjBtns[nBtn].aIs&&gaObjBtns[nBtn].aIs.length>3)\r
+ {\r
+ if(gaObjBtns[nBtn].aIs[3])\r
+ oIs[0].src=gaObjBtns[nBtn].aIs[3];\r
+ }\r
+ }\r
+ else\r
+ {\r
+ var oIs=getElementsByTag(oEl,"img");\r
+ if(oIs.length>0&&gaObjBtns[nBtn]&&gaObjBtns[nBtn].aIs&&gaObjBtns[nBtn].aIs.length>0)\r
+ {\r
+ if(gaObjBtns[nBtn].aIs[0])\r
+ oIs[0].src=gaObjBtns[nBtn].aIs[0];\r
+ }\r
+ }\r
+ if(goEl==oEl)\r
+ {\r
+ if(sState!="down"&&sState!="disable")\r
+ {\r
+ oEl.className=sPF+"Up";\r
+ }\r
+ }\r
+}\r
+\r
+function getState(oEl)\r
+{\r
+ var sState="";\r
+ if(gbNav6)\r
+ sState=oEl.getAttribute("state");\r
+ else\r
+ if(oEl.state)\r
+ sState=oEl.state;\r
+ return sState;\r
+}\r
+\r
+function onBtnMouseOver(e,nBtn)\r
+{\r
+ markButton(e);\r
+ var oEl=null;\r
+ if(gbNav6)\r
+ {\r
+ var oElo=e.target;\r
+ while(oElo&&oElo.nodeName.indexOf("#")==0) oElo=getParentNode(oElo);\r
+ oEl=oElo;\r
+ }\r
+ else\r
+ {\r
+ oEl=event.srcElement;\r
+ event.cancelBubble=true;\r
+ }\r
+ while(-1==oEl.className.indexOf("clsBtn")&&-1==oEl.className.indexOf("clsNoB"))\r
+ {\r
+ oEl=getParentNode(oEl);\r
+ if(!oEl) return;\r
+ }\r
+ var sPF=oEl.className.substring(0,6);\r
+ var sState=getState(oEl);\r
+ if(sState=="down"||sState=="disable")\r
+ {\r
+ if(sState=="down")\r
+ oEl.className=sPF+"Down";\r
+ var oIs=getElementsByTag(oEl,"img");\r
+ if(oIs.length>0&&gaObjBtns[nBtn]&&gaObjBtns[nBtn].aIs&&gaObjBtns[nBtn].aIs.length>4)\r
+ {\r
+ if(gaObjBtns[nBtn].aIs[4])\r
+ oIs[0].src=gaObjBtns[nBtn].aIs[4];\r
+ }\r
+ }\r
+ else\r
+ {\r
+ oEl.className=sPF+"Up";\r
+ var oIs=getElementsByTag(oEl,"img");\r
+ if(oIs.length>0&&gaObjBtns[nBtn]&&gaObjBtns[nBtn].aIs&&gaObjBtns[nBtn].aIs.length>1)\r
+ {\r
+ if(gaObjBtns[nBtn].aIs[1])\r
+ oIs[0].src=gaObjBtns[nBtn].aIs[1];\r
+ }\r
+ }\r
+}\r
+\r
+function onBtnMouseOut(e,nBtn)\r
+{\r
+ goEl=null;\r
+ var oEl=null;\r
+ if(gbNav6)\r
+ {\r
+ var oElo=e.target;\r
+ while(oElo&&oElo.nodeName.indexOf("#")==0) oElo=getParentNode(oElo);\r
+ oEl=oElo;\r
+ }\r
+ else\r
+ {\r
+ oEl=event.srcElement;\r
+ event.cancelBubble=true;\r
+ }\r
+ while(-1==oEl.className.indexOf("clsBtn")&&-1==oEl.className.indexOf("clsNoB"))\r
+ {\r
+ oEl=getParentNode(oEl);\r
+ if(!oEl) return;\r
+ }\r
+ var sPF=oEl.className.substring(0,6);\r
+ var sState=getState(oEl);\r
+ if(sState=="down"||sState=="disable")\r
+ {\r
+ var oIs=getElementsByTag(oEl,"img");\r
+ if(oIs.length>0&&gaObjBtns[nBtn]&&gaObjBtns[nBtn].aIs&&gaObjBtns[nBtn].aIs.length>3)\r
+ {\r
+ if(gaObjBtns[nBtn].aIs[3])\r
+ oIs[0].src=gaObjBtns[nBtn].aIs[3];\r
+ }\r
+ if(sState=="down")\r
+ oEl.className=sPF+"Down";\r
+ }\r
+ else\r
+ {\r
+ var oIs=getElementsByTag(oEl,"img");\r
+ if(oIs.length>0&&gaObjBtns[nBtn]&&gaObjBtns[nBtn].aIs&&gaObjBtns[nBtn].aIs.length>0)\r
+ {\r
+ if(gaObjBtns[nBtn].aIs[0])\r
+ oIs[0].src=gaObjBtns[nBtn].aIs[0];\r
+ }\r
+ oEl.className=sPF+"Normal";\r
+ }\r
+}\r
+\r
+function showToc()\r
+{\r
+ var oMsg=new whMessage(WH_MSG_SHOWTOC,this,1,null)\r
+ SendMessage(oMsg);\r
+}\r
+\r
+function showIndex()\r
+{\r
+ var oMsg=new whMessage(WH_MSG_SHOWIDX,this,1,null)\r
+ SendMessage(oMsg);\r
+}\r
+\r
+function showFts()\r
+{\r
+ var oMsg=new whMessage(WH_MSG_SHOWFTS,this,1,null)\r
+ SendMessage(oMsg);\r
+}\r
+\r
+function showGlossary()\r
+{\r
+ var oMsg=new whMessage(WH_MSG_SHOWGLO,this,1,null)\r
+ SendMessage(oMsg);\r
+}\r
+\r
+function syncWithShow()\r
+{\r
+ if(!gbTocInfoInited)\r
+ {\r
+ getTocInfo();\r
+ }\r
+ if(goTocInfo)\r
+ {\r
+ showToc();\r
+ var oParam=goTocInfo;\r
+ var oMsg=new whMessage(WH_MSG_SYNCTOC,this,1,oParam);\r
+ SendMessage(oMsg);\r
+ }\r
+}\r
+\r
+function markButton(e)\r
+{\r
+ var oEl=null;\r
+ if(gbNav6)\r
+ {\r
+ var oElo=e.target;\r
+ while(oElo&&oElo.nodeName.indexOf("#")==0) oElo=getParentNode(oElo);\r
+ oEl=oElo;\r
+ }\r
+ else\r
+ oEl=event.srcElement;\r
+ while(oEl&&oEl.tagName!="TD") oEl=getParentNode(oEl);\r
+ if(oEl)\r
+ goEl=oEl;\r
+}\r
+\r
+function showHidePane()\r
+{\r
+ var oMsg=null;\r
+ if(hasNavPane())\r
+ oMsg=new whMessage(WH_MSG_HIDEPANE,this,1,null);\r
+ else\r
+ oMsg=new whMessage(WH_MSG_SHOWPANE,this,1,null);\r
+ SendMessage(oMsg);\r
+}\r
+\r
+function goAveNext()\r
+{\r
+ goAvenue(true);\r
+}\r
+\r
+function goAvePrev()\r
+{\r
+ goAvenue(false);\r
+}\r
+\r
+function doWebSearch()\r
+{\r
+ if (goWebSearchEnable)\r
+ {\r
+ var oMsg=new whMessage(WH_MSG_WEBSEARCH,this,1,null);\r
+ SendMessage(oMsg);\r
+ }\r
+}\r
+\r
+function goAvenue(bNext)\r
+{\r
+ var oMsg=null;\r
+ initAveButtonObj();\r
+ gsCurAveName=getCurrentAveName();\r
+ if(gbNav4&&!gbNav6)\r
+ {\r
+ if(bNext)\r
+ {\r
+ gaAvenues=null;\r
+ updateAvenue();\r
+ oMsg=new whMessage(WH_MSG_NEXT,this,1,null);\r
+ SendMessage(oMsg);\r
+ }\r
+ else if(!bNext)\r
+ {\r
+ gaAvenues=null;\r
+ updateAvenue();\r
+ oMsg=new whMessage(WH_MSG_PREV,this,1,null);\r
+ SendMessage(oMsg);\r
+ }\r
+ }\r
+ else\r
+ {\r
+ if(bNext&&goNextParent)\r
+ {\r
+ var sState=getState(goNextParent);\r
+ if(sState!="disable")\r
+ {\r
+ gaAvenues=null;\r
+ gbNeedUpdateAve=true;\r
+ gbUpdateTimerCount++;\r
+ setTimeout("updateAvenueIfNeeded();", 2000);\r
+ oMsg=new whMessage(WH_MSG_NEXT,this,1,null);\r
+ SendMessage(oMsg);\r
+ }\r
+ }\r
+ else if(!bNext&&goPrevParent)\r
+ {\r
+ var sState=getState(goPrevParent);\r
+ if(sState!="disable")\r
+ {\r
+ gaAvenues=null;\r
+ gbNeedUpdateAve=true;\r
+ gbUpdateTimerCount++;\r
+ setTimeout("updateAvenueIfNeeded();", 2000);\r
+ oMsg=new whMessage(WH_MSG_PREV,this,1,null);\r
+ SendMessage(oMsg);\r
+ }\r
+ }\r
+ }\r
+}\r
+\r
+function window_Unload()\r
+{\r
+ if(!gbNav4||gbNav6)\r
+ {\r
+ UnRegisterListener2(this,WH_MSG_GETSEARCHS);\r
+ UnRegisterListener2(this,WH_MSG_PANESTATUE);\r
+ UnRegisterListener2(this,WH_MSG_SYNCINFO);\r
+ UnRegisterListener2(this,WH_MSG_PANEINFO);\r
+ UnRegisterListener2(this,WH_MSG_AVENUEINFO);\r
+ UnRegisterListener2(this,WH_MSG_GETCURRENTAVENUE);\r
+ UnRegisterListener2(this,WH_MSG_ENABLEWEBSEARCH);\r
+ UnRegisterListener2(this,WH_MSG_INITSEARCHSTRING);\r
+ }\r
+}\r
+\r
+function window_OnLoad()\r
+{\r
+ if(document.body)\r
+ {\r
+ if(gsBgImage&&gsBgImage.length>0)\r
+ {\r
+ document.body.background=gsBgImage;\r
+ }\r
+ if(gsBgColor&&gsBgColor.length>0)\r
+ {\r
+ document.body.bgColor=gsBgColor;\r
+ }\r
+ }\r
+ doCusOnLoad();\r
+ var oMsg=new whMessage(WH_MSG_GETPANEINFO,this,1,null);\r
+ if(SendMessage(oMsg))\r
+ {\r
+ setTimeout("flipPaneButton(\""+oMsg.oParam+"\");",1);\r
+ }\r
+ if (!gaAvenues)\r
+ {\r
+ var oMsg2=new whMessage(WH_MSG_GETAVIAVENUES,this,1,new Object());\r
+ if(SendMessage(oMsg2))\r
+ {\r
+ gaAvenues=oMsg2.oParam.aAvenues;\r
+ gbNeedUpdateAve=false;\r
+ setTimeout("updateAvenue();",1);\r
+ }\r
+ }\r
+}\r
+\r
+function onSendMessage(oMsg)\r
+{\r
+ var nMsgId=oMsg.nMessageId;\r
+ if(nMsgId==WH_MSG_GETSEARCHS)\r
+ {\r
+ if(document.searchForm&&document.searchForm.searchString)\r
+ {\r
+ oMsg.oParam.sValue=document.searchForm.searchString.value;\r
+ return false;\r
+ }\r
+ }\r
+ else if(nMsgId==WH_MSG_PANESTATUE)\r
+ {\r
+ if(oMsg.oParam=="visible")\r
+ {\r
+ if(isShowHideEnable())\r
+ setTimeout("flipShowHide(true);",1);\r
+ setTimeout("showPaneButton();",1);\r
+ }\r
+ else\r
+ {\r
+ if(isShowHideEnable())\r
+ setTimeout("flipShowHide(false);",1);\r
+ setTimeout("hidePaneButton();",1);\r
+ }\r
+ }\r
+ else if(nMsgId==WH_MSG_PANEINFO)\r
+ {\r
+ if(oMsg.oParam)\r
+ setTimeout("flipPaneButton(\""+oMsg.oParam+"\");",1);\r
+ else\r
+ setTimeout("hidePaneButton();",1);\r
+ }\r
+ else if(nMsgId==WH_MSG_SYNCINFO)\r
+ {\r
+ if(oMsg.oParam)\r
+ goTocInfo=oMsg.oParam;\r
+ else\r
+ goTocInfo=null;\r
+ gbTocInfoInited=true;\r
+ }\r
+ else if(nMsgId==WH_MSG_AVENUEINFO)\r
+ {\r
+ gaAvenues=oMsg.oParam;\r
+ gbNeedUpdateAve=false;\r
+ setTimeout("updateAvenue();",1);\r
+ }\r
+ else if(nMsgId==WH_MSG_GETCURRENTAVENUE)\r
+ {\r
+ var sAveName=getCurrentAvenue();\r
+ if(sAveName!="")\r
+ {\r
+ oMsg.oParam.sAvenue=sAveName;\r
+ return false;\r
+ }\r
+ else\r
+ return true;\r
+ }\r
+ else if(nMsgId==WH_MSG_ENABLEWEBSEARCH)\r
+ {\r
+ setTimeout("updateWebSearch("+oMsg.oParam+");",1);\r
+ }\r
+ else if(nMsgId==WH_MSG_INITSEARCHSTRING)\r
+ {\r
+ if(gstrSearch!="")\r
+ {\r
+ oMsg.oParam=gstrSearch;\r
+ gstrSearch="";\r
+ return false;\r
+ }\r
+ }\r
+ return true;\r
+}\r
+\r
+function getCurrentAvenue()\r
+{\r
+ var strAveName="";\r
+ var oSelect=getElement("avenue");\r
+ if(oSelect)\r
+ {\r
+ strAveName=oSelect.value;\r
+ }\r
+ return strAveName;\r
+}\r
+\r
+function initBtn()\r
+{\r
+ var oBtn=null;\r
+ oBtn=getElement("btntoc");\r
+ if(oBtn)\r
+ gaBtns[gaBtns.length]=oBtn;\r
+ oBtn=getElement("btnidx");\r
+ if(oBtn)\r
+ gaBtns[gaBtns.length]=oBtn;\r
+ oBtn=getElement("btnfts");\r
+ if(oBtn)\r
+ gaBtns[gaBtns.length]=oBtn;\r
+ oBtn=getElement("btnglo");\r
+ if(oBtn)\r
+ gaBtns[gaBtns.length]=oBtn;\r
+ gbInitBtn=true;\r
+}\r
+\r
+function showPaneButton()\r
+{\r
+ flipPaneButton(gsPane);\r
+}\r
+\r
+function hidePaneButton()\r
+{\r
+ flipPaneButton("");\r
+}\r
+\r
+function flipPaneButton(sPane)\r
+{\r
+ if (sPane)\r
+ gsPane=sPane;\r
+ if(!gbInitBtn)\r
+ initBtn();\r
+\r
+ var oUp=null;\r
+ if(sPane)\r
+ {\r
+ oUp=getElement("btn"+sPane);\r
+ }\r
+ for(var i=0;i<gaBtns.length;i++)\r
+ {\r
+ if(gaBtns[i])\r
+ {\r
+ if(gaBtns[i]==oUp)\r
+ {\r
+ var oEl=getParentNode(oUp);\r
+ var sPF=oEl.className.substring(0,6);\r
+ var sState=getState(oEl);\r
+ if(sState=="up")\r
+ {\r
+ setState(oEl,"down");\r
+ oEl.className=sPF+"Down";\r
+ if(sPF=="clsBtn")\r
+ {\r
+ if(gaBtns[i].id)\r
+ {\r
+ var sColor=getBtnColor(gaBtns[i].id.substring(3),true);\r
+ if(sColor)\r
+ {\r
+ oEl.style.backgroundColor=sColor\r
+ }\r
+ else\r
+ {\r
+ oEl.style.backgroundColor="";\r
+ }\r
+ }\r
+ var oaA=getElementsByTag(oEl,"A");\r
+ if(oaA.length>0)\r
+ {\r
+ var strClassName=oaA[0].className;\r
+ oaA[0].className="btnsel"+strClassName.substring(3);\r
+ }\r
+ }\r
+ var oIs=getElementsByTag(oEl,"img");\r
+ var oBtn=getButtonObjByType(gaBtns[i].id.substring(3));\r
+ if(oIs.length>0&&oBtn&&oBtn.aIs&&oBtn.aIs.length>3)\r
+ {\r
+ if(oBtn.aIs[3])\r
+ oIs[0].src=oBtn.aIs[3];\r
+ }\r
+ }\r
+ }\r
+ else\r
+ {\r
+ var oEl=getParentNode(gaBtns[i]);\r
+ var sState=getState(oEl);\r
+ var sPF=oEl.className.substring(0,6);\r
+ if(sState=="down")\r
+ {\r
+ setState(oEl,"up");\r
+ if(oEl==goEl)\r
+ oEl.className=sPF+"Up";\r
+ else\r
+ oEl.className=sPF+"Normal";\r
+\r
+ if(sPF=="clsBtn")\r
+ {\r
+ if(gaBtns[i].id)\r
+ {\r
+ var sColor=getBtnColor(gaBtns[i].id.substring(3),false);\r
+ if(sColor)\r
+ {\r
+ oEl.style.backgroundColor=sColor\r
+ }\r
+ else\r
+ {\r
+ oEl.style.backgroundColor="";\r
+ }\r
+ }\r
+\r
+ var oaA=getElementsByTag(oEl,"A");\r
+ if(oaA.length>0)\r
+ {\r
+ var strClassName=oaA[0].className;\r
+ oaA[0].className="btn"+strClassName.substring(6);\r
+ }\r
+ }\r
+ var oIs=getElementsByTag(oEl,"img");\r
+ var oBtn=getButtonObjByType(gaBtns[i].id.substring(3));\r
+ if(oIs.length>0&&oBtn&&oBtn.aIs&&oBtn.aIs.length>0)\r
+ {\r
+ if(oBtn.aIs[0])\r
+ oIs[0].src=oBtn.aIs[0];\r
+ }\r
+ }\r
+ }\r
+ }\r
+ }\r
+}\r
+\r
+function flipShowHide(bShow)\r
+{\r
+ gnHasNavPane=-1; \r
+ var oA=getElement("btnshowhide");\r
+ if(oA)\r
+ {\r
+ var oEl=getParentNode(oA);\r
+ var sPF=oEl.className.substring(0,6);\r
+ if(oEl&&oEl.state)\r
+ {\r
+ if(bShow)\r
+ {\r
+ oEl.state="down";\r
+ oEl.className=sPF+"Down";\r
+ }\r
+ else\r
+ {\r
+ oEl.state="up";\r
+ \r
+ if(oEl==goEl)\r
+ oEl.className=sPF+"Up";\r
+ else\r
+ oEl.className=sPF+"Normal";\r
+ }\r
+ }\r
+ oA.innerHTML=getShowHide();\r
+ }\r
+}\r
+\r
+function cusOnClick(nIdx)\r
+{\r
+ if(goCusButton.length>nIdx)\r
+ {\r
+ var sOnClick=goCusButton[nIdx].sOnClick;\r
+ if(sOnClick&&sOnClick.length>0)\r
+ {\r
+ if(!gbPreview)\r
+ eval(sOnClick);\r
+ return false;\r
+ }\r
+ }\r
+ return true;\r
+}\r
+\r
+function cusOnMouseOver(nIdx)\r
+{\r
+ if(goCusButton.length>nIdx)\r
+ {\r
+ var sOnMouseOver=goCusButton[nIdx].sOnMouseOver;\r
+ if(sOnMouseOver&&sOnMouseOver.length>0)\r
+ {\r
+ if(!gbPreview)\r
+ eval(sOnMouseOver);\r
+ return false;\r
+ }\r
+ }\r
+ return true;\r
+}\r
+\r
+function doCusOnLoad()\r
+{\r
+ if(!gbPreview&&gaOrders)\r
+ {\r
+ for(var i=0;i<gaOrders.length;i++)\r
+ {\r
+ for(var j=0;j<gaOnLoads.length;j++)\r
+ {\r
+ if(gaOrders[i]==gaOnLoads[j].sType)\r
+ {\r
+ eval(gaOnLoads[j].sOnLoad);\r
+ break;\r
+ }\r
+ }\r
+ }\r
+ }\r
+}\r
+\r
+function registerOnLoad(sOnLoad,sType)\r
+{\r
+ gaOnLoads[gaOnLoads.length]=new cusOnLoad(sType,sOnLoad); \r
+}\r
+\r
+function cusOnLoad(sType,sOnLoad)\r
+{\r
+ this.sType=sType;\r
+ this.sOnLoad=sOnLoad;\r
+}\r
+\r
+function cusButton(sType,sText,sOnClick,sOnMouseOver,sOnLoad,nWidth,nHeight)\r
+{\r
+ this.sType=sType;\r
+ this.sText=sText;\r
+ this.sOnClick=sOnClick;\r
+ this.sOnMouseOver=sOnMouseOver;\r
+ this.sOnLoad=sOnLoad;\r
+ this.nWidth=nWidth;\r
+ this.nHeight=nHeight;\r
+ this.aIs=new Array();\r
+ var i=0;\r
+ while(cusButton.arguments.length>i+7)\r
+ {\r
+ if (cusButton.arguments[7+i])\r
+ this.aIs[i]=_getFullPath(_getPath(document.location.href),cusButton.arguments[7+i]);\r
+ else\r
+ this.aIs[i]="";\r
+ i++;\r
+ }\r
+ if(sOnLoad)\r
+ {\r
+ registerOnLoad(sOnLoad,sType);\r
+ }\r
+}\r
+\r
+function getBtnColor(sType,bSel)\r
+{\r
+ var aBtnColors=null;\r
+ if(bSel)\r
+ aBtnColors=gaSelBtnBgColor;\r
+ else\r
+ aBtnColors=gaBtnBgColor;\r
+ if(aBtnColors)\r
+ {\r
+ for(var i=0;i<aBtnColors.length;i++)\r
+ {\r
+ if(aBtnColors[i].sType==sType)\r
+ return aBtnColors[i].sColor;\r
+ }\r
+ }\r
+ return "";\r
+}\r
+\r
+function setButtonBgColor(sType,sColor,bSel)\r
+{\r
+ if(sColor)\r
+ {\r
+ var aBtnColors=null;\r
+ if(bSel)\r
+ aBtnColors=gaSelBtnBgColor;\r
+ else\r
+ aBtnColors=gaBtnBgColor;\r
+ if(aBtnColors!=null)\r
+ {\r
+ for(var i=0;i<aBtnColors.length;i++)\r
+ {\r
+ if(aBtnColors[i].sType==sType)\r
+ {\r
+ aBtnColors[i].sColor=sColor;\r
+ return;\r
+ }\r
+ }\r
+ aBtnColors[aBtnColors.length]=new btnBgColor(sType,sColor);\r
+ }\r
+ }\r
+}\r
+\r
+function getDefaultButtonFont()\r
+{\r
+ var strFontStyle="";\r
+ for(var i=0;i<gaTypes.length;i++)\r
+ {\r
+ strFontStyle+=".btnsel"+gaTypes[i]+"{"+getFontStyle(goSelTextFont)+"}";\r
+ strFontStyle+=".btn"+gaTypes[i]+"{"+getFontStyle(goTextFont)+"}";\r
+ }\r
+ return strFontStyle;\r
+}\r
+\r
+function setButtonFont(sType,sFontName,sFontSize,sFontColor,sFontStyle,sFontWeight,sFontDecoration,bSel)\r
+{\r
+ if(sFontName)\r
+ {\r
+ var vFont=new whFont(sFontName,sFontSize,sFontColor,sFontStyle,sFontWeight,sFontDecoration);\r
+ if(bSel)\r
+ gsBtnStyle+=".btnsel"+sType+"{"+getFontStyle(vFont)+"}\n";\r
+ else\r
+ gsBtnStyle+=".btn"+sType+"{"+getFontStyle(vFont)+"}\n";\r
+ }\r
+ if (sType=="searchform"&&!bSel)\r
+ {\r
+ var vFont1=new whFont(sFontName,sFontSize,"black",sFontStyle,sFontWeight,sFontDecoration);\r
+ gsBtnStyle+=".inputsearchform {" + getFontStyle(vFont1)+"}\n";\r
+ }\r
+}\r
+\r
+function getButtonObjByType(sType)\r
+{\r
+ for(var i=0;i<gaObjBtns.length;i++)\r
+ {\r
+ if(gaObjBtns[i].sType==sType)\r
+ return gaObjBtns[i];\r
+ }\r
+ return null;\r
+}\r
+\r
+function onSelect()\r
+{\r
+ if (event.srcElement&&event.srcElement.name)\r
+ {\r
+ if (event.srcElement.name=="searchString")\r
+ return true;\r
+ }\r
+ return false;\r
+}\r
+\r
+function window_onResize()\r
+{\r
+ gnRE++;\r
+ setTimeout("tryReload();", 100);\r
+}\r
+\r
+function tryReload()\r
+{\r
+ if (gnRE==1)\r
+ document.location.reload();\r
+ gnRE--;\r
+}\r
+\r
+if(window.gbWhUtil&&window.gbWhMsg&&window.gbWhVer&&window.gbWhProxy)\r
+{\r
+ RegisterListener2(this,WH_MSG_GETSEARCHS);\r
+ RegisterListener2(this,WH_MSG_PANESTATUE);\r
+ RegisterListener2(this,WH_MSG_SYNCINFO);\r
+ RegisterListener2(this,WH_MSG_PANEINFO);\r
+ RegisterListener2(this,WH_MSG_AVENUEINFO);\r
+ RegisterListener2(this,WH_MSG_GETCURRENTAVENUE);\r
+ RegisterListener2(this,WH_MSG_ENABLEWEBSEARCH);\r
+ RegisterListener2(this,WH_MSG_INITSEARCHSTRING);\r
+ window.onload=window_OnLoad;\r
+ window.onunload=window_Unload;\r
+ window.onresize=window_onResize;\r
+ goTextFont=new whFont("Verdana","8pt","#003063","normal","normal","none");\r
+ goSelTextFont=new whFont("Verdana","8pt","white","normal","normal","none");\r
+ gbWhTBar=true;\r
+}\r
+else\r
+ document.location.reload();\r
+\r
--- /dev/null
+<html>\r
+<head>\r
+<title>Table of contents</title>\r
+<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
+<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">\r
+<meta name "description" content="WebHelp 2002">\r
+<base target="bsscright">\r
+</head>\r
+<script language="javascript" src="whver.js"></script>\r
+<script language="javascript1.2" src="whmozemu.js"></script>\r
+<script language="javascript1.2" src="whutils.js"></script>\r
+<script language="javascript1.2" src="whmsg.js"></script>\r
+<script language="javascript1.2" src="whproxy.js"></script>\r
+<script language="javascript1.2" src="whthost.js"></script>\r
+<script LANGUAGE="javascript1.2">\r
+<!--\r
+if (window.gbWhTHost)\r
+{\r
+ setBackgroundcolor( "White"); \r
+ \r
+ setFont("Normal", "Tahoma","8pt","Black","Normal","Normal","none");\r
+ setFont("Hover", "Tahoma","8pt","Navy","Normal","Normal","underline");\r
+ setActiveBgColor("Silver");\r
+ \r
+ \r
+ setIcon("BookOpen","wht_toc2.gif");\r
+ setIcon("BookClose","wht_toc1.gif");\r
+ setIcon("Item","wht_toc3.gif");\r
+ setIcon("RemoteItem","wht_toc4.gif");\r
+ \r
+ \r
+ \r
+ \r
+ TocWriteClassStyle();\r
+ TocWriteFixedWidth(true,400);\r
+}\r
+else\r
+ document.location.reload();\r
+//-->\r
+</script>\r
+<body topmargin="2" leftmargin="2" marginwidth="0" marginheight="0" bgproperties="fixed" bgcolor="white" scroll="auto">\r
+<script LANGUAGE="javascript1.2">\r
+<!--\r
+TocWriteFixedWidth(false,400);\r
+TocInitPage();\r
+//-->\r
+</script>\r
+</body>\r
+</html>
\ No newline at end of file
--- /dev/null
+var gaHSLoad=new Array();\r
+var gnMinIdx=0;\r
+var gnInsIdx=-1;\r
+var gsLoadingDivID="LoadingDiv";\r
+var gsLoadingMsg="Loading, click here to cancel...";\r
+var gaProj=null;\r
+var gaTocs=new Array();\r
+var goChunk=null;\r
+var gbReady=false;\r
+var gbLoadToc=false;\r
+var gbXML=false;\r
+var gaRoot=new Array();\r
+var gnCC=-1;\r
+var gsTP="";\r
+var gaBTPs="";\r
+var gsCTPath="";\r
+var gnLT=-1;\r
+var gsPathSplit="\n";\r
+var gsBgColor="#ffffff";\r
+var gsBgImage="";\r
+var goFont=null;\r
+var goHFont=null;\r
+\r
+var gsMargin="0pt";\r
+var gsIndent="15pt";\r
+var gsABgColor="#cccccc";\r
+\r
+var giBookClose="";\r
+var giBookOpen="";\r
+var giBookItem="";\r
+var giURLItem="";\r
+var giNewBookClose="";\r
+var giNewBookOpen="";\r
+var giNewBookItem="";\r
+var giNewURLItem="";\r
+var gnImages=0;\r
+var gnLoadedImages=0;\r
+var gaImgs=new Array();\r
+var gbLoadData=false;\r
+var gobj=null;\r
+var gaTocsNs61Fix=null;\r
+var gbWhTHost=false;\r
+var gBookItems=new Array();\r
+var gInSync=false;\r
+\r
+function setBackground(sBgImage)\r
+{\r
+ gsBgImage=sBgImage;\r
+}\r
+\r
+function setBackgroundcolor(sBgColor)\r
+{\r
+ gsBgColor=sBgColor;\r
+}\r
+\r
+function setFont(sType,sFontName,sFontSize,sFontColor,sFontStyle,sFontWeight,sFontDecoration)\r
+{\r
+ var vFont=new whFont(sFontName,sFontSize,sFontColor,sFontStyle,sFontWeight,sFontDecoration);\r
+ if(sType=="Normal") goFont=vFont;\r
+ else if(sType=="Hover") goHFont=vFont;\r
+}\r
+\r
+function setActiveBgColor(sBgColor){gsABgColor=sBgColor;}\r
+\r
+function setMargin(sMargin){gsMargin=sMargin;}\r
+\r
+function setIndent(sIndent){gsIndent=sIndent;}\r
+\r
+function setIcon(sType,sURL)\r
+{\r
+ if(sType=="BookOpen")\r
+ giBookOpen=sURL;\r
+ else if(sType=="BookClose")\r
+ giBookClose=sURL;\r
+ else if(sType=="Item")\r
+ giBookItem=sURL;\r
+ else if(sType=="RemoteItem")\r
+ giURLItem=sURL;\r
+ else if(sType=="NewBookClose")\r
+ giNewBookClose=sURL;\r
+ else if(sType=="NewBookOpen")\r
+ giNewBookOpen=sURL;\r
+ else if(sType=="NewItem")\r
+ giNewBookItem=sURL;\r
+ else if(sType=="NewRemoteItem")\r
+ giNewURLItem=sURL; \r
+}\r
+\r
+function bookItem(sTarget, sURL)\r
+{\r
+ if (sTarget)\r
+ this.sTarget=sTarget;\r
+ else\r
+ this.sTarget="bsscright";\r
+ this.sURL=sURL;\r
+}\r
+\r
+function addBookItem(sBookId, sTarget, sURL)\r
+{\r
+ gBookItems[sBookId] = new bookItem(sTarget, sURL); \r
+}\r
+\r
+function tocChunk(sPPath,sDPath)\r
+{\r
+ this.sPPath=sPPath;\r
+ this.sDPath=sDPath;\r
+ this.nMI=-1;\r
+ this.aTocs=null;\r
+}\r
+\r
+function addTocChunk(sPPath,sDPath)\r
+{\r
+ var oChunk=new tocChunk(sPPath,sDPath);\r
+ gaTocs[gaTocs.length]=oChunk;\r
+ return oChunk;\r
+}\r
+\r
+function isHSLoad(nIdx)\r
+{\r
+ for(var i=0;i<gaHSLoad.length;i++){\r
+ if(gaHSLoad[i]==nIdx)\r
+ return true;\r
+ }\r
+ return false;\r
+}\r
+\r
+function setHSLoad(nIdx)\r
+{\r
+ if(!isHSLoad(nIdx))\r
+ {\r
+ var len=gaHSLoad.length;\r
+ for(var i=0;i<len;i++){\r
+ if(gaHSLoad[i]==-1)\r
+ {\r
+ gaHSLoad[i]=nIdx;\r
+ return;\r
+ }\r
+ }\r
+ gaHSLoad[len]=nIdx;\r
+ }\r
+}\r
+\r
+function setHSUnLoad(nIdx)\r
+{\r
+ if(isHSLoad(nIdx))\r
+ {\r
+ for(var i=0;i<gaHSLoad.length;i++){\r
+ if(gaHSLoad[i]==nIdx)\r
+ {\r
+ gaHSLoad[i]=-1;\r
+ return;\r
+ }\r
+ }\r
+ }\r
+}\r
+\r
+function cancelLoading(nIdx)\r
+{\r
+ var oObj=getElement(getCBId(nIdx));\r
+ if(oObj)\r
+ {\r
+ oObj.innerHTML="";\r
+ setHSUnLoad(nIdx)\r
+ ExpandIt(nIdx);\r
+ }\r
+}\r
+\r
+function cancelAll()\r
+{\r
+ var eLoadingDivs=getElement(gsLoadingDivID);\r
+ if(eLoadingDivs)\r
+ cancelHSLoading(eLoadingDivs);\r
+}\r
+\r
+function cancelHSLoading(eLoadingDiv)\r
+{\r
+ var eParent=eLoadingDiv.parentElement;\r
+ if(eParent){\r
+ var sId=eParent.id;\r
+ sId=sId.substring(5);\r
+ var nIdx=parseInt(sId);\r
+ if(!isNaN(nIdx))\r
+ cancelLoading(nIdx)\r
+ }\r
+}\r
+\r
+function checkBookItem(nIdx)\r
+{\r
+ if(!gInSync)\r
+ {\r
+ var sBookId=getBookId(nIdx);\r
+ if(gBookItems[sBookId])\r
+ {\r
+ window.open(gBookItems[sBookId].sURL,gBookItems[sBookId].sTarget);\r
+ }\r
+ }\r
+}\r
+\r
+function insertBookItems(nIdx,num)\r
+{\r
+ checkBookItem(nIdx);\r
+ var sChildBookId=getCBId(nIdx);\r
+ var eChildDiv=getElement(sChildBookId);\r
+ if(eChildDiv){\r
+ if((eChildDiv.childNodes&&eChildDiv.childNodes.length==0)||\r
+ (eChildDiv.all&&eChildDiv.all.length==0)){\r
+ var sHTML=writeBookItems(nIdx,num);\r
+ eChildDiv.innerHTML=sHTML;\r
+ setTimeout("syncInit()",1);\r
+ }\r
+ }\r
+ ExpandIt(nIdx);\r
+}\r
+\r
+function writeBook(nIdx,bLocal)\r
+{\r
+ var sIcon=getBookImage(nIdx,true);\r
+ var sName=_textToHtml(getItemName(nIdx));\r
+ sIcon=_textToHtml_nonbsp(sIcon);\r
+ \r
+ var sHTML="<div id=\""+getPBId(nIdx)+"\" class=parent>";\r
+ sHTML+="<p><nobr><a id=\""+getBookId(nIdx)+"\" href=\"javascript:void(0);\" onfocus=\"markBook("+nIdx+");\" onclick=\"";\r
+\r
+ if(getItemType(nIdx)==1)\r
+ sHTML+="insertBookItems("+nIdx+", "+getItemContentsNum(nIdx);\r
+ else\r
+ sHTML+="tocExpandHelpSet("+nIdx+","+bLocal;\r
+ sHTML+=");return false;\" title=\""+sName+"\"><img alt=\"Book\" name=\""+getBId(nIdx)+"\" src=\""+sIcon+"\" border=0 align=\"absmiddle\">";\r
+ var sURL=_textToHtml_nonbsp(getItemURL(nIdx));\r
+ if(sURL!="")\r
+ addBookItem(getBookId(nIdx),_textToHtml_nonbsp(getTopicTarget(nIdx)),sURL);\r
+ sHTML+=" "+sName+"</a></nobr></p></div><div id=\""+getCBId(nIdx)+"\" class=child></div>";\r
+ return sHTML;\r
+}\r
+\r
+function getBookId(nIdx){return "B_"+nIdx;}\r
+\r
+function getItemId(nIdx){return "I_"+nIdx;}\r
+\r
+function markBook(nIdx)\r
+{\r
+ var obj=getElement(getItemId(nIdx));\r
+ if(obj==null)\r
+ obj=getElement(getBookId(nIdx));\r
+ if(gbNav6)\r
+ {\r
+ gobj=obj;\r
+ setTimeout("delayMarkObj();",1);\r
+ }\r
+ else\r
+ markObj(obj);\r
+}\r
+\r
+function delayMarkObj()\r
+{\r
+ if(gobj)\r
+ {\r
+ markObj(gobj);\r
+ gobj=null;\r
+ }\r
+}\r
+\r
+function markObj(obj)\r
+{\r
+ if(obj!=null)\r
+ {\r
+ HighLightElement(obj,gsABgColor,"transparent");\r
+ var sPath=calTocPath(obj);\r
+ if(gsCTPath!=sPath)\r
+ gsCTPath=sPath;\r
+ }\r
+}\r
+\r
+function markItem(nIdx)\r
+{\r
+ var obj=getElement(getItemId(nIdx));\r
+ if(gbNav6)\r
+ {\r
+ gobj=obj;\r
+ setTimeout("delayMarkObj();",1);\r
+ }\r
+ else\r
+ markObj(getElement(getItemId(nIdx)));\r
+}\r
+\r
+function calTocPath(obj)\r
+{\r
+ var sPath=getInnerText(obj).substring(1);\r
+ var pObj=getParentNode(obj);\r
+ do\r
+ {\r
+ while(pObj!=null&&!isCBId(pObj.id)) pObj=getParentNode(pObj);\r
+ if(pObj!=null)\r
+ {\r
+ var nId=getIdByCBId(pObj.id);\r
+ var sObj=getElement(getPBId(nId));\r
+ if(sObj!=null)\r
+ {\r
+ var objs=getItemsByBook(sObj);\r
+ for(var i=0;i<objs.length;i++)\r
+ {\r
+ var sText=getInnerText(objs[i]);\r
+ \r
+ if(sText.length!=0)\r
+ {\r
+ sPath=sText.substring(1)+gsPathSplit+sPath;\r
+ break;\r
+ }\r
+ }\r
+ }\r
+ pObj=getParentNode(pObj);\r
+ }\r
+ }while(pObj!=null);\r
+ return sPath;\r
+}\r
+\r
+function writeAnItem(nIdx)\r
+{\r
+ var sTarget=_textToHtml_nonbsp(getTopicTarget(nIdx));\r
+ var sIcon=getItemIcon(nIdx,0);\r
+ if(sIcon=="")\r
+ {\r
+ var nItemType=getItemType(nIdx);\r
+ if(nItemType&2)\r
+ sIcon=getItemImage(nIdx,false);\r
+ else\r
+ sIcon=getItemImage(nIdx,true);\r
+ }\r
+ sIcon=_textToHtml_nonbsp(sIcon);\r
+ var sName=_textToHtml(getItemName(nIdx));\r
+ var sHTML="<p><nobr><a id=\""+getItemId(nIdx)+"\" onfocus=\"markItem("+nIdx+");\""\r
+ var sAltString="";\r
+ if (nItemType&2)\r
+ sAltString="Page";\r
+ else\r
+ sAltString="Remote Page";\r
+ if(sTarget!="")\r
+ sHTML+="target=\""+sTarget+"\" ";\r
+ sHTML+="href=\""+_textToHtml_nonbsp(getItemURL(nIdx))+"\" title=\""+sName+"\"><img alt=\""+sAltString+"\" src=\""+sIcon+"\" border=0 align=\"absmiddle\"> "+sName+"</a></nobr></p>";\r
+ return sHTML;\r
+}\r
+\r
+function writeBookItems(nIdx,num)\r
+{\r
+ var sHTML="";\r
+ if(num>0){\r
+ var nCIdx=0;\r
+ do{\r
+ nCIdx++;\r
+ var i=nIdx+nCIdx;\r
+ var nItemType=getItemType(i);\r
+ if(nItemType==1){\r
+ sHTML+=writeBook(i); \r
+ nCIdx+=getItemContentsNum(i); \r
+ }\r
+ else if(nItemType==2||nItemType==16){\r
+ sHTML+=writeAnItem(i);\r
+ }else if(nItemType==4){\r
+ sHTML+=writeBook(i,false);\r
+ }else if(nItemType==8){\r
+ sHTML+=writeBook(i,true);\r
+ }\r
+ }\r
+ while(nCIdx<num);\r
+ }\r
+ return sHTML;\r
+}\r
+\r
+function tocExpandHelpSet(nIdx,bLocal)\r
+{\r
+ checkBookItem(nIdx);\r
+ cancelAll();\r
+ if(isHSLoad(nIdx))\r
+ ExpandIt(nIdx);\r
+ else{\r
+ setHSLoad(nIdx);\r
+ var sSrc="";\r
+ if(bLocal){\r
+ var oChunk=getChunk(nIdx);\r
+ if(oChunk)\r
+ {\r
+ goChunk=addTocChunk(oChunk.sPPath,oChunk.sDPath);\r
+ sSrc=oChunk.aTocs[nIdx-oChunk.nMI].sRefURL;\r
+ }\r
+ }\r
+ else{\r
+ sSrc=getRefURL(nIdx);\r
+ var nProj=getProject(sSrc);\r
+ if(nProj!=-1)\r
+ {\r
+ goChunk=addTocChunk(gaProj[nProj].sPPath,gaProj[nProj].sDPath);\r
+ sSrc=gaRoot[nProj].sToc;\r
+ }\r
+ else\r
+ goChunk=null;\r
+ }\r
+ if(goChunk)\r
+ {\r
+ PrepareLoading(nIdx);\r
+ ExpandIt(nIdx);\r
+ gbLoadToc=false;\r
+ loadData2(goChunk.sPPath+goChunk.sDPath+sSrc);\r
+ }\r
+ }\r
+}\r
+\r
+function getProject(sSrc)\r
+{\r
+ for(var i=0;i<gaProj.length;i++)\r
+ {\r
+ if(isSamePath(getPath(sSrc),gaProj[i].sPPath))\r
+ {\r
+ return i;\r
+ }\r
+ }\r
+ return -1;\r
+}\r
+\r
+function getPath(sPath)\r
+{\r
+ if(sPath!="")\r
+ {\r
+ sPath=_replaceSlash(sPath);\r
+ var nPosFile=sPath.lastIndexOf("/");\r
+ sPath=sPath.substring(0,nPosFile+1);\r
+ }\r
+ return sPath;\r
+}\r
+\r
+function isSamePath(sPath1,sPath2)\r
+{\r
+ return (sPath1.toLowerCase()==sPath2.toLowerCase());\r
+}\r
+\r
+function PrepareLoading(nIdx)\r
+{\r
+ gnInsIdx=nIdx;\r
+ if(!gsTP)\r
+ {\r
+ var oObj=getElement(getCBId(gnInsIdx));\r
+ if(oObj)\r
+ oObj.innerHTML=writeLoadingDiv(nIdx);\r
+ }\r
+}\r
+\r
+function writeLoadingDiv(nIdx)\r
+{\r
+ return"<div id=\""+gsLoadingDivID+"\" class=parent onclick=\"cancelLoading("+nIdx+");\" style=\"padding-left:4px;background-color:ivory;border-width:1;border-style:solid;border-color:black;width:150px;\">"+gsLoadingMsg+"</div>";\r
+}\r
+\r
+function getItemName(nIdx)\r
+{\r
+ var oChunk=getChunk(nIdx);\r
+ if(oChunk)\r
+ return oChunk.aTocs[nIdx-oChunk.nMI].sItemName;\r
+ else\r
+ return null;\r
+}\r
+\r
+function getItemContentsNum(nIdx)\r
+{\r
+ var oChunk=getChunk(nIdx);\r
+ if(oChunk)\r
+ return oChunk.aTocs[nIdx-oChunk.nMI].nContents;\r
+ else\r
+ return null;\r
+}\r
+\r
+function getItemType(nIdx)\r
+{\r
+ var oChunk=getChunk(nIdx);\r
+ if(oChunk)\r
+ return oChunk.aTocs[nIdx-oChunk.nMI].nType;\r
+ else\r
+ return 0;\r
+}\r
+\r
+function getItemURL(nIdx)\r
+{\r
+ var oChunk=getChunk(nIdx);\r
+ if(oChunk)\r
+ {\r
+ var sPath=oChunk.aTocs[nIdx-oChunk.nMI].sItemURL;\r
+ if(!(sPath==null||sPath==""))\r
+ {\r
+ return _getFullPath(oChunk.sPPath,sPath);\r
+ }\r
+ }\r
+ return "";\r
+}\r
+\r
+function getRefURL(nIdx)\r
+{\r
+ var oChunk=getChunk(nIdx);\r
+ if(oChunk)\r
+ {\r
+ var sPath=oChunk.aTocs[nIdx-oChunk.nMI].sRefURL;\r
+ if(!(sPath==null||sPath==""))\r
+ {\r
+ return _getFullPath(oChunk.sPPath,sPath)\r
+ }\r
+ }\r
+ return "";\r
+}\r
+\r
+function getTopicTarget(nIdx)\r
+{\r
+ var oChunk=getChunk(nIdx);\r
+ if(oChunk)\r
+ {\r
+ if(typeof(oChunk.aTocs[nIdx-oChunk.nMI].sTarget)!="undefined")\r
+ return oChunk.aTocs[nIdx-oChunk.nMI].sTarget;\r
+ }\r
+ return "";\r
+}\r
+\r
+function getItemIcon(nIdx,nIconIdx)\r
+{\r
+ var oChunk=getChunk(nIdx);\r
+ if(oChunk)\r
+ {\r
+ if(typeof(oChunk.aTocs[nIdx-oChunk.nMI].sIconRef)!="undefined")\r
+ {\r
+ var sIconRef=oChunk.aTocs[nIdx-oChunk.nMI].sIconRef;\r
+ var nIndex=sIconRef.indexOf(";");\r
+ while(nIconIdx-->0&&nIndex!=-1)\r
+ {\r
+ sIconRef=sIconRef.substring(nIndex+1);\r
+ nIndex=sIconRef.indexOf(";");\r
+ }\r
+ if(nIconIdx<0)\r
+ {\r
+ if(nIndex!=-1)\r
+ sIconRef=sIconRef.substring(0,nIndex);\r
+ return _getFullPath(oChunk.sPPath,sIconRef)\r
+ }\r
+ }\r
+ }\r
+ return "";\r
+}\r
+\r
+function TocWriteClassStyle()\r
+{\r
+ var sStyle="<STYLE TYPE='text/css'>\n";\r
+ if (gsBgImage)\r
+ sStyle+="body {border-top:"+gsBgColor+" 1px solid;}\n";\r
+ else\r
+ sStyle+="body {border-top:black 1px solid;}\n";\r
+ sStyle+="P {"+getFontStyle(goFont)+"margin-top:"+gsMargin+";margin-bottom:"+gsMargin+";}\n";\r
+ sStyle+="DIV {margin-top:"+gsMargin+";margin-bottom:"+gsMargin+";}\n";\r
+ sStyle+=".parent {margin-left:0pt;}\n";\r
+ sStyle+=".child {display:none;margin-left:"+gsIndent+";}\n";\r
+ sStyle+="A:link {"+getFontStyle(goFont)+"}\n";\r
+ sStyle+="A:visited {"+getFontStyle(goFont)+"}\n";\r
+ sStyle+="A:active {background-color:"+gsABgColor+";}\n";\r
+ sStyle +="A:hover {"+getFontStyle(goHFont)+"}\n";\r
+ sStyle+="</STYLE>";\r
+ document.write(sStyle);\r
+}\r
+\r
+function TocWriteFixedWidth(bBegin,nWidth)\r
+{\r
+ if((gbIE4)&&(gbMac)&&(!gbIE5)){\r
+ if(bBegin)\r
+ document.write("<table width="+nWidth+" border=0><tr><td>");\r
+ else\r
+ document.write("</td></tr></table>");\r
+ }\r
+}\r
+\r
+function TocInitPage()\r
+{\r
+ var tempColl=getItemsByBook(document.body);\r
+ if(tempColl.length>0)\r
+ tempColl[0].focus();\r
+}\r
+\r
+function getItemsFromObj(obj)\r
+{\r
+ var aAnchor=new Array();\r
+ var tempColl=getChildrenByTag(obj,"P");\r
+ if(tempColl&&tempColl.length>0)\r
+ {\r
+ var anobr=new Array();\r
+ for(var i=0;i<tempColl.length;i++)\r
+ {\r
+ var tempNobr=getChildrenByTag(tempColl[i],"NOBR");\r
+ if(tempNobr&&tempNobr.length>0)\r
+ {\r
+ for(var j=0;j<tempNobr.length;j++)\r
+ anobr[anobr.length]=tempNobr[j];\r
+ }\r
+ }\r
+ for(var s=0;s<anobr.length;s++)\r
+ {\r
+ var tempAnchor=getChildrenByTag(anobr[s],"A");\r
+ if(tempAnchor&&tempAnchor.length>0)\r
+ {\r
+ for(var u=0;u<tempAnchor.length;u++)\r
+ aAnchor[aAnchor.length]=tempAnchor[u];\r
+ }\r
+ }\r
+ }\r
+ return aAnchor;\r
+}\r
+\r
+function getItemsByBook(obj)\r
+{\r
+ var aAnchor=new Array();\r
+ var aTAnchor=getItemsFromObj(obj);\r
+ for(var i=0;i<aTAnchor.length;i++)\r
+ {\r
+ aAnchor[aAnchor.length]=aTAnchor[i];\r
+ }\r
+ var tempBook=getChildrenByTag(obj,"DIV");\r
+ if(tempBook&&tempBook.length>0)\r
+ {\r
+ for(var j=0;j<tempBook.length;j++)\r
+ {\r
+ var aTAnchorDiv=getItemsFromObj(tempBook[j]);\r
+ for(var s=0;s<aTAnchorDiv.length;s++)\r
+ {\r
+ aAnchor[aAnchor.length]=aTAnchorDiv[s];\r
+ }\r
+ }\r
+ } \r
+ return aAnchor;\r
+}\r
+\r
+function ExpandIt(nId)\r
+{\r
+ if(!gsTP)\r
+ ExpandIt2(nId,false);\r
+}\r
+\r
+function ExpandIt2(nId,bForceOpen)\r
+{\r
+ if(gbIE4||gbNav6){\r
+ var oC=TocExpand(nId,true,bForceOpen);\r
+ var nNewScroll=document.body.scrollTop;\r
+ if(oC.style.display=="block"){\r
+ var nTop=oC.offsetTop;\r
+ var nBottom=nTop+oC.offsetHeight;\r
+ if(document.body.scrollTop+document.body.clientHeight<nBottom){\r
+ nNewScroll=nBottom-document.body.clientHeight;\r
+ }\r
+ if(nBottom-nTop>document.body.clientHeight){\r
+ nNewScroll=nTop-20;\r
+ }\r
+ }\r
+ document.body.scrollTop=nNewScroll;\r
+ }\r
+}\r
+\r
+function TocExpand(nId,bChangeImg,bForceOpen)\r
+{\r
+ var oDiv=getElement(getCBId(nId));\r
+ if(oDiv==null) return null;\r
+\r
+ var whichIm=document.images[getBId(nId)];\r
+ if((oDiv.style.display!="block")||bForceOpen){\r
+ oDiv.style.display="block";\r
+ if(bChangeImg){\r
+ var sPath=getPath(whichIm.src);\r
+ sPath=_getFullPath(sPath,getBookImage(nId,false));\r
+ whichIm.src=sPath; \r
+ }\r
+ }else{\r
+ oDiv.style.display="none";\r
+ if(bChangeImg){\r
+ var sPath=getPath(whichIm.src);\r
+ sPath=_getFullPath(sPath,getBookImage(nId,true));\r
+ whichIm.src=sPath;\r
+ }\r
+ if(gbMac&&gbIE5){\r
+ this.parent.document.getElementById("tocIFrame").style.width="101%";\r
+ this.parent.document.getElementById("tocIFrame").style.width="100%";\r
+ }\r
+ }\r
+ return oDiv;\r
+}\r
+\r
+function getChunkId(n)\r
+{\r
+ var nCandidate=-1;\r
+ for(var i=0;i<gaTocs.length;i++){\r
+ if(gaTocs[i].nMI<=n){\r
+ nCandidate=i;\r
+ }\r
+ else\r
+ break;\r
+ }\r
+ if(nCandidate!=-1&&gaTocs[nCandidate].nMI!=-1)\r
+ return nCandidate;\r
+ else\r
+ return -1;\r
+}\r
+\r
+function getChunk(n)\r
+{\r
+ if(gnCC!=-1&&gaTocs[gnCC].nMI<=n&&(gnCC==gaTocs.length-1||\r
+ gaTocs[gnCC+1].nMI>n))\r
+ { \r
+ return gaTocs[gnCC];\r
+ }\r
+ else{\r
+ gnCC=getChunkId(n);\r
+ if(gnCC!=-1)\r
+ return gaTocs[gnCC];\r
+ else\r
+ return null;\r
+ }\r
+}\r
+\r
+function getBookImage(nIdx,bClosed)\r
+{\r
+ var nIdx=bClosed?0:1;\r
+ var sIcon=getItemIcon(nIdx,nIdx);\r
+ if(sIcon=="")\r
+ if(bClosed)\r
+ sIcon=giBookClose;\r
+ else\r
+ sIcon=giBookOpen;\r
+ return _getFullPath(gaProj[0].sPPath,sIcon);\r
+}\r
+\r
+function getItemImage(nIdx,bRemote)\r
+{\r
+ var sIcon=getItemIcon(nIdx,0);\r
+ if(sIcon=="")\r
+ if(bRemote)\r
+ sIcon=giURLItem;\r
+ else\r
+ sIcon=giBookItem;\r
+ return _getFullPath(gaProj[0].sPPath,sIcon);\r
+}\r
+\r
+function expandToc(oObj,sRest,aIdList)\r
+{\r
+ var len=aIdList.length;\r
+ var nPos=sRest.indexOf(gsPathSplit);\r
+ if(nPos!=-1)\r
+ {\r
+ sPart=sRest.substring(0,nPos);\r
+ sRest=sRest.substring(nPos+1);\r
+ }\r
+ else\r
+ {\r
+ sPart=sRest;\r
+ var aTagAs=getItemsByBook(oObj);\r
+ for(var s=0;s<aTagAs.length;s++)\r
+ {\r
+ var sText=getInnerText(aTagAs[s]);\r
+ if(sText.length>0)\r
+ sText=sText.substring(1);\r
+ if(sText==sPart)\r
+ {\r
+ aIdList[len]=aTagAs[s];\r
+ return 1;\r
+ }\r
+ }\r
+ return 0;\r
+ }\r
+ \r
+ var aChildren=getChildrenByTag(oObj,"DIV");\r
+ for(var i=0;i<aChildren.length;i++)\r
+ {\r
+ var sPId=aChildren[i].id;\r
+ if(!isPBId(sPId))\r
+ continue;\r
+ var sText=getInnerText(aChildren[i]);\r
+ if(sText.substring(1)!=sPart)\r
+ continue;\r
+ aIdList[len]=getIdByPBId(sPId);\r
+ var sCId=getCBId(aIdList[len]);\r
+ var oCObj=getElement(sCId);\r
+ if(oCObj)\r
+ {\r
+ if(oCObj.innerHTML=="")\r
+ {\r
+ var obj=getItemsByBook(aChildren[i]);\r
+ if(obj.length>0)\r
+ {\r
+ if(gbNav6)\r
+ {\r
+ var sCommand=obj[0].getAttribute("onClick");\r
+ var nCommand=sCommand.indexOf(";");\r
+ sCommand=sCommand.substring(0,nCommand);\r
+ setTimeout(sCommand,1);\r
+ }\r
+ else\r
+ obj[0].click();\r
+ }\r
+ return -1;\r
+ }\r
+ var nRet=expandToc(oCObj,sRest,aIdList);\r
+ if(nRet)\r
+ return nRet;\r
+ }\r
+ }\r
+ aIdList.length=len;\r
+ return 0;\r
+}\r
+\r
+function getIdByPBId(sPId)\r
+{\r
+ return parseInt(sPId.substring(5,sPId.length-6));\r
+}\r
+\r
+function getIdByCBId(sCId)\r
+{\r
+ return parseInt(sCId.substring(5,sCId.length-5));\r
+}\r
+\r
+function isPBId(sId)\r
+{\r
+ return (sId&&sId.indexOf("Book_")==0&&sId.lastIndexOf("Parent")==sId.length-6);\r
+}\r
+\r
+function isCBId(sId)\r
+{\r
+ return (sId&&sId.indexOf("Book_")==0&&sId.lastIndexOf("Child")==sId.length-5);\r
+}\r
+\r
+function getBId(nIdx)\r
+{\r
+ return "Book_"+nIdx;\r
+}\r
+\r
+function getPBId(nIdx)\r
+{\r
+ return getBId(nIdx)+"Parent";\r
+}\r
+\r
+function getCBId(nIdx)\r
+{\r
+ return getBId(nIdx)+"Child";\r
+}\r
+\r
+function getClosestTocPath(aPaths)\r
+{\r
+ var nMaxSimilarity=0;\r
+ var nThatIndex=-1;\r
+ var sPath=null;\r
+ if(aPaths.length==0) return sPath;\r
+ for(var i=0;i<aPaths.length;i++)\r
+ {\r
+ var nSimilarity=comparePath(gsCTPath,aPaths[i]);\r
+ if(nSimilarity>nMaxSimilarity)\r
+ {\r
+ nMaxSimilarity=nSimilarity;\r
+ nThatIndex=i;\r
+ }\r
+ }\r
+ if(nThatIndex!=-1)\r
+ {\r
+ sPath=aPaths[nThatIndex];\r
+ }\r
+ else\r
+ {\r
+ sPath=aPaths[0];\r
+ }\r
+ return sPath;\r
+}\r
+\r
+function comparePath(sPath1,sPath2)\r
+{\r
+ var nMaxSimilarity=0;\r
+ var nStartPos1=0;\r
+ var nPos1=-1;\r
+ var nStartPos2=0;\r
+ var nPos2=-1;\r
+ do{\r
+ var sCheck1=null;\r
+ var sCheck2=null;\r
+ nPos1=sPath1.indexOf(gsPathSplit,nStartPos1);\r
+ if(nPos1!=-1)\r
+ {\r
+ sCheck1=sPath1.substring(nStartPos1,nPos1);\r
+ nStartPos1=nPos1+1;\r
+ }\r
+ else\r
+ {\r
+ sCheck1=sPath1.substring(nStartPos1);\r
+ nStartPos1=-1;\r
+ }\r
+ nPos2=sPath2.indexOf(gsPathSplit,nStartPos2);\r
+ if(nPos1!=-1)\r
+ {\r
+ sCheck2=sPath2.substring(nStartPos2,nPos2);\r
+ nStartPos2=nPos2+1;\r
+ }\r
+ else\r
+ {\r
+ sCheck2=sPath2.substring(nStartPos2);\r
+ nStartPos2=-1;\r
+ }\r
+ if(sCheck1==sCheck2)\r
+ nMaxSimilarity++;\r
+ else\r
+ break;\r
+ }while(nStartPos1!=-1&&nStartPos2!=-1);\r
+ return nMaxSimilarity;\r
+}\r
+\r
+function getTocPaths(oTopicParam)\r
+{\r
+ var aRelTocPaths=oTopicParam.aPaths;\r
+ var aPaths=new Array();\r
+ for(var i=0;i<gaProj.length;i++)\r
+ {\r
+ if(isSamePath(gaProj[i].sPPath,oTopicParam.sPPath))\r
+ {\r
+ for(var j=0;j<aRelTocPaths.length;j++)\r
+ {\r
+ aPaths[j]=gaRoot[i].sRPath+aRelTocPaths[j];\r
+ aPaths[j]=aPaths[j].substring(1);\r
+ }\r
+ break;\r
+ }\r
+ }\r
+ return aPaths;\r
+}\r
+\r
+function syncInit()\r
+{\r
+ if(gsTP)\r
+ {\r
+ gInSync=true;\r
+ var obj=document.body;\r
+ var aIdList=new Array();\r
+ var nRet=expandToc(obj,gsTP,aIdList);\r
+ if(nRet!=-1)\r
+ {\r
+ if(nRet==1)\r
+ {\r
+ if(aIdList.length)\r
+ for(var i=0;i<aIdList.length-1;i++)\r
+ {\r
+ ExpandIt2(aIdList[i],true);\r
+ }\r
+ gsCTPath=gsTP;\r
+ if(!gbIE55)\r
+ aIdList[aIdList.length-1].focus();\r
+ else\r
+ HighLightElement(aIdList[aIdList.length-1],gsABgColor,"transparent");\r
+ }\r
+ var aPaths=gaBTPs;\r
+ gsTP=null;\r
+ gaBTPs=null;\r
+ if(aPaths!=null)\r
+ {\r
+ var sPath=getClosestTocPath(aPaths);\r
+ if(sPath!=null)\r
+ { \r
+ gsTP=sPath; \r
+ setTimeout("syncInit()",1);\r
+ }\r
+ }\r
+ }\r
+ gInSync=false;\r
+ }\r
+}\r
+\r
+function loadToc()\r
+{\r
+ if(!gbReady)\r
+ {\r
+ var oResMsg=new whMessage(WH_MSG_GETPROJINFO,this,1,null);\r
+ if(SendMessage(oResMsg)&&oResMsg.oParam)\r
+ {\r
+ var oProj=oResMsg.oParam;\r
+ gaProj=oProj.aProj;\r
+ gbXML=oProj.bXML;\r
+ load1B1();\r
+ }\r
+ }\r
+}\r
+\r
+function load1B1()\r
+{\r
+ if(gnLT+1<gaProj.length)\r
+ {\r
+ for(var i=gnLT+1;i<gaProj.length;i++)\r
+ {\r
+ if(gaProj[i].sToc!=null&&gaProj[i].sToc!="")\r
+ {\r
+ gbLoadToc=true;\r
+ gnLT=i;\r
+ setTimeout("loadTocInfo()",1);\r
+ return true;\r
+ }\r
+ }\r
+ }\r
+ return false;\r
+}\r
+\r
+function loadTocInfo()\r
+{\r
+ loadData2(gaProj[gnLT].sPPath+gaProj[gnLT].sDPath+gaProj[gnLT].sToc);\r
+}\r
+\r
+function loadData2(sFile)\r
+{\r
+ if(gbXML)\r
+ loadDataXML(sFile);\r
+ else\r
+ loadData(sFile);\r
+}\r
+\r
+function projReady(sRoot,aProj)\r
+{\r
+ if(gaRoot.length<=gnLT||!gaRoot[gnLT])\r
+ gaRoot[gnLT]=new Object();\r
+ gaRoot[gnLT].sToc=sRoot;\r
+ \r
+ if(gnLT==0)\r
+ gaRoot[gnLT].sRPath=gsPathSplit;\r
+\r
+ updatePTPath(gnLT,aProj);\r
+\r
+ if(!((gnLT+1<gaProj.length)&&load1B1()))\r
+ {\r
+ gbReady=true;\r
+ if(gbIE4)\r
+ setTimeout("loadImages();",1);\r
+ else\r
+ setTimeout("loadTData();",1);\r
+ }\r
+}\r
+\r
+function loadTData()\r
+{\r
+ if(gaProj[0].sToc!="")\r
+ {\r
+ goChunk=addTocChunk(gaProj[0].sPPath,gaProj[0].sDPath);\r
+ gbLoadToc=false;\r
+ loadData2(gaProj[0].sPPath+gaProj[0].sDPath+gaRoot[0].sToc);\r
+ }\r
+}\r
+\r
+function updatePTPath(n,aProj)\r
+{\r
+ if(aProj)\r
+ {\r
+ for(var i=0;i<aProj.length;i++)\r
+ {\r
+ var sFullPath=_getFullPath(gaProj[n].sPPath,aProj[i].sPPath);\r
+ for(var j=0;j<gaProj.length;j++)\r
+ {\r
+ if(isSamePath(sFullPath,gaProj[j].sPPath))\r
+ {\r
+ if(gaRoot.length<=j||!gaRoot[j])\r
+ gaRoot[j]=new Object();\r
+ if(!gaRoot[j].sRPath)\r
+ {\r
+ if(gaRoot[n].sRPath)\r
+ gaRoot[j].sRPath=gaRoot[n].sRPath+aProj[i].sRPath;\r
+ else\r
+ gaRoot[j].sRPath=aProj[i].sRPath;\r
+ }\r
+ break;\r
+ }\r
+ }\r
+ }\r
+ }\r
+}\r
+\r
+function putDataXML(xmlDoc,sDocPath)\r
+{\r
+ if(gbLoadToc)\r
+ {\r
+ var tocNode=xmlDoc.getElementsByTagName("toc")[0];\r
+ if(tocNode)\r
+ {\r
+ var sRoot=tocNode.getAttribute("root");\r
+ var rmtProject=tocNode.getElementsByTagName("project");\r
+ var aRProj=new Array();\r
+ if(rmtProject.length>0)\r
+ {\r
+ for(var i=0;i<rmtProject.length;i++)\r
+ {\r
+ aRProj[i]=new Object();\r
+ aRProj[i].sPPath=rmtProject[i].getAttribute("url");\r
+ aRProj[i].sRPath=rmtProject[i].getAttribute("path");\r
+ }\r
+ }\r
+ projReady(sRoot,aRProj);\r
+ }\r
+ }\r
+ else\r
+ {\r
+ var chunkNode=xmlDoc.getElementsByTagName("tocdata")[0];\r
+ if(chunkNode)\r
+ {\r
+ var aToc=new Array();\r
+ processBook(chunkNode,aToc);\r
+ putData(aToc);\r
+ }\r
+ }\r
+}\r
+\r
+function processBook(node,aToc)\r
+{\r
+ var i=0;\r
+ var entry=null;\r
+ var prevEntry=null;\r
+ var oChild=node.firstChild;\r
+ do{\r
+ if(oChild)\r
+ {\r
+ if(oChild.nodeName.indexOf("#")!=0)\r
+ {\r
+ var sName=oChild.getAttribute("name");\r
+ var sURL=oChild.getAttribute("url");\r
+ var sRef=oChild.getAttribute("ref");\r
+ var sTarget=oChild.getAttribute("target");\r
+ var sIcons=oChild.getAttribute("images");\r
+ var item=new Object();\r
+ item.sItemName=sName;\r
+ if(sTarget)\r
+ item.sTarget=sTarget;\r
+ if(sIcons)\r
+ item.sIconRef=sIcons;\r
+ if(sURL==null) sURL="";\r
+ item.sItemURL=sURL;\r
+ \r
+ if(oChild.nodeName=="book")\r
+ {\r
+ item.nType=1;\r
+ aToc[aToc.length]=item;\r
+ var nCurrPos=aToc.length;\r
+ processBook(oChild,aToc);\r
+ item.nContents=aToc.length-nCurrPos;\r
+ }\r
+ else if(oChild.nodeName=="item")\r
+ {\r
+ item.nType=2;\r
+ item.nContents=0;\r
+ aToc[aToc.length]=item;\r
+ }\r
+ else if(oChild.nodeName=="remoteitem")\r
+ {\r
+ item.nType=16;\r
+ item.nContents=0;\r
+ aToc[aToc.length]=item;\r
+ }\r
+ else if(oChild.nodeName=="project")\r
+ {\r
+ item.nType=4;\r
+ item.sRefURL=sRef;\r
+ item.nContents=0;\r
+ aToc[aToc.length]=item;\r
+ }\r
+ else if(oChild.nodeName=="chunk")\r
+ {\r
+ item.nType=8;\r
+ item.sRefURL=sRef;\r
+ item.nContents=0;\r
+ aToc[aToc.length]=item;\r
+ }\r
+ }\r
+ }\r
+ else\r
+ break;\r
+ oChild=oChild.nextSibling;\r
+ }while(true);\r
+}\r
+\r
+function putData(aTocs)\r
+{\r
+ gaTocsNs61Fix=aTocs;\r
+ setTimeout("realPutData();",1);\r
+}\r
+\r
+function realPutData()\r
+{\r
+ var aTocs=gaTocsNs61Fix;\r
+ if(!aTocs) return;\r
+ if(goChunk)\r
+ {\r
+ var n=gnMinIdx;\r
+ goChunk.nMI=gnMinIdx;\r
+ goChunk.aTocs=aTocs;\r
+ gnMinIdx+=aTocs.length;\r
+ if(gnInsIdx!=-1)\r
+ {\r
+ var oObj=getElement(getCBId(gnInsIdx));\r
+ if(oObj)\r
+ {\r
+ oObj.innerHTML=writeBookItems(n-1,aTocs.length);\r
+ setTimeout("syncInit()",1);\r
+ }\r
+ }\r
+ else{\r
+ document.body.insertAdjacentHTML("beforeEnd",writeBookItems(n-1,aTocs.length));\r
+ var oParam=new Object();\r
+ oParam.oTocInfo=null;\r
+ var oMsg=new whMessage(WH_MSG_GETTOCPATHS,this,1,oParam);\r
+ if(SendMessage(oMsg))\r
+ {\r
+ if (oMsg.oParam.oTocInfo)\r
+ syncWithPaths(oMsg.oParam.oTocInfo);\r
+ }\r
+ } \r
+ }\r
+}\r
+\r
+function syncWithPaths(oTopicParam)\r
+{\r
+ var aPaths=getTocPaths(oTopicParam);\r
+ if(gsTP)\r
+ gaBTPs=aPaths;\r
+ else{\r
+ var sPath=getClosestTocPath(aPaths);\r
+ if(sPath!=null)\r
+ {\r
+ gsTP=sPath;\r
+ setTimeout("syncInit()",1);\r
+ }\r
+ }\r
+}\r
+\r
+function window_OnLoad()\r
+{\r
+ if(gsBgImage&&gsBgImage.length>0)\r
+ {\r
+ document.body.background=gsBgImage;\r
+ }\r
+ if(gsBgColor&&gsBgColor.length>0)\r
+ {\r
+ document.body.bgColor=gsBgColor;\r
+ }\r
+ loadToc();\r
+ var oMsg=new whMessage(WH_MSG_SHOWTOC,this,1,null)\r
+ SendMessage(oMsg);\r
+}\r
+\r
+function loadImages()\r
+{\r
+ if(giBookClose)\r
+ {\r
+ gaImgs[gnImages]=giBookClose;\r
+ gnImages++;\r
+ } \r
+ if(giBookOpen)\r
+ {\r
+ gaImgs[gnImages]=giBookOpen;\r
+ gnImages++;\r
+ } \r
+ if(giBookItem)\r
+ {\r
+ gaImgs[gnImages]=giBookItem;\r
+ gnImages++;\r
+ } \r
+ if(giURLItem)\r
+ {\r
+ gaImgs[gnImages]=giURLItem;\r
+ gnImages++;\r
+ } \r
+ if(giNewBookClose)\r
+ {\r
+ gaImgs[gnImages]=giNewBookClose;\r
+ gnImages++;\r
+ } \r
+ if(giNewBookOpen)\r
+ {\r
+ gaImgs[gnImages]=giNewBookOpen;\r
+ gnImages++;\r
+ } \r
+ if(giNewBookItem)\r
+ {\r
+ gaImgs[gnImages]=giNewBookItem;\r
+ gnImages++;\r
+ } \r
+ if(giNewURLItem)\r
+ {\r
+ gaImgs[gnImages]=giNewURLItem;\r
+ gnImages++;\r
+ }\r
+ if(gnImages>0)\r
+ {\r
+ setTimeout("loadDataAfter();",1000);\r
+ loadImage(gaImgs[0]);\r
+ }\r
+ else\r
+ loadDataAfter();\r
+}\r
+\r
+function loadImage(sURL)\r
+{\r
+ var oImg=new Image();\r
+ oImg.onload=checkImageLoading;\r
+ oImg.onerror=errorImageLoading;\r
+ oImg.src=_getFullPath(gaProj[0].sPPath,sURL);\r
+}\r
+\r
+function loadDataAfter()\r
+{\r
+ if(!gbLoadData)\r
+ {\r
+ gbLoadData=true;\r
+ loadTData();\r
+ }\r
+}\r
+\r
+function errorImageLoading()\r
+{\r
+ gnLoadedImages++;\r
+ if(gnImages==gnLoadedImages)\r
+ loadDataAfter();\r
+ else\r
+ loadImage(gaImgs[gnLoadedImages]); \r
+}\r
+\r
+function checkImageLoading()\r
+{\r
+ gnLoadedImages++;\r
+ if(gnImages==gnLoadedImages)\r
+ loadDataAfter();\r
+ else\r
+ loadImage(gaImgs[gnLoadedImages]); \r
+}\r
+\r
+function window_unload()\r
+{\r
+ UnRegisterListener2(this,WH_MSG_PROJECTREADY);\r
+ UnRegisterListener2(this,WH_MSG_SYNCTOC);\r
+ UnRegisterListener2(this,WH_MSG_SHOWTOC);\r
+}\r
+\r
+function onSendMessage(oMsg)\r
+{\r
+ if(oMsg)\r
+ {\r
+ var nMsgId=oMsg.nMessageId;\r
+ if(nMsgId==WH_MSG_PROJECTREADY)\r
+ {\r
+ loadToc();\r
+ }\r
+ else if(nMsgId==WH_MSG_SYNCTOC)\r
+ {\r
+ if(gbReady)\r
+ {\r
+ syncWithPaths(oMsg.oParam);\r
+ }\r
+ }\r
+ else if(nMsgId==WH_MSG_SHOWTOC)\r
+ {\r
+ if(!gbNav6)\r
+ document.body.focus();\r
+ }\r
+ }\r
+ return true;\r
+}\r
+\r
+if (window.gbWhUtil&&window.gbWhVer&&window.gbWhMsg&&window.gbWhProxy)\r
+{\r
+ RegisterListener2(this,WH_MSG_PROJECTREADY);\r
+ RegisterListener2(this,WH_MSG_SYNCTOC);\r
+ RegisterListener2(this,WH_MSG_SHOWTOC);\r
+ goFont=new whFont("Verdana","8pt","#000000","normal","normal","none");\r
+ goHFont=new whFont("Verdana","8pt","#007f00","normal","normal","underline");\r
+\r
+ window.onload=window_OnLoad;\r
+ window.onbeforeunload=window_BUnload;\r
+ window.onunload=window_unload;\r
+ gbWhTHost=true;\r
+}\r
+else\r
+ document.location.reload();\r
+\r
--- /dev/null
+var gsPPath = "";\r
+var gaPaths = new Array();\r
+var gaAvenues = new Array();\r
+\r
+var goFrame = null;\r
+var gsStartPage = "";\r
+var gsRelCurPagePath = "";\r
+var gsSearchFormHref = "";\r
+var gnTopicOnly = -1;\r
+var gnOutmostTopic = -1;\r
+\r
+var BTN_TEXT=1;\r
+var BTN_IMG=2;\r
+\r
+var goSync = null;\r
+\r
+var goShow = null;\r
+var goHide = null;\r
+\r
+var goPrev = null;\r
+var goNext = null;\r
+var gnForm = 0;\r
+var goShowNav = null;\r
+var goHideNav = null;\r
+\r
+var goWebSearch = null;\r
+\r
+var gsBtnStyle = "";\r
+var gaButtons = new Array();\r
+var gaTypes = new Array();\r
+var whtopic_foldUnload = null;\r
+var gbWhTopic=false;\r
+var gbCheckSync=false;\r
+var gbSyncEnabled=false;\r
+\r
+function setButtonFont(sType, sFontName,sFontSize,sFontColor,sFontStyle,sFontWeight,sFontDecoration)\r
+{\r
+ var vFont=new whFont(sFontName,sFontSize,sFontColor,sFontStyle,sFontWeight,sFontDecoration);\r
+ gsBtnStyle += ".whtbtn" + sType + "{"+getFontStyle(vFont) + "}";\r
+}\r
+\r
+function writeBtnStyle()\r
+{\r
+ if (gaButtons.length > 0)\r
+ {\r
+ if (gsBtnStyle.length > 0)\r
+ {\r
+ var sStyle = "<style type='text/css'>";\r
+ sStyle+= gsBtnStyle + "</style>";\r
+ document.write(sStyle);\r
+ }\r
+ }\r
+}\r
+\r
+function button(sText, nWidth, nHeight)\r
+{\r
+ this.sText = sText;\r
+ this.nWidth = nWidth;\r
+ this.nHeight = nHeight;\r
+ \r
+ this.aImgs = new Array();\r
+ var i = 0;\r
+ while (button.arguments.length > i + 3)\r
+ {\r
+ this.aImgs[i] = button.arguments[3 + i];\r
+ i ++;\r
+ }\r
+}\r
+\r
+// project info\r
+function setRelStartPage(sPath)\r
+{\r
+ if (gsPPath.length == 0)\r
+ {\r
+ gsPPath = _getFullPath(_getPath(document.location.href), _getPath(sPath));\r
+ gsStartPage = _getFullPath(_getPath(document.location.href), sPath);\r
+ gsRelCurPagePath = _getRelativeFileName(gsStartPage, document.location.href);\r
+ }\r
+}\r
+\r
+function getImage(oImage, sType)\r
+{\r
+ var sImg="";\r
+ if (oImage && oImage.aImgs && (oImage.aImgs.length > 0))\r
+ {\r
+ sImg+="<img alt=\""+ sType + "\" src=\"" + oImage.aImgs[0] + "\"";\r
+ if (oImage.nWidth > 0)\r
+ sImg+=" width=" + oImage.nWidth;\r
+ if (oImage.nHeight > 0)\r
+ sImg+=" height=" + oImage.nHeight;\r
+ sImg+=" border=no>";\r
+ }\r
+ return sImg;\r
+}\r
+\r
+function addTocInfo(sTocPath)\r
+{\r
+ gaPaths[gaPaths.length] = sTocPath;\r
+}\r
+\r
+function addAvenueInfo(sName, sPrev, sNext)\r
+{\r
+ gaAvenues[gaAvenues.length] = new avenueInfo(sName, sPrev, sNext); \r
+}\r
+\r
+function addButton(sType, nStyle, sText, sHref, sOnClick, sOnMouseOver, sOnLoad, nWidth, nHeight, sImg1, sImg2, sImg3)\r
+{\r
+ var sButton = "";\r
+ var nBtn=gaButtons.length;\r
+ if (sType == "prev")\r
+ {\r
+ if (canGo(false))\r
+ {\r
+ var sTitle = "Previous Topic";\r
+ goPrev = new button(sText, nWidth, nHeight, sImg1, sImg2, sImg3);\r
+ sButton = "<a title=\"" + sTitle + "\" class=\"whtbtnprev\" href=\"javascript:void(0);\" onclick=\"goAvenue(false);return false;\">";\r
+ if (nStyle == BTN_TEXT)\r
+ sButton += goPrev.sText;\r
+ else\r
+ sButton += getImage(goPrev, sTitle);\r
+ sButton += "</a>";\r
+ }\r
+ }\r
+ else if (sType == "next")\r
+ {\r
+ if (canGo(true))\r
+ {\r
+ var sTitle = "Next Topic";\r
+ goNext = new button(sText, nWidth, nHeight, sImg1, sImg2, sImg3);\r
+ sButton = "<a title=\"" + sTitle + "\" class=\"whtbtnnext\" href=\"javascript:void(0);\" onclick=\"goAvenue(true);return false;\">";\r
+ if (nStyle == BTN_TEXT)\r
+ sButton += goNext.sText;\r
+ else\r
+ sButton += getImage(goNext, sTitle);\r
+ sButton += "</a>";\r
+ }\r
+ }\r
+ else if (sType == "show")\r
+ {\r
+ if (isTopicOnly())\r
+ {\r
+ var sTitle = "Show Navigation Component";\r
+ goShow = new button(sText, nWidth, nHeight, sImg1, sImg2, sImg3);\r
+ sButton = "<a title=\"" + sTitle + "\" class=\"whtbtnshow\" href=\"javascript:void(0);\" onclick=\"show();return false;\">";\r
+ if (nStyle == BTN_TEXT)\r
+ sButton += goShow.sText;\r
+ else\r
+ sButton += getImage(goShow, sTitle);\r
+ sButton += "</a>";\r
+ }\r
+ }\r
+ else if (sType == "hide")\r
+ {\r
+ if (!isTopicOnly())\r
+ {\r
+ var sTitle = "Hide Navigation Component";\r
+ goHide = new button(sText, nWidth, nHeight, sImg1, sImg2, sImg3);\r
+ sButton = "<a title=\"" + sTitle + "\" class=\"whtbtnhide\" href=\"javascript:void(0);\" onclick=\"hide();return false;\">";\r
+ if (nStyle == BTN_TEXT)\r
+ sButton += goHide.sText;\r
+ else\r
+ sButton += getImage(goHide, sTitle);\r
+ sButton += "</a>";\r
+ }\r
+ }\r
+ else if (sType == "shownav")\r
+ {\r
+ \r
+ if (isShowHideEnable())\r
+ {\r
+ var sTitle = "Show Navigation Component";\r
+ goShowNav = new button(sText, nWidth, nHeight, sImg1, sImg2, sImg3);\r
+ sButton = "<a title=\"" + sTitle + "\" class=\"whtbtnshownav\" href=\"javascript:void(0);\" onclick=\"showHidePane(true);return false;\">";\r
+ if (nStyle == BTN_TEXT)\r
+ sButton += goShowNav.sText;\r
+ else\r
+ sButton += getImage(goShowNav, sTitle);\r
+ sButton += "</a>";\r
+ }\r
+ }\r
+ else if (sType == "hidenav")\r
+ {\r
+ if (isShowHideEnable())\r
+ {\r
+ var sTitle = "Hide Navigation Component";\r
+ goHideNav = new button(sText, nWidth, nHeight, sImg1, sImg2, sImg3);\r
+ sButton = "<a title=\"" + sTitle + "\" class=\"whtbtnhidenav\" href=\"javascript:void(0);\" onclick=\"showHidePane(false);return false;\">";\r
+ if (nStyle == BTN_TEXT)\r
+ sButton += goHideNav.sText;\r
+ else\r
+ sButton += getImage(goHideNav, sTitle);\r
+ sButton += "</a>";\r
+ }\r
+ }\r
+ else if (sType == "synctoc")\r
+ {\r
+ if (gaPaths.length > 0)\r
+ {\r
+ var sTitle = "Sync TOC";\r
+ goSync = new button(sText, nWidth, nHeight, sImg1, sImg2, sImg3);\r
+ sButton = "<a title=\""+ sTitle + "\" class=\"whtbtnsynctoc\" href=\"javascript:void(0);\" onclick=\"syncWithShow();return false;\">";\r
+ if (nStyle == BTN_TEXT)\r
+ sButton += goSync.sText;\r
+ else\r
+ sButton += getImage(goSync, sTitle);\r
+ sButton += "</a>";\r
+ }\r
+ }\r
+ else if (sType == "websearch")\r
+ {\r
+ if (gsSearchFormHref.length > 0)\r
+ {\r
+ var sTitle = "WebSearch";\r
+ goWebSearch = new button(sText, nWidth, nHeight, sImg1, sImg2, sImg3);\r
+ sButton = "<a title=\""+ sTitle + "\" class=\"whtbtnwebsearch\" href=\"" + gsSearchFormHref + "\">";\r
+ if (nStyle == BTN_TEXT)\r
+ sButton += goWebSearch.sText;\r
+ else\r
+ sButton += getImage(goWebSearch, sTitle);\r
+ sButton += "</a>";\r
+ }\r
+ }\r
+ else if (sType == "searchform")\r
+ {\r
+ gaButtons[nBtn] = "NeedSearchForm";\r
+ gaTypes[nBtn] = sType;\r
+ }\r
+ if (sButton.length != 0)\r
+ {\r
+ if (nStyle == BTN_TEXT)\r
+ sButton += " ";\r
+ gaButtons[nBtn] = "<td>" + sButton + "</td>";\r
+ gaTypes[nBtn] = sType;\r
+ }\r
+}\r
+\r
+function isSyncEnabled()\r
+{\r
+ if (!gbCheckSync)\r
+ {\r
+ var oMsg=new whMessage(WH_MSG_ISSYNCSSUPPORT,this,1,null);\r
+ if(SendMessage(oMsg))\r
+ {\r
+ gbSyncEnabled=oMsg.oParam;\r
+ }\r
+ gbCheckSync=true;\r
+ }\r
+ return gbSyncEnabled;\r
+}\r
+\r
+function isInPopup()\r
+{\r
+ return (window.name.indexOf("BSSCPopup") != -1);\r
+}\r
+\r
+function getIntopicBar(sAlign)\r
+{\r
+ var sHTML = "";\r
+ if (gaButtons.length > 0)\r
+ {\r
+ sHTML += "<div align="+ sAlign + ">";\r
+\r
+ sHTML += "<table cellpadding=\"2\" cellspacing=\"0\" border=\"0\"><tr>";\r
+ for (var i = 0; i < gaButtons.length; i++)\r
+ {\r
+ if (gaTypes[i]!="synctoc" || isSyncEnabled())\r
+ {\r
+ if (gaButtons[i] == "NeedSearchForm")\r
+ sHTML += getSearchFormHTML();\r
+ else\r
+ sHTML += gaButtons[i];\r
+ }\r
+ }\r
+ sHTML += "</tr></table>";\r
+\r
+ sHTML += "</div>";\r
+ }\r
+ return sHTML;\r
+}\r
+\r
+\r
+function writeIntopicBar(nAligns)\r
+{\r
+ if (isInPopup()) return;\r
+ if (gaButtons.length > 0)\r
+ {\r
+ var sHTML = "";\r
+ if (nAligns != 0)\r
+ {\r
+ sHTML += "<table width=100%><tr>"\r
+ if (nAligns & 1)\r
+ sHTML += "<td width=33%>" + getIntopicBar("left") + "</td>";\r
+ if (nAligns & 2)\r
+ sHTML += "<td width=34%>" + getIntopicBar("center") + "</td>";\r
+ if (nAligns & 4)\r
+ sHTML += "<td width=33%>" + getIntopicBar("right") + "</td>";\r
+ sHTML += "</tr></table>";\r
+ document.write(sHTML);\r
+ }\r
+ }\r
+}\r
+\r
+function sendAveInfoOut()\r
+{\r
+ if (!isInPopup())\r
+ setTimeout("sendAveInfo();", 100);\r
+}\r
+\r
+function sendAveInfo()\r
+{\r
+ var oMsg = new whMessage(WH_MSG_AVENUEINFO, this, 1, gaAvenues);\r
+ SendMessage(oMsg);\r
+}\r
+\r
+\r
+function onNext()\r
+{\r
+ var oMsg = new whMessage(WH_MSG_NEXT, this, 1, null);\r
+ SendMessage(oMsg);\r
+}\r
+\r
+function onPrev()\r
+{\r
+ var oMsg = new whMessage(WH_MSG_PREV, this, 1, null);\r
+ SendMessage(oMsg);\r
+}\r
+\r
+function createSyncInfo()\r
+{\r
+ var oParam = new Object();\r
+ if (gsPPath.length == 0)\r
+ gsPPath = _getPath(document.location.href);\r
+ oParam.sPPath = gsPPath;\r
+ oParam.sTPath = document.location.href;\r
+ oParam.aPaths = gaPaths;\r
+ return oParam;\r
+}\r
+\r
+function syncWithShow()\r
+{\r
+ if (isTopicOnly())\r
+ show();\r
+ else \r
+ {\r
+ sync();\r
+ showTocPane();\r
+ }\r
+}\r
+\r
+function showTocPane()\r
+{\r
+ var oMsg = new whMessage(WH_MSG_SHOWTOC, this, 1, null);\r
+ SendMessage(oMsg);\r
+}\r
+\r
+function sendSyncInfo()\r
+{\r
+ if (!isInPopup())\r
+ {\r
+ var oParam = null;\r
+ if (gaPaths.length > 0)\r
+ {\r
+ oParam = createSyncInfo();\r
+ }\r
+ var oMsg = new whMessage(WH_MSG_SYNCINFO, this, 1, oParam);\r
+ SendMessage(oMsg);\r
+ }\r
+}\r
+\r
+function sendInvalidSyncInfo()\r
+{\r
+ if (!isInPopup())\r
+ {\r
+ var oMsg = new whMessage(WH_MSG_SYNCINFO, this, 1, null);\r
+ SendMessage(oMsg);\r
+ }\r
+}\r
+\r
+function enableWebSearch(bEnable)\r
+{\r
+ if (!isInPopup())\r
+ {\r
+ var oMsg = new whMessage(WH_MSG_ENABLEWEBSEARCH, this, 1, bEnable);\r
+ SendMessage(oMsg);\r
+ }\r
+}\r
+\r
+function autoSync(nSync)\r
+{\r
+ if (nSync == 0) return;\r
+ if (isInPopup()) return;\r
+ if (isOutMostTopic())\r
+ sync();\r
+}\r
+\r
+function isOutMostTopic()\r
+{\r
+ if (gnOutmostTopic == -1)\r
+ {\r
+ var oMessage = new whMessage(WH_MSG_ISINFRAMESET, this, 1 , null);\r
+ if (SendMessage(oMessage))\r
+ gnOutmostTopic = 0;\r
+ else\r
+ gnOutmostTopic = 1;\r
+ }\r
+ return (gnOutmostTopic == 1);\r
+}\r
+\r
+function sync()\r
+{\r
+ if (gaPaths.length > 0)\r
+ {\r
+ var oParam = createSyncInfo();\r
+ var oMessage = new whMessage(WH_MSG_SYNCTOC, this, 1, oParam);\r
+ SendMessage(oMessage);\r
+ }\r
+}\r
+\r
+\r
+function avenueInfo(sName, sPrev, sNext)\r
+{\r
+ this.sName = sName;\r
+ this.sPrev = sPrev;\r
+ this.sNext = sNext;\r
+}\r
+\r
+function getCurrentAvenue()\r
+{\r
+ var oParam = new Object();\r
+ oParam.sAvenue = null;\r
+ var oMessage = new whMessage(WH_MSG_GETCURRENTAVENUE, this, 1, oParam);\r
+ SendMessage(oMessage);\r
+ return oParam.sAvenue;\r
+}\r
+\r
+function unRegisterListener()\r
+{\r
+ sendInvalidSyncInfo();\r
+ enableWebSearch(false);\r
+ if (whtopic_foldUnload)\r
+ whtopic_foldUnload();\r
+}\r
+\r
+function onSendMessage(oMsg)\r
+{\r
+ var nMsgId = oMsg.nMessageId;\r
+ if (nMsgId == WH_MSG_GETAVIAVENUES)\r
+ {\r
+ oMsg.oParam.aAvenues = gaAvenues;\r
+ return false;\r
+ }\r
+ else if (nMsgId == WH_MSG_GETTOCPATHS)\r
+ {\r
+ if (isOutMostTopic())\r
+ {\r
+ oMsg.oParam.oTocInfo = createSyncInfo();\r
+ return false; \r
+ }\r
+ else\r
+ return true;\r
+ }\r
+ else if (nMsgId == WH_MSG_NEXT)\r
+ {\r
+ goAvenue(true);\r
+ }\r
+ else if (nMsgId == WH_MSG_PREV)\r
+ {\r
+ goAvenue(false);\r
+ }\r
+ else if (nMsgId == WH_MSG_WEBSEARCH)\r
+ {\r
+ websearch();\r
+ }\r
+ return true;\r
+}\r
+\r
+function goAvenue(bNext)\r
+{\r
+ var sTopic = null;\r
+ var sAvenue = getCurrentAvenue();\r
+ var nAvenue = -1;\r
+ if (sAvenue != null && sAvenue != "")\r
+ {\r
+ for (var i = 0; i < gaAvenues.length ; i ++)\r
+ {\r
+ if (gaAvenues[i].sName == sAvenue)\r
+ {\r
+ nAvenue = i;\r
+ break;\r
+ }\r
+ }\r
+ if (nAvenue != -1)\r
+ {\r
+ if (bNext)\r
+ sTopic = gaAvenues[nAvenue].sNext;\r
+ else\r
+ sTopic = gaAvenues[nAvenue].sPrev;\r
+ }\r
+ }\r
+ else\r
+ { \r
+ for (var i = 0; i < gaAvenues.length ; i ++)\r
+ {\r
+ if (gaAvenues[i].sNext != null && gaAvenues[i].sNext.length > 0 && bNext)\r
+ {\r
+ sTopic = gaAvenues[i].sNext;\r
+ break;\r
+ }\r
+ else if (gaAvenues[i].sPrev != null && gaAvenues[i].sPrev.length > 0 && !bNext)\r
+ {\r
+ sTopic = gaAvenues[i].sPrev;\r
+ break;\r
+ }\r
+ }\r
+ }\r
+ \r
+ if (sTopic != null && sTopic != "")\r
+ {\r
+ if (gsPPath != null && gsPPath != "")\r
+ {\r
+ sFullTopicPath = _getFullPath(gsPPath, sTopic);\r
+ document.location = sFullTopicPath;\r
+ }\r
+ }\r
+}\r
+\r
+function canGo(bNext)\r
+{\r
+ for (var i = 0; i < gaAvenues.length ; i ++)\r
+ {\r
+ if ((gaAvenues[i].sNext != null && gaAvenues[i].sNext.length > 0 && bNext) ||\r
+ (gaAvenues[i].sPrev != null && gaAvenues[i].sPrev.length > 0 && !bNext))\r
+ return true;\r
+ }\r
+ return false;\r
+}\r
+\r
+function show()\r
+{\r
+ if (gsStartPage != "")\r
+ window.location = gsStartPage + "#" + gsRelCurPagePath;\r
+}\r
+\r
+function hide()\r
+{\r
+ if (goFrame != null)\r
+ {\r
+ goFrame.location = window.location;\r
+ }\r
+}\r
+\r
+function isTopicOnly()\r
+{\r
+ if (gnTopicOnly == -1)\r
+ {\r
+ var oParam = new Object();\r
+ oParam.oFrame = null;\r
+ var oMsg = new whMessage(WH_MSG_GETSTARTFRAME, this, 1, oParam);\r
+ if (SendMessage(oMsg))\r
+ {\r
+ goFrame = oParam.oFrame;\r
+ gnTopicOnly = 0;\r
+ }\r
+ else\r
+ gnTopicOnly = 1;\r
+ }\r
+ if (gnTopicOnly == 1)\r
+ return true;\r
+ else\r
+ return false;\r
+}\r
+\r
+function websearch()\r
+{\r
+ if (gbNav4)\r
+ {\r
+ if (document.ehelpform)\r
+ document.ehelpform.submit();\r
+ }\r
+ else\r
+ {\r
+ if (window.ehelpform)\r
+ window.ehelpform.submit();\r
+ }\r
+}\r
+\r
+function addSearchFormHref(sHref)\r
+{\r
+ gsSearchFormHref = sHref;\r
+ enableWebSearch(true);\r
+}\r
+\r
+function searchB(nForm)\r
+{\r
+ var sValue = eval("document.searchForm" + nForm + ".searchString.value");\r
+ var oMsg = new whMessage(WH_MSG_SEARCHTHIS, this, 1, sValue);\r
+ SendMessage(oMsg);\r
+}\r
+\r
+function getSearchFormHTML()\r
+{\r
+ var sHTML = "";\r
+ gnForm ++;\r
+ var sFormName = "searchForm" + gnForm;\r
+ var sButton = "<form name=\"" + sFormName + "\" method=\"POST\" action=\"javascript:searchB("+ gnForm + ")\">"\r
+ sButton += "<input type=\"text\" name=\"searchString\" value=\"- Full Text search -\" size=\"20\"/>";\r
+ if ("" == "text")\r
+ {\r
+ sButton+="<a class=\"searchbtn\" href=\"javascript:void(0);\" onclick=\"" + sFormName + ".submit(); return false;\"></a>";\r
+ }\r
+ else if ("" == "image")\r
+ {\r
+ sButton+="<a class=\"searchbtn\" href=\"javascript:void(0);\" onclick=\"" + sFormName + ".submit(); return false;\">"\r
+ sButton+="<img src=\"\" border=0></a>";\r
+ }\r
+ sButton += "</form>";\r
+ sHTML ="<td align=\"center\">" + sButton + "</td>";\r
+ return sHTML;\r
+}\r
+\r
+function showHidePane(bShow)\r
+{\r
+ var oMsg=null;\r
+ if (bShow)\r
+ oMsg=new whMessage(WH_MSG_SHOWPANE, this, 1, null);\r
+ else\r
+ oMsg=new whMessage(WH_MSG_HIDEPANE, this, 1, null);\r
+ SendMessage(oMsg);\r
+}\r
+\r
+function isShowHideEnable()\r
+{\r
+ if (gbIE4)\r
+ return true;\r
+ else\r
+ return false;\r
+}\r
+\r
+if(window.gbWhUtil&&window.gbWhMsg&&window.gbWhVer&&window.gbWhProxy)\r
+{\r
+ RegisterListener("bsscright", WH_MSG_GETAVIAVENUES);\r
+ RegisterListener("bsscright", WH_MSG_GETTOCPATHS);\r
+ RegisterListener("bsscright", WH_MSG_NEXT);\r
+ RegisterListener("bsscright", WH_MSG_PREV);\r
+ RegisterListener("bsscright", WH_MSG_WEBSEARCH);\r
+ if (gbMac && gbIE4)\r
+ {\r
+ if (typeof(window.onunload) != "unknown")\r
+ whtopic_foldUnload = window.onunload;\r
+ }\r
+ else\r
+ {\r
+ if (window.onunload)\r
+ whtopic_foldUnload = window.onunload;\r
+ }\r
+ window.onunload = unRegisterListener;\r
+ setButtonFont("show","","10pt","","","","");\r
+\r
+ gbWhTopic=true;\r
+}\r
+else\r
+ document.location.reload();
\ No newline at end of file
--- /dev/null
+var gsFileName="";\r
+var xmlDoc=null;\r
+var sdocPath=null;\r
+var gsInsertBeforeEndHTML="";\r
+var sReplaceStringsSrc=new Array();\r
+sReplaceStringsSrc[0]="&";\r
+sReplaceStringsSrc[1]=">";\r
+sReplaceStringsSrc[2]="<";\r
+sReplaceStringsSrc[3]=""";\r
+sReplaceStringsSrc[4]=" ";\r
+var sReplaceStringsDst=new Array();\r
+sReplaceStringsDst[0]="&";\r
+sReplaceStringsDst[1]=">";\r
+sReplaceStringsDst[2]="<";\r
+sReplaceStringsDst[3]="\"";\r
+sReplaceStringsDst[4]=" ";\r
+var goHighLighted=null;\r
+\r
+function _getRelativePath(strParentPath,strCurrentPath)\r
+{\r
+ if(_isAbsPath(strCurrentPath)) return _getPath(strCurrentPath);\r
+ strParentPath=_replaceSlash(strParentPath);\r
+ strParentPath=_getPath(strParentPath);\r
+ strCurrentPath=_replaceSlash(strCurrentPath);\r
+ strCurrentPath=_getPath(strCurrentPath);\r
+ for(var i=0;i<strParentPath.length&&i<strCurrentPath.length;i++)\r
+ {\r
+ if(strParentPath.charAt(i)!=strCurrentPath.charAt(i))\r
+ break;\r
+ }\r
+ \r
+ strParentPath=strParentPath.substring(i);\r
+ strCurrentPath=strCurrentPath.substring(i); \r
+ \r
+ var nPathPos=0;\r
+ while(nPathPos!=-1)\r
+ {\r
+ nPathPos=strParentPath.indexOf("/");\r
+ if(nPathPos!=-1)\r
+ {\r
+ strParentPath=strParentPath.substring(nPathPos+1);\r
+ strCurrentPath="../"+strCurrentPath;\r
+ }\r
+ }\r
+ return strCurrentPath;\r
+}\r
+\r
+function _getRelativeFileName(strParentPath, strCurrentPath)\r
+{\r
+ strParentPath=_replaceSlash(strParentPath);\r
+ strParentPath=_getPath(strParentPath);\r
+ strCurrentPath=_replaceSlash(strCurrentPath);\r
+ for(var i=0;i<strParentPath.length&&i<strCurrentPath.length;i++)\r
+ {\r
+ if(strParentPath.charAt(i)!=strCurrentPath.charAt(i))\r
+ break;\r
+ }\r
+ \r
+ strParentPath=strParentPath.substring(i);\r
+ strCurrentPath=strCurrentPath.substring(i); \r
+ \r
+ var nPathPos=0;\r
+ while(nPathPos!=-1)\r
+ {\r
+ nPathPos=strParentPath.indexOf("/");\r
+ if(nPathPos!=-1)\r
+ {\r
+ strParentPath=strParentPath.substring(nPathPos+1);\r
+ strCurrentPath="../"+strCurrentPath;\r
+ }\r
+ }\r
+ return strCurrentPath;\r
+}\r
+\r
+function _isAbsPathToHost(sPath)\r
+{\r
+ return (sPath.indexOf("/")==0);\r
+}\r
+\r
+function _getHost(sPath)\r
+{\r
+ var nPos=sPath.indexOf("//");\r
+ if(nPos>0)\r
+ {\r
+ var nPosx=sPath.indexOf("/",nPos+2);\r
+ if(nPosx>0)\r
+ return sPath.substring(0,nPosx);\r
+ else\r
+ return sPath;\r
+ }\r
+ return sPath;\r
+}\r
+\r
+function _getFullPath(sPath,sRelPath)\r
+{\r
+ if(_isAbsPath(sRelPath))\r
+ return sRelPath;\r
+ else if(_isAbsPathToHost(sRelPath))\r
+ return _getHost(sPath)+sRelPath;\r
+ else\r
+ {\r
+ var sFullPath=sPath;\r
+ var nPathPos=0;\r
+ while(nPathPos!=-1)\r
+ {\r
+ var nPathPos=sRelPath.indexOf("../");\r
+ if(nPathPos!=-1)\r
+ {\r
+ sRelPath=sRelPath.substring(nPathPos+3);\r
+ sFullPath=sFullPath.substring(0,sFullPath.length-1);\r
+ var nPos2 = sFullPath.lastIndexOf("/");\r
+ if(nPos2!=-1)\r
+ sFullPath=sFullPath.substring(0,nPos2+1);\r
+ else\r
+ break;\r
+ }\r
+ }\r
+ sFullPath+=sRelPath;\r
+ return sFullPath;\r
+ } \r
+}\r
+\r
+function _isAbsPath(strPath)\r
+{\r
+ var strUpper=strPath.toUpperCase();\r
+ return (strUpper.indexOf(":")!=-1);\r
+}\r
+\r
+function _replaceSlash(strURL)\r
+{ \r
+ var re=new RegExp("\\\\","g");\r
+ var strReplacedURL=strURL.replace(re,"/");\r
+ return strReplacedURL;\r
+}\r
+\r
+function _getPath(strURL)\r
+{\r
+ pathpos=strURL.lastIndexOf("/");\r
+ if(pathpos>0)\r
+ return strURL.substring(0,pathpos+1);\r
+ else\r
+ return "";\r
+}\r
+\r
+function removeItemFromArray(oArray,i)\r
+{\r
+ if(oArray.length&&i>=0&&i<oArray.length)\r
+ {\r
+ var len=oArray.length;\r
+ for(var s=i;s<len-1;s++)\r
+ oArray[s]=oArray[s+1];\r
+ oArray.length=len-1;\r
+ }\r
+}\r
+\r
+function insertItemIntoArray(oArray,i,obj)\r
+{\r
+ if(oArray.length&&i>=0&&i<=oArray.length)\r
+ {\r
+ var len=oArray.length;\r
+ for(var s=len;s>i;s--)\r
+ oArray[s]=oArray[s-1];\r
+ oArray[i]=obj; \r
+ }\r
+}\r
+\r
+function loadData(sFileName)\r
+{\r
+ if(!getElement("dataDiv"))\r
+ {\r
+ if(!insertDataDiv())\r
+ {\r
+ gsFileName=sFileName;\r
+ return;\r
+ }\r
+ }\r
+ var sHTML="";\r
+ if(gbMac)\r
+ sHTML+="<iframe src="+sFileName+"></iframe>";\r
+ else\r
+ sHTML+="<iframe style=\"visibility:hidden;width:0;height:0\" src="+sFileName+"></iframe>";\r
+ \r
+ var oDivCon=getElement("dataDiv");\r
+ if(oDivCon)\r
+ {\r
+ if(gbNav6)\r
+ {\r
+ if(oDivCon.getElementsByTagName&&oDivCon.getElementsByTagName("iFrame").length>0)\r
+ {\r
+ oDivCon.getElementsByTagName("iFrame")[0].src=sFileName;\r
+ }\r
+ else\r
+ oDivCon.innerHTML=sHTML;\r
+ }\r
+ else\r
+ oDivCon.innerHTML=sHTML;\r
+ }\r
+}\r
+\r
+function loadDataXML(sFileName)\r
+{\r
+ var sCurrentDocPath=_getPath(document.location.href);\r
+ sdocPath=_getFullPath(sCurrentDocPath,sFileName);\r
+ if(gbIE5)\r
+ {\r
+ xmlDoc=new ActiveXObject("Microsoft.XMLDOM");\r
+ xmlDoc.async=true;\r
+ xmlDoc.onreadystatechange=checkState;\r
+ if(document.body!=null)\r
+ xmlDoc.load(sdocPath);\r
+ }\r
+ else if(gbNav6)\r
+ {\r
+ xmlDoc=document.implementation.createDocument("","",null);\r
+ xmlDoc.addEventListener("load",initializeData,false);\r
+ xmlDoc.load(sdocPath,"text/xml");\r
+ }\r
+}\r
+\r
+function initializeData()\r
+{\r
+ if(xmlDoc!=null)\r
+ putDataXML(xmlDoc,sdocPath);\r
+}\r
+\r
+function checkState()\r
+{\r
+ if(xmlDoc!=null)\r
+ {\r
+ var state=xmlDoc.readyState;\r
+ if(state==4)\r
+ {\r
+ var err=xmlDoc.parseError;\r
+ if(err.errorCode!=0)\r
+ alert(err.reason);\r
+ else\r
+ putDataXML(xmlDoc,sdocPath);\r
+ }\r
+ }\r
+}\r
+\r
+function insertDataDiv()\r
+{\r
+ var sHTML="";\r
+ if(gbMac)\r
+ sHTML+="<div id=dataDiv style=\"display:none;\"></div>";\r
+ else\r
+ sHTML+="<div id=dataDiv style=\"visibility:hidden\"></div>";\r
+ if((gbIE5||gbNav6)&&document.body)\r
+ document.body.insertAdjacentHTML("beforeEnd",sHTML);\r
+ else\r
+ {\r
+ gsInsertBeforeEndHTML=sHTML;\r
+ setTimeout("insertWhenBodyReady();",100);\r
+ return false;\r
+ }\r
+ return true;\r
+}\r
+\r
+function insertWhenBodyReady()\r
+{\r
+ if(gsInsertBeforeEndHTML=="") return;\r
+ if(document.body)\r
+ {\r
+ document.body.insertAdjacentHTML("beforeEnd",gsInsertBeforeEndHTML);\r
+ gsInsertBeforeEndHTML="";\r
+ loadData(gsFileName);\r
+ }\r
+ else\r
+ {\r
+ setTimeout("insertWhenBodyReady();",100);\r
+ }\r
+}\r
+\r
+function window_BUnload()\r
+{\r
+ var oDivCon=getElement("dataDiv");\r
+ if(oDivCon)\r
+ oDivCon.innerHTML="";\r
+}\r
+\r
+function removeThis(obj)\r
+{\r
+ if(obj.parentNode)\r
+ obj.parentNode.removeChild(obj);\r
+ else\r
+ obj.outerHTML="";\r
+}\r
+\r
+function getParentNode(obj)\r
+{\r
+ if(obj.parentNode)\r
+ return obj.parentNode;\r
+ else if(obj.parentElement)\r
+ return obj.parentElement;\r
+ return null;\r
+}\r
+\r
+function getElement(sID)\r
+{\r
+ if(document.getElementById)\r
+ return document.getElementById(sID);\r
+ else if(document.all)\r
+ return document.all(sID);\r
+ return null;\r
+}\r
+\r
+function getChildrenByTag(obj,sTagName)\r
+{\r
+ if(obj.getElementsByTagName)\r
+ {\r
+ var aChildren=new Array();\r
+ var aElements=getElementsByTag(obj,sTagName);\r
+ if(aElements!=null)\r
+ {\r
+ for(var i=0;i<aElements.length;i++)\r
+ {\r
+ if(aElements[i].parentNode==obj)\r
+ aChildren[aChildren.length]=aElements[i];\r
+ }\r
+ return aChildren;\r
+ }\r
+ else\r
+ return new Array();\r
+ }\r
+ else if(obj.children)\r
+ return obj.children.tags(sTagName);\r
+}\r
+\r
+function getElementsByTag(obj,sTagName)\r
+{\r
+ if(obj.getElementsByTagName)\r
+ return obj.getElementsByTagName(sTagName);\r
+ else if(obj.all)\r
+ return obj.all.tags(sTagName);\r
+ return null;\r
+}\r
+\r
+function _htmlToText(sHTML)\r
+{\r
+ if(sHTML==null) return null;\r
+ var sText=sHTML;\r
+ for(var i=0;i<sReplaceStringsSrc.length;i++)\r
+ {\r
+ var re=new RegExp(sReplaceStringsSrc[i],"g");\r
+ sText=sText.replace(re,sReplaceStringsDst[i]);\r
+ } \r
+ return sText;\r
+}\r
+\r
+function _textToHtml_nonbsp(sText)\r
+{\r
+ if(sText==null) return null;\r
+ var sHTML=sText;\r
+ for(var i=0;i<sReplaceStringsSrc.length-1;i++)\r
+ {\r
+ var re=new RegExp(sReplaceStringsDst[i],"g");\r
+ sHTML=sHTML.replace(re,sReplaceStringsSrc[i]);\r
+ } \r
+ return sHTML;\r
+}\r
+\r
+function _textToHtml(sText)\r
+{\r
+ if(sText==null) return null;\r
+ var sHTML=sText;\r
+ for(var i=0;i<sReplaceStringsSrc.length;i++)\r
+ {\r
+ var re=new RegExp(sReplaceStringsDst[i],"g");\r
+ sHTML=sHTML.replace(re,sReplaceStringsSrc[i]);\r
+ } \r
+ return sHTML;\r
+}\r
+\r
+\r
+function getInnerText(obj)\r
+{\r
+ var renbsp2sp=new RegExp("\xa0","g");\r
+ if(obj.innerText)\r
+ {\r
+ var sText=obj.innerText;\r
+ sText=sText.replace(renbsp2sp," ");\r
+ return sText;\r
+ }\r
+ else\r
+ {\r
+ if(obj.nodeValue)\r
+ {\r
+ var sValue=obj.nodeValue;\r
+ sValue=sValue.replace(renbsp2sp," ");\r
+ return sValue;\r
+ }\r
+ else\r
+ {\r
+ var sText="";\r
+ var oChild=obj.firstChild;\r
+ while(oChild!=null)\r
+ {\r
+ sText+=getInnerText(oChild);\r
+ oChild=oChild.nextSibling;\r
+ }\r
+ return sText;\r
+ }\r
+ }\r
+ \r
+}\r
+\r
+function HighLightElement(obj,sHighLightColor,sNormalColor)\r
+{\r
+ if(obj!=null)\r
+ {\r
+ resetHighLight(sNormalColor);\r
+ obj.style.backgroundColor=sHighLightColor;\r
+ goHighLighted=obj;\r
+ }\r
+}\r
+\r
+function resetHighLight(sNormalColor)\r
+{\r
+ if(goHighLighted!=null)\r
+ {\r
+ goHighLighted.style.backgroundColor=sNormalColor;\r
+ goHighLighted=null;\r
+ }\r
+}\r
+\r
+function whFont(sName,sSize,sColor,sStyle,sWeight,sDecoration)\r
+{\r
+ this.sName=sName;\r
+ this.sSize=sSize;\r
+ this.sColor=sColor;\r
+ this.sStyle=sStyle;\r
+ this.sWeight=sWeight;\r
+ this.sDecoration=sDecoration;\r
+}\r
+\r
+function getFontStyle(oFont)\r
+{\r
+ var sStyle="";\r
+ if(oFont)\r
+ {\r
+ sStyle+="font-family:"+oFont.sName+";";\r
+ if(gbMac)\r
+ {\r
+ var nSize=parseInt(oFont.sSize);\r
+ if(gbIE5)\r
+ nSize+=2;\r
+ else\r
+ nSize+=4;\r
+ sStyle+="font-size:"+nSize+"pt;";\r
+ }\r
+ else\r
+ sStyle+="font-size:"+oFont.sSize+";";\r
+ \r
+ sStyle+="font-style:"+oFont.sStyle+";";\r
+ sStyle+="font-weight:"+oFont.sWeight+";";\r
+ sStyle+="text-decoration:"+oFont.sDecoration+";";\r
+ sStyle+="color:"+oFont.sColor+";";\r
+ }\r
+ return sStyle;\r
+}\r
+\r
+var gbWhUtil=true;
\ No newline at end of file
--- /dev/null
+var gbNav6=false;\r
+var gbNav61=false;\r
+var gbNav4=false;\r
+var gbIE4=false;\r
+var gbIE=false;\r
+var gbIE5=false;\r
+var gbIE55=false;\r
+\r
+var gAgent=navigator.userAgent.toLowerCase();\r
+var gbMac=(gAgent.indexOf("mac")!=-1);\r
+var gbSunOS=(gAgent.indexOf("sunos")!=-1);\r
+var gbOpera=(gAgent.indexOf("opera")!=-1);\r
+\r
+var gVersion=navigator.appVersion.toLowerCase();\r
+\r
+var gnVerMajor=parseInt(gVersion);\r
+var gnVerMinor=parseFloat(gVersion);\r
+\r
+gbIE=(navigator.appName.indexOf("Microsoft")!=-1);\r
+if(gnVerMajor>=4)\r
+{\r
+ if(navigator.appName=="Netscape")\r
+ {\r
+ gbNav4=true;\r
+ if(gnVerMajor>=5)\r
+ gbNav6=true;\r
+ }\r
+ gbIE4=(navigator.appName.indexOf("Microsoft")!=-1);\r
+}\r
+if(gbNav6)\r
+{\r
+ document.gnPageWidth=innerWidth;\r
+ document.gnPageHeight=innerHeight;\r
+ var nPos=gAgent.indexOf("netscape");\r
+ if(nPos!=-1)\r
+ {\r
+ var nVersion=parseFloat(gAgent.substring(nPos+10));\r
+ if(nVersion>=6.1)\r
+ gbNav61=true;\r
+ }\r
+}else if(gbIE4)\r
+{\r
+ var nPos=gAgent.indexOf("msie");\r
+ if(nPos!=-1)\r
+ {\r
+ var nVersion=parseFloat(gAgent.substring(nPos+5));\r
+ if(nVersion>=5)\r
+ gbIE5=true;\r
+ if(nVersion>=5.5)\r
+ gbIE55=true;\r
+ }\r
+}\r
+\r
+var gbWhVer=true;
\ No newline at end of file
--- /dev/null
+# Copyright (C) 2003 CEA/DEN, EDF R&D
+#
+#
+#
+# File : Makefile.in
+# Author : Vasily Rusyaev (Open Cascade NN)
+# Module : doc
+# $Header:
+
+top_srcdir=@top_srcdir@
+top_builddir=../../..
+srcdir=@srcdir@
+VPATH=.:@srcdir@
+
+@COMMENCE@
+
+docs:
+ cp -fr $(srcdir)/KERNEL ./
+ -find $(PWD) -name CVS -exec rm -rf {} \;
+
+clean:
+ rm -fr `ls | grep -v "Makefile"`
+
+distclean: clean
+ rm -fr KERNEL
+
+install:
+ mkdir -p $(docdir)/gui
+ cp -rf KERNEL $(docdir)/gui
+ -find $(PWD) -name CVS -exec rm -rf {} \;
+
+uninstall:
+ rm -rf $(docdir)/gui/KERNEL
--- /dev/null
+%!PS-Adobe-2.0
+%%Creator: dvips(k) 5.86 Copyright 1999 Radical Eye Software
+%%Title: kernel_resources.dvi
+%%Pages: 8
+%%PageOrder: Ascend
+%%BoundingBox: 0 0 612 792
+%%EndComments
+%DVIPSWebPage: (www.radicaleye.com)
+%DVIPSCommandLine: dvips -t letter -o kernel_resources.ps
+%+ kernel_resources.dvi
+%DVIPSParameters: dpi=600, compressed
+%DVIPSSource: TeX output 2002.01.17:1829
+%%BeginProcSet: texc.pro
+%!
+/TeXDict 300 dict def TeXDict begin/N{def}def/B{bind def}N/S{exch}N/X{S
+N}B/A{dup}B/TR{translate}N/isls false N/vsize 11 72 mul N/hsize 8.5 72
+mul N/landplus90{false}def/@rigin{isls{[0 landplus90{1 -1}{-1 1}ifelse 0
+0 0]concat}if 72 Resolution div 72 VResolution div neg scale isls{
+landplus90{VResolution 72 div vsize mul 0 exch}{Resolution -72 div hsize
+mul 0}ifelse TR}if Resolution VResolution vsize -72 div 1 add mul TR[
+matrix currentmatrix{A A round sub abs 0.00001 lt{round}if}forall round
+exch round exch]setmatrix}N/@landscape{/isls true N}B/@manualfeed{
+statusdict/manualfeed true put}B/@copies{/#copies X}B/FMat[1 0 0 -1 0 0]
+N/FBB[0 0 0 0]N/nn 0 N/IEn 0 N/ctr 0 N/df-tail{/nn 8 dict N nn begin
+/FontType 3 N/FontMatrix fntrx N/FontBBox FBB N string/base X array
+/BitMaps X/BuildChar{CharBuilder}N/Encoding IEn N end A{/foo setfont}2
+array copy cvx N load 0 nn put/ctr 0 N[}B/sf 0 N/df{/sf 1 N/fntrx FMat N
+df-tail}B/dfs{div/sf X/fntrx[sf 0 0 sf neg 0 0]N df-tail}B/E{pop nn A
+definefont setfont}B/Cw{Cd A length 5 sub get}B/Ch{Cd A length 4 sub get
+}B/Cx{128 Cd A length 3 sub get sub}B/Cy{Cd A length 2 sub get 127 sub}
+B/Cdx{Cd A length 1 sub get}B/Ci{Cd A type/stringtype ne{ctr get/ctr ctr
+1 add N}if}B/id 0 N/rw 0 N/rc 0 N/gp 0 N/cp 0 N/G 0 N/CharBuilder{save 3
+1 roll S A/base get 2 index get S/BitMaps get S get/Cd X pop/ctr 0 N Cdx
+0 Cx Cy Ch sub Cx Cw add Cy setcachedevice Cw Ch true[1 0 0 -1 -.1 Cx
+sub Cy .1 sub]/id Ci N/rw Cw 7 add 8 idiv string N/rc 0 N/gp 0 N/cp 0 N{
+rc 0 ne{rc 1 sub/rc X rw}{G}ifelse}imagemask restore}B/G{{id gp get/gp
+gp 1 add N A 18 mod S 18 idiv pl S get exec}loop}B/adv{cp add/cp X}B
+/chg{rw cp id gp 4 index getinterval putinterval A gp add/gp X adv}B/nd{
+/cp 0 N rw exit}B/lsh{rw cp 2 copy get A 0 eq{pop 1}{A 255 eq{pop 254}{
+A A add 255 and S 1 and or}ifelse}ifelse put 1 adv}B/rsh{rw cp 2 copy
+get A 0 eq{pop 128}{A 255 eq{pop 127}{A 2 idiv S 128 and or}ifelse}
+ifelse put 1 adv}B/clr{rw cp 2 index string putinterval adv}B/set{rw cp
+fillstr 0 4 index getinterval putinterval adv}B/fillstr 18 string 0 1 17
+{2 copy 255 put pop}for N/pl[{adv 1 chg}{adv 1 chg nd}{1 add chg}{1 add
+chg nd}{adv lsh}{adv lsh nd}{adv rsh}{adv rsh nd}{1 add adv}{/rc X nd}{
+1 add set}{1 add clr}{adv 2 chg}{adv 2 chg nd}{pop nd}]A{bind pop}
+forall N/D{/cc X A type/stringtype ne{]}if nn/base get cc ctr put nn
+/BitMaps get S ctr S sf 1 ne{A A length 1 sub A 2 index S get sf div put
+}if put/ctr ctr 1 add N}B/I{cc 1 add D}B/bop{userdict/bop-hook known{
+bop-hook}if/SI save N @rigin 0 0 moveto/V matrix currentmatrix A 1 get A
+mul exch 0 get A mul add .99 lt{/QV}{/RV}ifelse load def pop pop}N/eop{
+SI restore userdict/eop-hook known{eop-hook}if showpage}N/@start{
+userdict/start-hook known{start-hook}if pop/VResolution X/Resolution X
+1000 div/DVImag X/IEn 256 array N 2 string 0 1 255{IEn S A 360 add 36 4
+index cvrs cvn put}for pop 65781.76 div/vsize X 65781.76 div/hsize X}N
+/p{show}N/RMat[1 0 0 -1 0 0]N/BDot 260 string N/Rx 0 N/Ry 0 N/V{}B/RV/v{
+/Ry X/Rx X V}B statusdict begin/product where{pop false[(Display)(NeXT)
+(LaserWriter 16/600)]{A length product length le{A length product exch 0
+exch getinterval eq{pop true exit}if}{pop}ifelse}forall}{false}ifelse
+end{{gsave TR -.1 .1 TR 1 1 scale Rx Ry false RMat{BDot}imagemask
+grestore}}{{gsave TR -.1 .1 TR Rx Ry scale 1 1 false RMat{BDot}
+imagemask grestore}}ifelse B/QV{gsave newpath transform round exch round
+exch itransform moveto Rx 0 rlineto 0 Ry neg rlineto Rx neg 0 rlineto
+fill grestore}B/a{moveto}B/delta 0 N/tail{A/delta X 0 rmoveto}B/M{S p
+delta add tail}B/b{S p tail}B/c{-4 M}B/d{-3 M}B/e{-2 M}B/f{-1 M}B/g{0 M}
+B/h{1 M}B/i{2 M}B/j{3 M}B/k{4 M}B/w{0 rmoveto}B/l{p -4 w}B/m{p -3 w}B/n{
+p -2 w}B/o{p -1 w}B/q{p 1 w}B/r{p 2 w}B/s{p 3 w}B/t{p 4 w}B/x{0 S
+rmoveto}B/y{3 2 roll p a}B/bos{/SS save N}B/eos{SS restore}B end
+
+%%EndProcSet
+TeXDict begin 40258431 52099146 1000 600 600 (kernel_resources.dvi)
+@start
+%DVIPSBitmapFont: Fa cmmi10 10 2
+/Fa 2 63 df<EF0380EF0FC0173FEFFF80933803FE00EE0FF8EE3FE0EEFF80DB03FEC7FC
+ED0FF8ED3FE0EDFF80DA03FEC8FCEC0FF8EC3FE0ECFF80D903FEC9FCEB0FF8EB3FE0EBFF
+80D803FECAFCEA0FF8EA3FE0EA7F8000FECBFCA2EA7F80EA3FE0EA0FF8EA03FEC66C7EEB
+3FE0EB0FF8EB03FE903800FF80EC3FE0EC0FF8EC03FE913800FF80ED3FE0ED0FF8ED03FE
+923800FF80EE3FE0EE0FF8EE03FE933800FF80EF3FC0170FEF0380323279AD41>60
+D<126012FCB4FCEA7FC0EA1FF0EA07FCEA01FF38007FC0EB1FF0EB07FCEB01FF9038007F
+C0EC1FF0EC07FCEC01FF9138007FC0ED1FF0ED07FCED01FF9238007FC0EE1FF0EE07FCEE
+01FF9338007F80EF1FC0A2EF7F80933801FF00EE07FCEE1FF0EE7FC04B48C7FCED07FCED
+1FF0ED7FC04A48C8FCEC07FCEC1FF0EC7FC04948C9FCEB07FCEB1FF0EB7FC04848CAFCEA
+07FCEA3FF0EA7FC048CBFC12FC1270323279AD41>62 D E
+%EndDVIPSBitmapFont
+%DVIPSBitmapFont: Fb cmsy10 10 1
+/Fb 1 16 df<EB1FF0EBFFFE487F000714C04814E04814F04814F8A24814FCA3B612FEA9
+6C14FCA36C14F8A26C14F06C14E06C14C0000114006C5BEB1FF01F1F7BA42A>15
+D E
+%EndDVIPSBitmapFont
+%DVIPSBitmapFont: Fc ectt1000 10 79
+/Fc 79 126 df<121FEA3F80EA7FC0EAFFE0B0EA7FC0AEEA1F00C7FCA7121FEA3F80EA7F
+C0EAFFE0A5EA7FC0EA3F80EA1F000B3470B32C>33 D<003C131E007F137F481480A66C14
+00A6007E7FA6003E133EA3003C131E001C131C191977B32C>I<0107131C90380F803EA8
+011F137EEC007CA4003FB612E0B712F8A43A003E00F800A2EB7E01017C5BA8EBFC0301F8
+5BA2B712F8A4003F15E03A01F007C000A30003130F01E05BA86C486CC7FC25337DB22C>
+I<EB0FC0EB3FE0497E497E80EA01F8EBF07C147E0003133E13E0A5147E147C9138FC3FF8
+9039F0F87FFCEA01F1EBF3F001F7EB3FF89138E01F009038FFC03F6CEB803EA2EC007E49
+137C485A486C13FC00075CEBFF01D80FDF5B381F9F81383F8F8390380FC3E0387E07E75D
+38FC03F7EB01FF5D6D1410ED007C80A26CEBFF80D87E0113C0D87F03EBE0FC3A3F87F7F1
+F89038FFE3FF6C01C113F06C13806C9038007FC0D801FCEB1F8026357EB32C>38
+D<143814FC13011303EB07F8EB0FF0EB1FC0EB3F80EB7F0013FE485A485A5B12075B120F
+5B485AA2123F90C7FCA25A127EA312FE5AAC7E127EA3127F7EA27F121FA26C7E7F12077F
+12037F6C7E6C7E137FEB3F80EB1FC0EB0FF0EB07F8EB03FC130113001438164272B92C>
+40 D<127012FC7E7E6C7E6C7EEA0FE06C7E6C7E6C7E6C7E137F7F1480131F14C0130FEB
+07E0A214F01303A214F81301A314FC1300AC130114F8A3130314F0A2130714E0A2EB0FC0
+131F1480133F14005B13FE485A485A485A485AEA3FC0485A48C7FC5A5A1270164279B92C
+>I<EB0380497EA60020140800F8143E00FE14FE00FF13C1EBC7C7EBE7CF003FB512F800
+0F14E0000314806C140038007FFCA248B5FC481480000F14E0003F14F839FFE7CFFEEBC7
+C7EB07C100FE13C000F8143E0020140800001400A66D5A1F247AAA2C>I<147014F8AF00
+3FB612E0B712F8A4C700F8C7FCB0147025267DAB2C>I<EA0F80EA1FE0EA3FF0EA7FF8A2
+13FCA3123F121F120F120013F8A21201EA03F01207EA1FE0EA7FC0EAFF80130012FC1270
+0E17718A2C>I<007FB512F0B612F8A36C14F01D0579942C>I<121FEA3F80EA7FC0EAFFE0
+A5EA7FC0EA3F80EA1F000B0B708A2C>I<1507ED0F80A2151F16005D153E157E157CA215
+FC5D14015D14035D14075D140F5D141F92C7FC5C143EA2147E147C14FC5C13015C13035C
+13075C130F5C131F91C8FC5B133EA2137E137C13FC5B12015B12035B12075B120F5B121F
+90C9FCA25A123E127E127C12FC5AA2127021417BB92C>I<EB03F8EB0FFE90383FFF8049
+7F90B57E3901FE0FF03903F803F848486C7EEBE0004848137EA248487FA248C7EA1F80A2
+003E140F007E15C0A3007C140700FC15E0AC6C140F007E15C0A46CEC1F80A36C6CEB3F00
+A26C6C137E6D13FE00075CEBF0016C6C485A3901FE0FF06CB55A6D5B6D5BD90FFEC7FCEB
+03F823357CB32C>I<1307497EA2131FA2133F137F13FF5A1207127FB5FC13DF139FEA7C
+1F1200B3AE007FB512E0B612F0A36C14E01C3477B32C>I<EB0FF890387FFF8048B512E0
+0007804814FC391FF80FFE393FE001FF903880007F48C7EA3F80007E141F00FE15C0150F
+6C15E01507A3127E123CC8FCA2150F16C0151F1680153F16005D15FE4A5A14034A5A4A5A
+4A5A4A5AECFF804948C7FC495A495A495AEB3FE0EB7F8049C8FC485A4848EB03C04848EB
+07E0EA1FE0485A48B6FCB7FCA36C15C023347CB32C>I<EB0FFC90387FFF8048B512E000
+0714F84880391FF807FEEBC0004848137F6D7F1680151FA26C5A6CC7FCC8FC153F16005D
+15FE14014A5AEC1FF890381FFFF0495BA215F86D7F90380007FEEC00FF81ED3F80ED1FC0
+150FA216E01507A2123C127EB4FC150F16C0A248141F007FEC3F806DEB7F006C6C5B391F
+F807FE6CB55A6C5C6C14E0C66C1380D90FFCC7FC23357CB32C>I<EC07F04A7E141F143F
+A2147EA214FCEB01F8A2EB03F0EB07E0A2EB0FC0EB1F80A2EB3F00137EA25B485AA2485A
+5B1207485AA2485A48C7FCA2127E5AB712FC16FEA36C15FCC8EAF800AA91387FFFF091B5
+12F8A36E13F027347EB32C>I<000FB512FE4880A35D0180C8FCADEB83FE90389FFF8090
+B512E015F8819038FE03FE9038F000FF01C07F49EB3F8090C7121F6C15C0C8120FA2ED07
+E0A4123C127EB4FC150F16C0A248141F007EEC3F80007FEC7F006C6C5B6D485A391FF80F
+FC6CB55A6C5C000114C06C6C90C7FCEB0FF823347CB22C>I<EB07FC90383FFF8090B512
+E0000314F84880390FFC07FE391FF001FF9038C0007F4848EB3F8090C7121F4815C0007E
+140FA56CEC1F80A26C6CEB3F006D5B390FF001FE3903FC07F86CB55A6C6C13C0D907FCC7
+FC90387FFFC048B512F03903FC07F8390FF001FE391FC0007F497F48C7EA1F80007EEC0F
+C0A248EC07E0A7007EEC0FC0A2007F141F6C6CEB3F806C6CEB7F009038F001FF390FFC07
+FE6CB55A6C5CC614E0013F1380D907FCC7FC23357CB32C>56 D<EB07FCEB3FFF90B512C0
+488048803907FC07F8390FF001FC48486C7ED83F80137E157F48C77E007EEC1F8012FE5A
+ED0FC0A416E0A37E127E007F141F7E6D133F6C6C137F390FF001FF3807FC0F6CB6FC6C14
+F76C14C7013F130FD90FF813C090C7FCA2151F1680153F1600000F5C486C137E486C13FE
+4A5A4A5A14079038801FF0391FE07FE090B55A6C91C7FC6C5B000113F838007FC023357C
+B32C>I<121FEA3F80EA7FC0EAFFE0A5EA7FC0EA3F80EA1F00C7FCAE121FEA3F80EA7FC0
+EAFFE0A5EA7FC0EA3F80EA1F000B2470A32C>I<EA0F80EA1FC0EA3FE0EA7FF0A5EA3FE0
+EA1FC0EA0F80C7FCAEEA0F80EA1FE0EA3FF0EA7FF8A213FCA3123F121F120F120013F8A2
+1201EA03F01207EA1FE0EA7FC0EAFF80130012FC12700E3071A32C>I<1502ED0F80151F
+157F15FF913803FE00EC0FFCEC1FF0EC7FE0ECFF80D903FEC7FC495AEB1FF0495AEBFF80
+000390C8FCEA07FCEA1FF8EA3FE0EAFF8090C9FCA27FEA3FE0EA1FF8EA07FC6CB4FCC67F
+EB3FE06D7EEB07FC6D7E903800FF80EC7FE0EC1FF0EC0FFCEC03FE913800FF80157F151F
+150FED0200212A7BAD2C>I<007FB612F0B712F8A36C15F0CAFCA8007FB612F0B712F8A3
+6C15F025127DA12C>I<122012F87EB4FC7FEA3FE0EA1FF8EA07FC6CB4FCC67FEB3FE06D
+7EEB07FC6D7E903800FF80EC7FE0EC1FF0EC0FFCEC03FE913800FF80157FA215FF913803
+FE00EC0FFCEC1FF0EC7FE0ECFF80D903FEC7FC495AEB1FF0495AEBFF80000390C8FCEA07
+FCEA1FF8EA3FE0EAFF8090C9FC12FC5A1220212A7BAD2C>I<14FE497EA4497FA214EFA2
+130781A214C7A2010F7FA314C390381F83F0A590383F01F8A490387E00FCA549137E90B5
+12FEA34880A29038F8003FA34848EB1F80A4000715C049130FD87FFEEBFFFC6D5AB514FE
+6C15FC497E27347EB32C>65 D<007FB512E015F8B612FE6C8016C03903F0003FED0FE0ED
+07F01503A2ED01F8A6ED03F0A21507ED0FE0ED1FC0EDFF8090B612005D5D15FF16C09039
+F0001FE0ED07F0ED03F81501ED00FCA216FE167EA616FE16FC1501ED03F8150FED3FF000
+7FB612E016C0B712806CECFE0015F027337FB22C>I<02FF13700107EBE0F84913F9013F
+13FD4913FFEBFF813901FE007F4848131FD807F0130F1507485A491303485A150148C7FC
+A25A007EEC00F01600A212FE5AAB7E127EA3007F15F06CEC01F8A26C7EA26C6C13036D14
+F06C6C130716E0D803FC131F6C6CEB3FC03A00FF81FF806DB512006D5B010F5B6D13F001
+00138025357DB32C>I<007FB5FCB612C015F0816C803907E003FEEC00FFED7F80153FED
+1FC0ED0FE0A2150716F0150316F81501A4ED00FCACED01F8A3150316F0A2150716E0150F
+ED1FC0153FED7F80EDFF00EC03FE007FB55AB65A5D15C06C91C7FC26337EB22C>I<007F
+B612F0B712F8A37E3903F00001A7ED00F01600A4EC01E04A7EA490B5FCA5EBF003A46E5A
+91C8FCA5163C167EA8007FB612FEB7FCA36C15FC27337EB22C>I<007FB612F8B712FCA3
+7ED803F0C7FCA716781600A515F04A7EA490B5FCA5EBF001A46E5A92C7FCAD387FFFE0B5
+FC805C7E26337EB22C>I<903901FC038090390FFF87C04913EF017F13FF90B6FC481307
+3803FC01497E4848137F4848133F49131F121F5B003F140F90C7FCA2127EED078092C7FC
+A212FE5AA8913803FFF84A13FCA27E007E6D13F89138000FC0A36C141FA27F121F6D133F
+120F6D137F6C7E6C6C13FF6D5A3801FF076C90B5FC6D13EF011F13CF6DEB0780D901FCC7
+FC26357DB32C>I<D87FFEEBFFFCB54813FEA36C486C13FCD807E0EB0FC0B190B6FCA590
+38E0000FB3D87FFEEBFFFCB54813FEA36C486C13FC27337EB22C>I<007FB512F8B612FC
+A36C14F839000FC000B3B3A5007FB512F8B612FCA36C14F81E3379B22C>I<D87FFCEB7F
+F8486CEBFFFCA36C48EB7FF8D807C0EB1F80153FED7F00157E5D4A5A14034A5A5D4A5A4A
+5A143F4AC7FC147E5CEBC1F813C3EBC7FCA2EBCFFEEBDFBEEBFFBF141F01FE7F496C7E13
+F86E7EEBF00301E07FEBC001816E7EA2157E153E153F811680ED0FC0A2ED07E0D87FFCEB
+1FFC486CEB3FFEA36C48EB1FFC27337EB22C>75 D<387FFFE0B57EA36C5BD803F0C8FCB3
+AE16F0ED01F8A8007FB6FCB7FCA36C15F025337DB22C>I<D87FE0EB0FFC486CEB1FFEA2
+6D133F007F15FC000F15E001BC137BA4019E13F3A3EB9F01A2018F13E3A21483A2018713
+C314C7A201831383A214EFA201811303A214FFEB80FEA3147C14381400ACD87FF0EB1FFC
+486CEB3FFEA36C48EB1FFC27337EB22C>I<D87FF0EB7FFC486CEBFFFEA27F007FEC7FFC
+D807FEEB07C013DEA213DF13CFA2148013C714C0A213C314E0A213C114F0A213C014F8A2
+147CA3143EA2141E141FA2140F1587A2140715C7A2140315E71401A215F71400A215FFD8
+7FFC137F487E153FA26C48EB1F8027337EB22C>I<EB7FFF0003B512E0000F14F8488048
+80EBE003EB800048C7127FA2007E80A300FE158048141FB3A86C143FA2007E1500A3007F
+5CA26C6C13FEEBF00790B5FC6C5C6C5C000314E0C66C90C7FC21357BB32C>I<007FB512
+C0B612F88115FF6C15802603F00013C0153FED0FE0ED07F0A2150316F81501A6150316F0
+1507A2ED0FE0ED3FC015FF90B61280160015FC5D15C001F0C8FCB0387FFF80B57EA36C5B
+25337EB22C>I<EB7FFF0003B512E0000F14F848804880EBF007EB800048C7127FA2007E
+80A300FE158048141FB3A7EB01F0EB03F800FE143F267E01FC1300A2EB00FE007F5C147F
+D83F8013FEEBF03F90B5FC6C5C6C5C000314E0C67E90380007F0A26E7EA26E7EA26E7EA2
+157FA2153E21407BB32C>I<387FFFFCB67E15E015F86C803907E007FE1401EC007F6F7E
+151FA26F7EA64B5AA2153F4BC7FCEC01FE140790B55A5D15E081819038E007FCEC01FE14
+00157F81A8160FEE1F80A5D87FFEEB1FBFB5ECFF00815E6C486D5AC8EA01F029347EB22C
+>I<90381FF80790B5EA0F804814CF000714FF5A381FF01F383FC003497E48C7FC007E14
+7F00FE143F5A151FA46CEC0F00007E91C7FC127F7FEA3FE0EA1FFCEBFFC06C13FC0003EB
+FFC06C14F06C6C7F01077F9038007FFEEC07FF02001380153FED1FC0A2ED0FE0A2007814
+0712FCA56CEC0FC0A26CEC1F806D133F01E0EB7F009038FE01FF90B55A5D00F914F0D8F8
+3F13C0D8700790C7FC23357CB32C>I<007FB612FCB712FEA43AFC007E007EA70078153C
+C71400B3AF90383FFFFCA2497F6D5BA227337EB22C>I<3B7FFF803FFFC0B56C4813E0A3
+6C496C13C03B03F00001F800B3AF6D130300015DA26D130700005D6D130F017F495A6D6C
+485AECE0FF6DB5C7FC6D5B010313F86D5B9038003F802B3480B22C>I<D87FF0EB07FF48
+6C491380A36C486D1300001FC8127CA46C6C5CA76C6C495AA4143E147FA33A03E0FF83E0
+A214F7A201E113C3A3000101E35BA201F113C701F313E7A314C1A200005DA201F713F714
+80A301FF13FF017F91C7FC4A7EA4013E133E29347FB22C>87 D<3A3FFF03FFE0484913F0
+148714076C6D13E03A01F800FE007F0000495A13FE017E5BEB7F03013F5B1487011F5B14
+CF010F5B14FF6D5BA26D90C7FCA26D5AA26D5AA2497EA2497EA2497F81EB0FCF81EB1FC7
+EC87F0EB3F83EC03F8EB7F01017E7FEBFE00497F0001147E49137F000380491480151FD8
+7FFEEBFFFC6D5AB514FE6C15FC497E27337EB22C>I<D87FFCEB7FFC486CEBFFFEA36C48
+EB7FFCD807F0EB0FC0151F000315806D133F12016DEB7F0012006D137E017E13FE017F5B
+EB3F01EC81F8131FEC83F0EB0FC314C7903807E7E0A201035B14EF6DB45AA292C7FC7F5C
+147EB0903807FFE0497FA36D5B27337EB22C>I<003FB612C04815E0A4007EC7EA1FC0ED
+3F80A2ED7F00157E15FE4A5A003C5CC712034A5AA24A5A4A5AA24A5A4AC7FCA214FE495A
+A2495A495AA2495A495AA2495A49C8FCA213FE485AA24848EB03C049EB07E01207485A5B
+121F485AA248C7FCB7FCA46C15C023337CB22C>I<387FFFFCB512FEA314FC00FCC7FCB3
+B3B3B512FC14FEA36C13FC17416FB92C>I<127012F8A27E127C127E123E123F7EA27F12
+0F7F12077F12037F12017F12007F137C137E133EA2133F7F80130F801307801303801301
+80130080147C147E143EA2143F8081140F81140781140381140181140081157CA2157E15
+3E153F811680150FA2ED070021417BB92C>I<387FFFFCB512FEA37EC7127EB3B3B3387F
+FFFEB5FCA36C13FC17417DB92C>I<007FB6FCB71280A46C150021067B7D2C>95
+D<3801FFF0000713FE001F6D7E15E048809038C01FF81407EC01FC381F80000006C77EC8
+127EA3ECFFFE131F90B5FC1203120F48EB807E383FF800EA7FC090C7FC12FE5AA47E007F
+14FEEB8003383FE01F6CB612FC6C15FE6C14BF0001EBFE1F3A003FF007FC27247CA32C>
+97 D<EA7FF0487EA3127F1201AAEC1FE0ECFFF801FB13FE90B6FC16809138F07FC09138
+801FE091380007F049EB03F85BED01FC491300A216FE167EA816FE6D14FCA2ED01F86D13
+036DEB07F0150F9138801FE09138E07FC091B51280160001FB5B01F813F83900F03FC027
+337FB22C>I<903803FFE0011F13F8017F13FE48B5FC48804848C6FCEA0FF0485A49137E
+4848131890C9FC5A127EA25AA8127EA2127F6C140F6DEB1F806C7E6D133F6C6CEB7F0039
+07FE03FF6CB55A6C5C6C6C5B011F13E0010390C7FC21247AA32C>I<EC0FFE4A7EA380EC
+003FAAEB07F8EB3FFE90B512BF4814FF5A3807FC0F380FF00348487E497E48487F90C7FC
+007E80A212FE5AA87E007E5CA2007F5C6C7E5C6C6C5A380FF0073807FC1F6CB612FC6CEC
+BFFE6C143FEB3FFC90390FF01FFC27337DB22C>I<EB03FE90381FFFC0017F13F048B57E
+48803907FE03FE390FF800FFD81FE0EB3F805B4848EB1FC090C7120F5A007E15E015075A
+B7FCA416C000FCC9FC7E127EA2127F6CEC03C06DEB07E06C7ED80FF0130F6C6CEB3FC001
+FF13FF000190B512806C1500013F13FC010F13F00101138023247CA32C>I<EC0FF8EC3F
+FE91B5FC4914805B903807FC7F14F090390FE03F0014C092C7FCA6007FB512FEB7FCA36C
+5C26000FC0C7FCB3A8003FB512F04880A36C5C21337DB22C>I<ED03F8903907F80FFC90
+391FFE3FFE017FB6FC48B7FC48ECFE7F9038FC0FF82607F003133E3A0FE001FC1CD9C000
+1300001F8049137EA66D13FE000F5CEBE0016C6C485A3903FC0FF048B5FC5D481480D99F
+FEC7FCEB87F80180C8FCA37F6C7E90B512F06C14FE48ECFF804815E04815F03A3FC0001F
+F848C7EA03FC007E1400007C157C00FC157E48153EA46C157E007E15FCD87F801303D83F
+E0EB0FF8D81FFCEB7FF06CB612E0000315806C1500D8003F13F8010713C028387EA42C>
+I<EA7FF0487EA3127F1201AAEC1FE0EC7FFC9038F9FFFE01FB7F90B6FC9138F03F80ECC0
+1F02807FEC000F5B5BA25BB3267FFFE0B5FCB500F11480A36C01E0140029337FB22C>I<
+1307EB1FC0A2497EA36D5AA20107C7FC90C8FCA7387FFFC080B5FC7EA2EA0007B3A8007F
+B512FCB612FEA36C14FC1F3479B32C>I<EA7FE0487EA3127F1201AA91381FFFF04A13F8
+A36E13F0913800FE004A5A4A5A4A5A4A5A4A5A4A5A4AC7FC14FEEBF1FC13F3EBF7FE90B5
+FCA2EC9F80EC0FC001FE7FEBFC07496C7E496C7E811400157E811680151F3A7FFFC0FFFC
+B500E113FEA36C01C013FC27337EB22C>107 D<387FFFE0B57EA37EEA0003B3B3A5007F
+B61280B712C0A36C158022337BB22C>I<3A7F83F007E09039CFFC1FF83AFFDFFE3FFCD8
+7FFF13FF91B57E3A07FE1FFC3E01FCEBF83F496C487E01F013E001E013C0A301C01380B3
+3B7FFC3FF87FF0027F13FFD8FFFE6D13F8D87FFC4913F0023F137F2D2481A32C>I<397F
+F01FE039FFF87FFC9038F9FFFE01FB7F6CB6FC00019038F03F80ECC01F02807FEC000F5B
+5BA25BB3267FFFE0B5FCB500F11480A36C01E0140029247FA32C>I<EB07FCEB1FFF017F
+13C048B512F048803907FC07FC390FF001FE48486C7E0180133F003F158090C7121F007E
+EC0FC0A348EC07E0A76C140F007E15C0A2007F141F6C15806D133F6C6CEB7F006D5B6C6C
+485A3907FC07FC6CB55A6C5C6C6C13C0011F90C7FCEB07FC23247CA32C>I<397FF01FE0
+39FFF8FFF801FB13FE90B6FC6C158000019038F07FC09138801FE091380007F049EB03F8
+5BED01FC491300A216FE167EA816FE6D14FCA2ED01F86D13036DEB07F0150F9138801FE0
+9138E07FC091B51280160001FB5B01F813F8EC3FC091C8FCAD387FFFE0B57EA36C5B2736
+7FA32C>I<D87FFEEB3FC0B53801FFF0020713F8021F13FC6C5B39003F7FE1ECFF019138
+FC00F84A13704A13005CA25C5CA391C8FCAF007FB512E0B67EA36C5C26247EA32C>114
+D<90387FF8700003B512F8120F5A5A387FC00F387E00034813015AA36CEB00F0007F1400
+13F0383FFFC06C13FE6CEBFF80000314E0C66C13F8010113FCEB0007EC00FE0078147F00
+FC143F151F7EA26C143F6D133E6D13FE9038F007FC90B5FC15F815E000F8148039701FFC
+0020247AA32C>I<131E133FA9007FB6FCB71280A36C1500D8003FC8FCB1ED03C0ED07E0
+A5EC800F011FEB1FC0ECE07F6DB51280160001035B6D13F89038003FE0232E7EAD2C>I<
+3A7FF003FF80486C487FA3007F7F0001EB000FB3A3151FA2153F6D137F3900FE03FF90B7
+FC6D15807F6D13CF902603FE07130029247FA32C>I<3A7FFF01FFFCB514FE148314016C
+15FC3A03E0000F80A26D131F00011500A26D5B0000143EA26D137E017C137CA2017E13FC
+013E5BA2EB3F01011F5BA21483010F5BA214C701075BA214EF01035BA214FF6D90C7FCA2
+6D5A147C27247EA32C>I<D87FFFEB7FFF6EB5FCB515806C16004A7ED807C0EB01F0A66C
+6C495AA3143E147FA2D801F0495AECFF87A214F7A201F113C700005D9038F9E3CFA201FB
+13EFA3D97BC190C7FC017F13FFA21480A2013F5B90381F007C29247FA32C>I<3A3FFF03
+FFF048018713F8A36C010313F03A00FC007E005D90387E01F8013F5BEB1F83EC87E09038
+0FCFC0903807EF80EB03FF6D90C7FC5C6D5A147C14FE130180903803EF80903807CFC0EB
+0FC7EC83E090381F01F0013F7FEB7E00017C137C49137E0001803A7FFF01FFFC1483B514
+FE6C15FC140127247EA32C>I<3A7FFF01FFFCB5008113FE148314816C010113FC3A03E0
+000F806C7E151F6D140012005D6D133E137C017E137E013E137CA2013F13FC6D5BA2EB0F
+815DA2EB07C1ECC3E0A2EB03E3ECE7C0130114F75DEB00FFA292C7FC80A2143EA2147E14
+7CA214FC5CA2EA0C01003F5BEA7F83EB87E0EA7E0F495A387FFF806C90C8FC6C5A6C5AEA
+07E027367EA32C>I<003FB612E04815F0A4007EC7EA1FE0ED3FC0ED7F80EDFF004A5A00
+3C495AC7485A4A5A4A5A4A5A4A5A4AC7FCEB01FC495AEB0FF0495A495A495A49C8FC4848
+EB01E04848EB03F0485A485A485A485A485AB7FCA46C15E024247DA32C>I<15FF020713
+80141F147F91B512004913C04AC7FCEB03F85CB31307EB1FE013FF007F5BB55A49C8FC6D
+7E6C7FC67F131FEB07F01303B380EB01FEECFFC06D13FF6E1380141F1407020013002141
+7BB92C>I<EA7FC0EAFFF813FE6D7E6C7FC67F131FEB07F01303B380EB01FEECFFC06D13
+FF6E1380141F147F91B512004913C04AC7FCEB03F85CB31307EB1FE013FF007F5BB55A49
+C8FC13F8EA7FC021417BB92C>125 D E
+%EndDVIPSBitmapFont
+%DVIPSBitmapFont: Fd ecbx1200 12 36
+/Fd 36 121 df<160C161EB3B0007FBB1280BC12C0A26C1A80C9001ECAFCB3B0160C4A4A
+7ABD57>43 D<EA07C0EA1FF0EA3FF8EA7FFCEAFFFEA7EA7FFCEA3FF8EA1FF0EA07C00F0F
+788E1F>46 D<EC03C01407141F147FEB03FF133FB6FCA413C3EA0003B3B3ADB712FCA526
+4177C038>49 D<ECFFE0010F13FE013F6D7E90B612E0000315F82607FC0313FE3A0FE000
+7FFFD81F806D138048C7000F13C0488001C015E001F07F00FF6E13F07F17F881A46C5A6C
+5A6C5AC9FC17F05DA217E05D17C04B13804B1300A2ED1FFC4B5A5E4B5A4B5A4A90C7FC4A
+5A4A5AEC0FF04A5AEC3F804AC7127814FE495A494814F8D907E014F0495A495A49C8FC01
+7C140149140348B7FC4816E05A5A5A5A5AB8FC17C0A42D417BC038>I<ECFFF0010713FF
+011F14C0017F14F049C66C7ED803F8EB3FFED807E06D7E81D80FF86D138013FE001F16C0
+7FA66C5A6C4815806C485BC814005D5E4B5A4B5A4B5A4A5B020F1380902607FFFEC7FC15
+F815FF16C090C713F0ED3FFCED0FFEEEFF80816F13C017E0A26F13F0A217F8A3EA0FC0EA
+3FF0487EA2487EA217F0A25D17E06C5A494913C05BD83F80491380D81FF0491300D80FFE
+EBFFFE6CB612F800015D6C6C14C0011F49C7FC010113E02D427BC038>I<EA07C0EA1FF0
+EA3FF8EA7FFCEAFFFEA7EA7FFCEA3FF8EA1FF0EA07C0C7FCAEEA07C0EA1FF0EA3FF8EA7F
+FCEAFFFEA7EA7FFCEA3FF8EA1FF0EA07C00F2C78AB1F>58 D<EE1F80A24C7EA24C7EA34C
+7EA24B7FA34B7FA24B7FA34B7F169F031F80161F82033F80ED3E07037E80157C8203FC80
+4B7E02018115F0820203814B137F0207815D173F020F814B7F021F8292C77EA24A82023E
+80027E82027FB7FCA291B87EA2498302F0C8FCA20103834A157F0107834A153FA2494882
+84011F8491C97E4984133E017E82B6020FB612F0A54C457CC455>65
+D<B9FC18F018FE727E19E026003FFCC700077F05017F716C7E727E727EA2721380A37213
+C0A74E1380A24E1300A24E5A4E5A4E5A4D5B05075B94B5128091B700FCC7FC18F018FF19
+E002FCC7000113F8716C7EF01FFE727E7213801AC07213E0A27213F0A31AF8A71AF0A260
+1AE0604E13C0604E138095B5120005075BBA12F86119C04EC7FC18E045447CC350>I<DC
+FFF01470031F01FF14F04AB6EAE0010207EDF803023FEDFE0791B539E001FF0F4949C7EA
+3F9F010701F0EC0FFF4901C0804990C87E4948814948814948167F4849163F4849161F5A
+4A160F485B19074890CAFC19035A5BA2007F1801A34994C7FC12FFAE127F7F1AF0A2123F
+A27F6C18011AE06C7F19036C6D17C06E16077E6C6DEE0F806C6DEE1F006D6C5E6D6C167E
+6D6C6C5D6D6D4A5A6D01F0EC07F0010101FEEC1FE06D903AFFF001FF80023F90B6C7FC02
+0715FC020115F0DA001F1480030001F8C8FC44467AC451>I<BA12F8A485D8001F90C712
+01EF003F180F180318011800A2197E193EA3191EA21778A285A405F890C7FCA316011603
+161F92B5FCA5ED001F160316011600A2F101E01778A2F103C0A494C7FC1907A21A80A219
+0FA2191FA2193FF17F0061601807181F4DB5FCBBFC61A443447DC34A>69
+D<B712F0A526003FFECAFCB3B1F00780A4180F1900A460A360A2187EA218FE1701170317
+07171F177FEE03FFB95AA539447CC343>76 D<B500FE067FB512806E95B6FCA26F5EA2D8
+003F50C7FC013D6DEE03DFA2013C6DEE079FA26E6CEE0F1FA26E6C161EA26E6C163CA36E
+6C1678A26E6C16F0A26E6DEC01E0A26E6DEC03C0A36E6DEC0780A26F6CEC0F00A26F6C14
+1EA26F6C5CA36F6C5CA26F6C5CA26F6D485AA26F6D485AA26F6D485AA3706C48C7FCA293
+383FF81EA2706C5AA2706C5AA3706C5AA2705BA2705BA2705BA2B6057FB6128071C7FCA2
+173E171C61447CC36A>I<923807FFC092B512FE0207ECFFC0021F15F091267FFE0013FC
+902601FFF0EB1FFF01070180010313C04990C76C7FD91FFC6E6C7E49486F7E49486F7E01
+FF8348496F7E48496F1380A248496F13C0A24890C96C13E0A24819F04982003F19F8A300
+7F19FC49177FA400FF19FEAD007F19FC6D17FFA3003F19F8A26D5E6C19F0A26E5D6C19E0
+A26C6D4B13C06C19806E5D6C6D4B13006C6D4B5A6D6C4B5A6D6C4B5A6D6C4A5B6D01C001
+075B6D01F0011F5B010101FE90B5C7FC6D90B65A023F15F8020715C002004AC8FC030713
+C047467AC454>79 D<B812F8EFFFC018F818FE727ED8001F90C7003F13E005037F05007F
+727E727E727EA28684A286A762A24E90C7FCA24E5A61187F943801FFF005075B053F1380
+92B7C8FC18F818E018F892C77FEF3FFF050F7F717F717FA2717FA2717FA785A61B0F85A2
+187F73131F72141EB700E06DEB803E72EBE0FC72EBFFF8060114F0726C13E0CC00071380
+50457DC354>82 D<DAFFE0131C010701FE133C013F9038FF807C90B6EAE0FC4815F94890
+38801FFF3907FC00014848EB007F4848143F4848140F491407007F15035B1601160012FF
+177CA27FA26D153C7F7F6D92C7FC6C7EEBFFE014FE6CEBFFF015FF6C15E016FC6C816C6F
+7E6C826C826C6C81011F810107811300020F80140003077FED007F82040F1380828212F0
+82A282A27EA218007EA26C5D6C5E6D14036D5D6D140701F84A5A01FFEC3FF002F8EBFFE0
+486CB65AD8FC1F92C7FCD8F80714FC48C614F0480107138031467AC43E>I<003FBA12E0
+A59026FE000FEB8003D87FE09338003FF049171F90C71607A2007E1803007C1801A30078
+1800A400F819F8481978A5C81700B3B3A20107B8FCA545437CC24E>I<007FBA12E0BB12
+F0A46C19E04406776757>95 D<903801FFE0011F13FE017F6D7E48B612E03A03FE007FF8
+4848EB1FFC6D6D7E486C6D7EA26F7FA36F7F6C5A6C5AEA00F090C7FCA40203B5FC91B6FC
+1307013F13F19038FFFC01000313E0481380381FFE00485A5B127F5B12FF5BA35DA26D5B
+6C6C5B4B13F0D83FFE013EEBFFC03A1FFF80FC7F0007EBFFF86CECE01FC66CEB8007D90F
+FCC9FC322F7DAD36>97 D<EB7FC0B5FCA512037EB1ED0FF892B57E02C314E002CF14F891
+39DFC03FFC9139FF000FFE02FCEB03FF4A6D13804A15C04A6D13E05CEF7FF0A218F8173F
+A318FCAC18F8A2177F18F0A3EFFFE06E15C06E5B6E491380027C491300496C495A903AFC
+1FC07FFC496CB512F0D9F00314C049C691C7FCC8EA1FF036467DC43E>I<EC3FFC49B512
+C0010F14F0013F14FC90397FF003FE9039FFC001FF0003495A48494813805B120F485AA2
+485A6F1300007F6E5AED00784991C7FCA212FFAC6C7EA3123F6DEC03C0A26C6C1407000F
+16806D140F6C6DEB1F006C6D133E6C01F05B3A007FFC03F86DB55A010F14C0010391C7FC
+9038003FF82A2F7CAD32>I<EE03FEED07FFA5ED001F160FB1EC3FE0903803FFFC010FEB
+FF8F013F14CF9039FFF807FF48EBC00148903880007F4890C7123F4848141F49140F121F
+485AA3127F5BA212FFAC127FA37F123FA26C6C141FA26C6C143F0007157F6C6C91B5FC6C
+D9C00314FC6C9038F01FEF6DB5128F011FEBFE0F010713F89026007FC0EBF80036467CC4
+3E>I<EC3FF80103B57E010F14E0013F8090397FF83FF89039FFC007FC48496C7E48496C
+7E48486D1380485A001FED7FC05B003FED3FE0A2127F5B17F0161F12FFA290B7FCA401F0
+C9FCA5127FA27FA2123F17F06C7E16016C6C15E06C6C14036C6DEB07C06C6DEB0F806C01
+F0EB3F0090397FFE01FE011FB55A010714F0010114C09026001FFEC7FC2C2F7DAD33>I<
+EDFF80020F13E0027F13F049B512F849EB8FFC90390FFE0FFE90381FFC1F14F8133FEB7F
+F0A2ED0FFCEBFFE0ED03F0ED00C01600ABB612F8A5C601E0C7FCB3B0007FEBFFE0A52746
+7DC522>I<DAFFE0137E010F9039FE03FF80013FEBFF8F90B812C048D9C07F133F489038
+001FF84848EB0FFC4848903907FE1F80001F9238FF0F00496D90C7FCA2003F82A8001F93
+C7FCA26D5B000F5D6C6C495A6C6C495A6C9038C07FF04890B55A1680D8078F49C8FC0180
+13E0000F90CAFCA47F7F7F90B612C016FC6CEDFF8017E06C826C16FC7E000382000F82D8
+1FF0C77ED83FC014074848020113808248C9FC177FA46D15FF007F17006D5C6C6C4A5A6C
+6C4A5AD80FFEEC3FF83B07FFC001FFF0000190B612C06C6C92C7FC010F14F8D9007F90C8
+FC32427DAC38>I<137C48B4FC4813804813C0A24813E0A56C13C0A26C13806C1300EA00
+7C90C7FCAAEB7FC0EA7FFFA512037EB3AFB6FCA518467CC520>105
+D<EB7FC0B5FCA512037EB3B3B3A3B61280A519457CC420>108 D<90277F8007FEEC0FFC
+B590263FFFC090387FFF8092B5D8F001B512E002816E4880913D87F01FFC0FE03FF8913D
+8FC00FFE1F801FFC0003D99F009026FF3E007F6C019E6D013C130F02BC5D02F86D496D7E
+A24A5D4A5DA34A5DB3A7B60081B60003B512FEA5572D7CAC5E>I<90397F8007FEB59038
+3FFF8092B512E0028114F8913987F03FFC91388F801F000390399F000FFE6C139E14BC02
+F86D7E5CA25CA35CB3A7B60083B512FEA5372D7CAC3E>I<EC1FFC49B512C0010714F001
+1F14FC90397FF80FFF9026FFC0017F48496C7F4848C7EA3FE000078248486E7E49140F00
+1F82A2003F82491407007F82A400FF1780AA007F1700A46C6C4A5AA2001F5E6D141F000F
+5E6C6C4A5AA26C6C6CEBFFE06C6D485B27007FF80F90C7FC6DB55A010F14F8010114C090
+26001FFCC8FC312F7DAD38>I<90397FC00FF8B590B57E02C314E002CF14F89139DFC03F
+FC9139FF001FFE000301FCEB07FF6C496D13804A15C04A6D13E05C7013F0A2EF7FF8A4EF
+3FFCACEF7FF8A318F017FFA24C13E06E15C06E5B6E4913806E4913006E495A9139DFC07F
+FC02CFB512F002C314C002C091C7FCED1FF092C9FCADB67EA536407DAC3E>I<90387F80
+7FB53881FFE0028313F0028F13F8ED8FFC91389F1FFE000313BE6C13BC14F8A214F0ED0F
+FC9138E007F8ED01E092C7FCA35CB3A5B612E0A5272D7DAC2E>114
+D<90391FFC038090B51287000314FF120F381FF003383FC00049133F48C7121F127E00FE
+140FA215077EA27F01E090C7FC13FE387FFFF014FF6C14C015F06C14FC6C800003806C15
+806C7E010F14C0EB003F020313E0140000F0143FA26C141F150FA27EA26C15C06C141FA2
+6DEB3F8001E0EB7F009038F803FE90B55A00FC5CD8F03F13E026E007FEC7FC232F7CAD2C
+>I<EB01E0A51303A41307A2130FA2131FA2133F137F13FF1203000F90B51280B7FCA4C6
+01E0C7FCB3A3ED01E0A9150302F013C0137F150790393FF80F8090391FFC1F006DB5FC6D
+13FC01015B9038003FE023407EBE2C>I<D97FC049B4FCB50103B5FCA50003EC000F6C81
+B3A85EA25EA25E7E6E491380017FD901F713FE9138F807E76DB512C7010F1407010313FE
+9026007FF0EBFC00372E7CAC3E>I<B5D8FE1FB539801FFFF0A500019027C0003FE0C7EA
+7C007114786E17F86C6F6C5C6E1601017F6E6C5CA26E011F1403013F6F5C6E013F140701
+1F6F5CA26E0179140F010F048090C7FC6E01F95C6D02F0EBC01E15806D902681E07F5B18
+E003C3157C6D9139C03FF07815E76DDA801F5B18F803FF14F96E9039000FFDE018FF6E48
+6D5BA36E486D5BA26E486D90C8FCA24B7F02075DA26E48147C4B143C4C2C7EAB51>119
+D<B500FE90383FFFF0A5C601F0903803E0006D6C495A6D6C495A011F4AC7FC6E5B6D6C13
+7E6DEB807C6D6D5A6DEBC1F0EDE3E06DEBF7C06EB45A806E90C8FC5D6E7E6E7F6E7FA24A
+7F4A7F8291381F3FFCEC3E1F027C7F4A6C7E49486C7F01036D7F49487E02C08049486C7F
+49C76C7E013E6E7E017E141FB500E090B512FCA5362C7EAB3B>I
+E
+%EndDVIPSBitmapFont
+%DVIPSBitmapFont: Fe ecbx1000 10 52
+/Fe 52 122 df<913803FFC0027F13F00103B512FC010FEB00FED93FF8133FD97FE0EBFF
+8049485A5A1480484A13C04A6C1380A36F1300167E93C7FCA592383FFFC0B8FCA4000390
+C7FCB3ABB5D8FC3F13FFA4303A7EB935>28 D<141C143C14F8EB01F0EB03E01307EB0FC0
+EB1F8014005B137E13FE5B12015B1203A2485AA2120F5B121FA25B123FA4485AA512FFB1
+127FA56C7EA4121F7FA2120F7F1207A26C7EA212017F12007F137E7F7F1480EB0FC0EB07
+E01303EB01F0EB00F8143C141C165377BD25>40 D<12E07E127C7E7E7F6C7E6C7E12037F
+6C7E7F12007F137E137FA2EB3F80A214C0131F14E0A2130F14F0A4EB07F8A514FCB114F8
+A5EB0FF0A414E0131FA214C0133F1480A2EB7F00A2137E13FE5B12015B485A5B1207485A
+485A90C7FC123E5A12F05A16537BBD25>I<ED0380B3ADBA12FEA3C8D80380C8FCB3AD3F
+417BB44A>43 D<EA0F80EA3FE0EA7FF0A2EAFFF8A213FCA3127FA2123FEA0F9CEA001C13
+3C1338A31378137013F0EA01E0A2EA03C0EA0780EA0F005A121C12180E1D798C1B>I<EA
+0F80EA3FE0EA7FF0A2EAFFF8A5EA7FF0A2EA3FE0EA0F800D0D798C1B>46
+D<141E143E14FE1307137FB5FCA3138FEA000FB3B3A5007FB61280A4213679B530>49
+D<EB0FFE90387FFFC048B512F0000714FC390FE03FFF261F800F1380263F000313C0D87F
+8014E0EBE00100FF6D13F07FA2ED7FF8A46C5A6C5A0006C7FCC8FCEDFFF0A216E05C16C0
+4A138016004A5A4A5AEC1FF05D4A5A4AC7FC14FE495AD903F01378495A495A495A49C712
+F8017C14F05B49130148B6FC5A5A5A5A5A4815E0B7FCA425367BB530>I<EB03FF011F13
+F0017F13FC3901FC07FF2603F003138048486C13C0496C13E0EA0FF86D14F0487EA66C48
+14E06C5A6C485AC714C04A138016004A5A4A5AEC3FF090380FFFC05D15F090380007FE91
+3801FF806E13C016E0ED7FF016F8ED3FFCA216FEEA1FC0487E487E487EA416FCA249137F
+007F15F801C0EBFFF06C5A6C6C4813E0260FFC0713806CB61200000114FC6C6C13F00107
+90C7FC27377CB530>I<001C15C0D81F80130701F8137F90B61280A216005D5D15F05D15
+804AC7FC14F090C9FCA7EB03FE90381FFFE0017F13F89038FE07FC9038F003FFD9C00113
+80496C13C090C7FC000E15E0C8127F16F0A216F8A3121FEA3FC0487E12FF7FA316F05B15
+FFD87F8014E0007EC713C0003E5B003F4913806C6C481300390FF01FFE6CB512F8000114
+E06C6C1380D90FF8C7FC25377BB530>53 D<123C123EEA3FE090B71280A41700485D5E5E
+5E5EA2007CC7EA0FC000784A5A4BC7FC00F8147E485C5D14014A5AC7485A4A5AA24A5A14
+3F4AC8FCA214FEA213015C1303A21307A2130F5CA2131FA5133FA96D5A6D5A6D5A29397B
+B730>55 D<ED03E04B7EA24B7EA34B7EA24B7EA34B7EA292B57EA34A8015F302038015E1
+A202078015C0020F80ED807FA2021F80ED003F4A80023E131FA2027E80027C7F02FC814A
+7FA20101824A7F49B77EA3498202C0C7FC010F824A147FA2011F8291C8123F4982013E15
+1FA2017E82017C8101FE83B500F80107B61280A4413A7DB948>65
+D<B812C017FC17FF18C028007FF000037F04007F717E717E171F84A2717EA74D5AA26017
+3F4D5A4D5A4C13C0040F5B91B600FCC7FCA2EFFF8002F0C713F0EF3FF8717E717E717E19
+807113C0A319E0A719C0A25F4D138019005FEF7FFE4C485AB912F018C095C7FC17F03B39
+7DB844>I<DB3FFCEB01C00203B5EAC003021FECF00791B6EAFC0F01039039FC00FF3F49
+01C0EB1FFFD91FFEC77E49481403D97FF080494880485B48177F4849153F4890C9FC181F
+485A180F123F5B1807127FA24993C7FC12FFAD127F7FF003C0123FA27F001F1707A26C6C
+1780180F6C6D16006C6D5D6C173E6C6D157ED97FF85D6D6C4A5A6DB44A5A010701C0EB0F
+E06D01FCEBFF80010090B548C7FC021F14F8020314E09126003FFEC8FC3A3B7BB945>I<
+B87E17F817FF18C028007FF8000713F09338007FF8EF1FFE717E050313807113C0A27113
+E0F07FF0A2F03FF8A219FC181FA219FEA419FFAC19FEA419FC183FA219F8187F19F0F0FF
+E0A24D13C04D13804D1300EF1FFEEF7FFC933807FFF0B912C095C7FC17FC178040397DB8
+49>I<B912F0A426007FF8C7FCEF1FF8170717031701A21700A21878A3043C137C183CA4
+1800167CA216FC150391B5FCA4ECF8031500167CA2163C180FA3181EA293C7FCA2183EA2
+183C187CA218FCA2EF01F81703170F173FEE01FFB9FC18F0A338397DB83F>I<B912C0A4
+3A007FF800039338007FE0171F170F1707A21703A21701A318F0EE7800A41800A216F8A2
+1501150791B5FCA4ECF80715011500A21678A693C8FCADB7FCA434397DB83C>I<DB3FFC
+EB01C00203B5EAC003021FECF00791B6EAFC0F01039039FC00FF3F4901C0EB1FFFD91FFE
+C77E49481403D97FF080494880485B48177F4849153F4890C9FC181F485A180F123F5B18
+07127FA24993C8FC12FFAB043FB61280A2127F7FDC0003EBC000123FA27F121FA26C7EA2
+6C7F6C7F6C7F7ED97FF85C6D7E6DB45C010701C05B6D01FCEBFF3F010090B5EAFE0F021F
+ECF8030203ECE0009126003FFEC9FC413B7BB94B>I<B612FCA439007FF800B3B3ADB612
+FCA41E397DB824>73 D<B7FCA426007FF8C9FCB3ACEF0780A5170F1800A35FA25FA25F5F
+5E5EEE0FFE167FB8FCA431397DB839>76 D<B500F80403B512F06E5EA26E5ED8007FF1E0
+00A2D97BFF161EA201796D5DA201786D5DA26E6C5DA36E6C4A5AA26E6C4A5AA26E6C4A5A
+A26E6C4A5AA26E6C141EA36E6D5BA26E6D5BA26F6C5BA26F6C485AA36F6C485AA26F6C48
+5AA26F6C48C7FCA2923803FF1EA36F13BCA26F13F8A2705AA2705AA213FCB500FC6D4848
+B612F0A2EE0F80EE070054397DB85B>I<B500FC0203B512F0A28080C66C6D90390003F0
+006F6E5A81017B7F13798101787F6E7E6E7E6E7F6E7FA26E7F6E7F6E7F6E7F6F7E153F82
+6F13806F13C06F13E06F13F06F13F88117FCEE7FFEEE3FFF7013817013C17013E18218F1
+7013F97013FDEF7FFF8383A28383838383187FA2183F181F01FC160FB500FC1507180318
+01A244397DB84B>I<EDFFF8020FEBFF80027F14F0903A01FFC01FFC010790380007FFD9
+1FFC010113C0D93FF06D6C7E49486E7E49486E7E48496E7E48834890C86C7EA248486F13
+80A248486F13C0A2003F18E0A348486F13F0A400FF18F8AC007F18F06D5DA3003F18E0A2
+6D5D001F18C0A26C6C4B13806C18006E5C6C6D4A5A6C5F6C6D4A5A6D6C4A5AD93FFC4948
+5A6DB401075B0107D9C01F90C7FC010190B512FC6D6C14F0020F1480020001F8C8FC3D3B
+7BB948>I<B8FC17F017FEEFFF8028007FF8000F13C0040113E07013F0EF7FF8EF3FFCA2
+EF1FFEA218FFA818FEA2EF3FFCA2EF7FF8EFFFF04C13E0040F13C091B7120017FC17E002
+F8C9FCB3A4B612FCA438397DB841>I<EDFFF8020FEBFF80027F14F0903A01FFE03FFC01
+0790380007FFD91FFC010113C049486D7FD97FE0EC3FF049486E7E488348496E7E4890C8
+6C7EA248486F1380A2001F18C04981003F18E0A3007F18F04981A300FF18F8AC007F18F0
+A36D5D003F18E0A36C6C4B13C0A2000FDA1FC014806C6C90267FF0071300EDFFF86C903A
+81F07C0FFE6C903AC3C01E1FFC6CDA800F5BD97FE3ECBFF0D93FF36DB45AD91FFF5D0107
+01C091C7FC01019038F01FFC6D6CB500F01308020F6E131C0200EBF9FC92260001FE133C
+9438FF80FC18FF8219F8A28319F0A27113E0A27113C0711380711300EF01FC3E4A7BB948
+>I<B712FCEEFFE017FC17FF28007FF8000F13C004017F707F717E717EA2717EA284A760
+A24D5A604D5A4D5A04035B041F90C8FC91B612FC17E0839139F8003FFCEE0FFF707F707F
+8284A2707FA584A51A601AF084177F1901DD3FFE13E0B600FC011F130394390FFF87C071
+EBFF8005011400CBEA1FFC443A7DB848>I<D907FF130E013FEBE01E90B5EAF83E0003EC
+FE7E3A07FC01FFFE390FF0001F4848130F48481303491301007F140090C8FC167E5A163E
+A27F161E7F7F6D91C7FC13FC387FFFE014FEECFFF06C14FE6F7E6C816C15F06C816C81C6
+81133F010F801301D9000F1480EC007F030F13C01503818100F0157FA3163FA27E17807E
+167F6C16007E6D14FE01E0495A01F813039039FF801FF800FC90B512E0D8F83F5CD8F007
+49C7FC39E0007FF02A3B7BB935>I<003FB91280A4D9F800EBF003D87FC09238007FC049
+161F007EC7150FA2007C1707A200781703A400F818E0481701A4C892C7FCB3AE010FB7FC
+A43B387DB742>I<B600FC011FB512C0A426007FF8C8381FC000725AB3B3181F013F94C7
+FC8060011F163E6D6C157E187C6D6C15FC6D6D495A6D6DEB07F06D01F0EB1FE0DA7FFEEB
+FFC0021FB6C8FC02075C020014F0030F1380423A7DB849>I<007FB9FCBA1280A36C1800
+3905786A4A>95 D<EB3FFE0003B512E0000F14F8391FF00FFE003FEB03FF6D6C7F6E7FA2
+6F7EA26C5A6C5AEA0380C8FCA2EC3FFF010FB5FC137F3901FFF87F00071380380FFE00EA
+3FF85B485A12FF5BA415FF6D5A127F263FF00713F83B1FFC1FBFFFC0390FFFFE1F0003EB
+F80F39003FE0032A257DA42E>97 D<13FFB5FCA412077EAF4AB47E020F13F0023F13FC91
+38FE03FFDAF00013804AEB7FC00280EB3FE091C713F0EE1FF8A217FC160FA217FEAA17FC
+A3EE1FF8A217F06E133F6EEB7FE06E14C0903AFDF001FF80903AF8FC07FE009039F03FFF
+F8D9E00F13E0D9C00390C7FC2F3A7EB935>I<903801FFC0010F13FC017F13FFD9FF8013
+802603FE0013C048485AEA0FF8121F13F0123F6E13804848EB7F00151C92C7FC12FFA912
+7FA27F123FED01E06C7E15036C6CEB07C06C6C14806C6C131FC69038C07E006DB45A010F
+13F00101138023257DA42A>I<EE7F80ED7FFFA4150381AF903801FF81010F13F1013F13
+FD9038FFC07F0003EB001FD807FC1307000F8048487F5B123FA2485AA312FFAA127FA27F
+123FA26C6C5B000F5C6C6C5B6C6C4913C02701FF80FD13FE39007FFFF9011F13E1010113
+012F3A7DB935>I<903803FF80011F13F0017F13FC3901FF83FE3A03FE007F804848133F
+484814C0001FEC1FE05B003FEC0FF0A2485A16F8150712FFA290B6FCA301E0C8FCA4127F
+A36C7E1678121F6C6C14F86D14F000071403D801FFEB0FE06C9038C07FC06DB51200010F
+13FC010113E025257DA42C>I<EC1FF0903801FFFC010713FF90391FF87F8090383FE0FF
+D9FFC113C0A2481381A24813016E1380A2ED3E0092C7FCA8B6FCA4000390C8FCB3ABB512
+FEA4223A7DB91D>I<161FD907FEEBFFC090387FFFE348B6EAEFE02607FE07138F260FF8
+01131F48486C138F003F15CF4990387FC7C0EEC000007F81A6003F5DA26D13FF001F5D6C
+6C4890C7FC3907FE07FE48B512F86D13E0261E07FEC8FC90CAFCA2123E123F7F6C7E90B5
+12F8EDFF8016E06C15F86C816C815A001F81393FC0000F48C8138048157F5A163FA36C15
+7F6C16006D5C6C6C495AD81FF0EB07FCD807FEEB3FF00001B612C06C6C91C7FC010713F0
+2B377DA530>I<13FFB5FCA412077EAFED7FC0913803FFF8020F13FE91381F03FFDA3C01
+138014784A7E4A14C05CA25CA291C7FCB3A3B5D8FC3F13FFA4303A7DB935>I<EA01F0EA
+07FC487EA2487EA56C5AA26C5AEA01F0C8FCA913FF127FA412077EB3A9B512F8A4153B7D
+BA1B>I<13FFB5FCA412077EB3B3ACB512FCA4163A7DB91B>108 D<01FED97FE0EB0FFC00
+FF902601FFFC90383FFF80020701FF90B512E0DA1F81903983F03FF0DA3C00903887801F
+000749DACF007F00034914DE6D48D97FFC6D7E4A5CA24A5CA291C75BB3A3B5D8FC1FB500
+83B512F0A44C257DA451>I<01FEEB7FC000FF903803FFF8020F13FE91381F03FFDA3C01
+1380000713780003497E6D4814C05CA25CA291C7FCB3A3B5D8FC3F13FFA430257DA435>
+I<903801FFC0010F13F8017F13FFD9FF807F3A03FE003FE048486D7E48486D7E48486D7E
+A2003F81491303007F81A300FF1680A9007F1600A3003F5D6D1307001F5DA26C6C495A6C
+6C495A6C6C495A6C6C6CB45A6C6CB5C7FC011F13FC010113C029257DA430>I<9039FF01
+FF80B5000F13F0023F13FC9138FE07FFDAF00113800003496C13C00280EB7FE091C713F0
+EE3FF8A2EE1FFCA3EE0FFEAA17FC161FA217F8163F17F06E137F6E14E06EEBFFC0DAF003
+13809139FC07FE0091383FFFF8020F13E0020390C7FC91C9FCACB512FCA42F357EA435>
+I<9038FE03F000FFEB0FFEEC3FFF91387C7F809138F8FFC000075B6C6C5A5CA29138807F
+80ED3F00150C92C7FC91C8FCB3A2B512FEA422257EA427>114 D<90383FF0383903FFFE
+F8000F13FF381FC00F383F0003007E1301007C130012FC15787E7E6D130013FCEBFFE06C
+13FCECFF806C14C06C14F06C14F81203C614FC131F9038007FFE140700F0130114007E15
+7E7E157C6C14FC6C14F8EB80019038F007F090B512C000F8140038E01FF81F257DA426>
+I<130FA55BA45BA25B5BA25A1207001FEBFFE0B6FCA3000390C7FCB21578A815F86CEB80
+F014816CEBC3E090383FFFC06D1380903803FE001D357EB425>I<01FFEC3FC0B5EB3FFF
+A4000714016C80B3A35DA25DA26C5C6E4813E06CD9C03E13FF90387FFFFC011F13F00103
+138030257DA435>I<B539F001FFF8A4000390C7EA1F00161E6E133E6C153C6E137C6C15
+786E13F8017F5CECF001013F5C14F8011F495AA2ECFC07010F5CECFE0F010791C7FC6E5A
+6D131E15BE6D13BC15FC6D5BA36E5AA26E5AA26E5AA26E5AA22D257EA432>I<B500F1B5
+38803FFFA43D07FE000FF80003E06C6C010715C082028015076C6E6C148015076C01C0ED
+0F00826E485C017FED801E5D90273FF01E7F5B17C0DAF83E147C011F90393C3FE078037C
+14F8903B0FFC781FF0F0A29139FEF00FF10107EDF9E002FF14FB6D496CB45AA24B7E6D5E
+A26D496C90C7FCA292C7FC6E5CA2023E147C023C143C40257EA445>I<B539F01FFFF0A4
+000390398003F8006C01C013E06C1407D97FE05B6D6C485A6E48C7FC90381FFC3E010F5B
+903807FEFC6D6C5A5D6D5B6D5B6E7E6E7E814A7EA24A7E903801F3FFD903E37FD907C17F
+EB0FC049486C7E4A6C7E013E80496D7E49130F00016E7EB590383FFFF8A42D257EA432>
+I<B539F001FFF8A4000390C7EA1F00161E6E133E6C153C6E137C6C15786E13F8017F5CEC
+F001013F5C14F8011F495AA2ECFC07010F5CECFE0F010791C7FC6E5A6D131E15BE6D13BC
+15FC6D5BA36E5AA26E5AA26E5AA26E5AA292C8FCA25C141E003F133E387F803C38FFC07C
+147814F8EBC1F0EBC3E06C485A387D1F80D83FFFC9FCEA1FFCEA07F02D357EA432>I
+E
+%EndDVIPSBitmapFont
+%DVIPSBitmapFont: Ff ecbx1440 14.4 24
+/Ff 24 121 df<151E153E15FE1403140F147FEB07FF0003B5FCB6FCA3EBF87FEAFC00C7
+FCB3B3B3A6007FB712FCA52E4E76CD42>49 D<EC1FFE49B512F0010F14FC013FECFF8049
+15E02701FF803F7F2703FC000713FCD807F001017F48486D7FD81F806E138048C87E7013
+C0D87FE016E001F8806D16F000FF817F7013F8A56C5AA26C5A6C5AEA0380C914F05EA218
+E05E18C05E18804C13005F4C5A4C5A5F4B5B4B5B4B5B94C7FCED0FFC4B5A4B5AED7FC04B
+5A4A90C8FCEC03FC4A5A4A4814F84A5A4A5A4AC8FC02FEEC01F0495A495A495A5CD90F80
+140349C8FC013E1507017FB7FC90B812E05A5A5A5A5A5A5AB9FC18C0A4354E7ACD42>I<
+913807FFC0027F13FC0103B67E010F15E090261FF80313F890267FC0007F01FEC7EA3FFE
+48488148486E138013FE486C6C6D13C0804817E080A66C5B18C06C5B6C90C75AD8003816
+8090C8FC4C1300A24C5A5F4C5A4B5B4B13C0030F5BDB7FFEC7FC91387FFFF816C016FCEE
+FF80DA000313E09238007FF8EE3FFE707E70138018C07013E018F07013F8A218FC82A218
+FEA3EA03C0EA0FF0EA3FFC487EA2B5FCA218FCA25E18F8A26C4816F0495C4916E0D83FE0
+4A13C06C485CD80FF04A1380D807FE91387FFE003B03FFE003FFFC6C90B65A6C6C15E001
+0F92C7FC010114FCD9001F1380374F7BCD42>I<932603FFF01407047F01FF140F0307B6
+00E0131F033F03F8133F92B700FE137F02039126C003FF13FF020F01F8C7EA3FC1023F01
+C0EC0FE391B5C80003B5FC4901FC814949814901E082011F498249498292CA7E49488349
+48835A4A83485B4885A24849187FA2485B1B3FA2485B1B1FA25AA21B0091CDFCA2B5FCAE
+7EA280A36C1A1FA36C7FA21B3F6C7F1B3E6C7F1B7E6C6D187C6C1AFC6E18F86C19016D6C
+EF03F06D7E6FEE07E06D6DEE0FC001076DEE1F806D01F8EE3F006D6D16FE6D01FF4B5A02
+3F01C0EC07F8020F01FCEC3FF00203903AFFC001FFC0020091B6C7FC033F15FC030715F0
+DB007F1480040301F0C8FC505479D25F>67 D<BB12FEA5D8000F01E0C700077FF0007F19
+1F190785858586A2F23F80A21A1FA31A0FA4DD01F014C01A07A497C7FCA21703A3170717
+0F171F17FF92B6FCA5EDE000171F170F17071703A317011BF8A3F201F0A394C8FCA21A03
+A21BE0A21A07A31A0F1BC01A1F1A3FA21A7F1AFF4F13801907191F197F060FB5FCBCFCA2
+1B00A34D527CD156>69 D<B600F04EB612F06F606F60A3D800076D4E49C7FCA2DADFFFF0
+1F7FA202CF6D173EA302C76D177CA202C36D17F8A202C16DEE01F0A202C06DEE03E0A36F
+6CEE07C0A26F6CEE0F80A26F6CEE1F00A36F6D153EA26F6D5DA26F6D5DA36F6D4A5AA26F
+6D4A5AA2706C4A5AA3706C4A5AA2706C4AC7FCA2706D133EA3706D5BA2706D5BA2706D48
+5AA2706D485AA3716C485AA2716C485AA2716C48C8FCA37113BEA27113FCA2715BA3715B
+A2715BA2D91FF06F5AB600FE050FB712F0A2725AA272C7FC74527CD17D>77
+D<003FBB12FCA59126C0007FEB000301FCC7ED003FD87FF0F00FFE491807491803491801
+90C81600A2007E1A7EA3007C1A3EA500FC1A3F481A1FA6C91700B3B3AC49B912C0A55051
+7BD05B>84 D<B700FE4AB612F0A5D8000F01E0CA387FC000091FC7FCB3B3B26D611B3E81
+1B7E6D197CA26D6D17FC636D6D1601027F4D5A6F4C5A023F170F6E6C4C5A6E6D4B5A6E01
+E003FFC8FC6E01F8EC03FE020001FEEC1FFC923B7FFFE001FFF8031F90B612E003071680
+03004BC9FC041F14F0040091CAFC5C537CD165>I<EC3FFE0107B512E0011F14FC017F14
+FF2701FFC00F13C02703FE00037F486C01007F6E6D7E486D80707EA2707EA3707F6C5B6C
+90C7FC6C5AC9FCA60307B5FC0203B6FC147F0103B7FC011FEBF00F017F1300EBFFFC0003
+13F04813C0485B4890C7FC5A5B485AF081F012FF5BA35EA26D5C127F6D5C003F03F713C3
+6DD901E314E06CD9C00714FF00079026F01F8114C06C90B5C61480C602FC6D1300011F01
+F0EB3FFC01010180EB07F03C387CB642>97 D<EB3FF8B5FCA51203C6FCB3A4EE7FF00307
+B5FC031F14C0037F14F0913AF9FF007FFCDAFFF8EB1FFF03E001077F03806D7F92C76C7F
+4A6E7F5C4A6F7E85183F85A38584A31A80AD1A00A36061A261187F616E15FF616E4A5B6E
+4A5B6F495BDACFE04990C7FCDA87F0EB3FFE913A01FE01FFF8496CB65A49013F14C04901
+0749C8FC90C813E041547DD249>I<913803FFE0023F13FE91B67E010315E0010F903800
+3FF8D93FFCEB07FC4948497E4948131F4849497E485B485BA24890C7FC5A5B003F6F5A70
+5A705A007F92C8FC5BA312FFAD127F7FA3123F7F6CEE0F80A26C6D141F18006C6D5C6C6D
+143E6C6D147E6C6D5C6D6C495A6DB4EB07F0010F9038C01FE06D90B5128001014AC7FCD9
+003F13F80203138031387CB63A>I<943803FF80040FB5FCA5EE003F170FB3A4913803FF
+80023F13F849B512FE0107ECFF8F011F9038C03FEF90273FFE0007B5FCD97FF813014948
+7F484980484980484980488291C8FC5A5B123FA2127F5BA312FFAD127FA37F123FA3121F
+7F6C5E6C6D5C5F6C6D91B5FC6C6D5B6C6D4914E0D97FFCD90FEFEBFF80D91FFFEB7F8F01
+0790B5120F010114FC6D6C13E00207010049C7FC41547CD249>I<913807FF80027F13F8
+49B512FE01076E7E011F010313E0903A3FFC007FF0D97FF06D7E49486D7E4849130F4849
+6D7E48824890C77E1880485A82003F17C0A3485A18E082A212FFA290B8FCA401FCCAFCA6
+127FA37F123FA2EF03E06C7E17076C17C06C6D140F18806C6D141F6C6DEC3F006C6D147E
+D97FFC495AD91FFFEB07F86D9038E03FF0010390B512C001005D023F01FCC7FC020113E0
+33387CB63C>I<DA1FFE14FE49B539E007FF80010FDAFC1F13C0013FDAFF7F13E090267F
+F807EBFF072701FFE001EBF07F48497E484990387FF83F91C7003F14C048EEFC1F489338
+FE070049021F90C7FCA2003F82A9001F5EA26D143F6C5E6C5E6E137F6C6D495A6C6D485B
+6CD9F80713804890B6C8FCD803EF14FC01C114E02707C01FFEC9FC49CBFCA2487EA37FA2
+7F13FC90B612FE6CEDFFF017FCEFFF806C8318F06C836C837F48B87E1207D80FFCC70003
+7F4848EC003F4848150F48486F138083485A83A56D5D007F18006D5D003F5F6C6C4B5A01
+FE153FD807FFED7FF06C01C049485AC601FC011F1380013FB648C7FC010F15F8010115C0
+D9000F01F8C8FC3B4F7CB542>103 D<133FEBFFC0487F487FA2487FA66C5BA26C5B6C5B
+013FC7FC90C8FCAEEB1FF8B5FCA512017EB3B3A6B612F0A51C547CD324>105
+D<EB3FF8B5FCA51203C6FCB3B3B3B1B612F8A51D537CD224>108
+D<D93FF0EB1FFCB591B57E030314E0030F14F892391FC07FFC92397E003FFE000302F86D
+7EC6EBF1F04B6D7FECF3C0ECF78092C76C7F14FF5CA25CA45CB3ACB6D8F807B612C0A542
+367CB549>110 D<913801FFC0023F13FE91B67E010315E0010F018013F8903A3FFC001F
+FED97FF0EB07FF49486D7F48496D7F48496D7F91C8127F4883488349153F001F83A2003F
+8349151FA2007F83A400FF1880AC007F1800A3003F5F6D153FA2001F5FA26C6C4B5AA26C
+6D4A5A6C5F6C6D495B6C6D495B6D6C4990C7FCD93FFCEB1FFE6DB46CB45A010790B512F0
+010115C0D9003F49C8FC020313E039387CB642>I<D93FF8EB7FF0B50107B5FC031F14C0
+037F14F09126F9FF0013FCDAFFF8EB3FFF000302E0010F7FC602806D7F92C76C7F4A824A
+804A6E7F85187F85A2183F85A4721380AD4E1300A44E5AA26118FF616E5C616E4A5B6E4A
+5B6F495B03E04990C7FC6FEB7FFE913AF9FE01FFF802F8B65A033F14C0030749C8FC0300
+13E093CAFCB1B612F8A5414D7DB549>I<90393FF001FCB590380FFF804B13E0037F13F0
+9238FE1FF89138F1F83F00019138F07FFC6CEBF3E015C0ECF780A2ECFF00EE3FF84AEB1F
+F0EE0FE093C7FC5CA45CB3ABB612FEA52E367DB535>114 D<903903FFC00E011FEBFC1E
+90B6127E000315FE3907FE003FD80FF0130F4848130348481301491300127F90C8127EA2
+48153EA27FA27F01F091C7FC13FCEBFF806C13FEECFFF06C14FE6F7E6C15E06C816C15FC
+6C81C681133F010F15801301D9000F14C0EC003F030713E0150100F880167F6C153FA216
+1F7EA217C07E6D143F17807F6DEC7F0001F85C6DEB03FE9039FF801FFC486CB512F0D8F8
+1F14C0D8F00791C7FC39E0007FF02B387CB634>I<147CA614FCA41301A31303A21307A2
+130F131F133F137F13FF1203000F90B512FEB7FCA426007FFCC8FCB3A9EE0F80ABEE1F00
+6D7EA2011F143E806D6D5A6DEBC1F86DEBFFF001005C023F1380DA03FEC7FC294D7ECB33
+>I<D93FF8913801FFC0B50207B5FCA50003ED001FC61607B3AE5FA35FA25F137F5F6D6C
+14F7DC01E713F06D6CD907C7EBFFC0903A0FFF801F876D90B51207010114FC6D6C13F002
+0701C091C7FC42377CB549>I<B6D8F001B512FCA5C66C48C7381FF8006D6CEC0FE06D6D
+495A606D6D49C7FC6D6D137E6D6D13FE6D6D485A4C5A6D01FC5B6E6C485A6E6C485A161F
+6EEBBF806E01FFC8FC6E5B5E6E5B806E7F6F7EA26F7E834B7F92B5FC83DA01FB7FDA03F1
+7FDA07F07F4A5A4A486C7E4B6C7E4A486C7F147E02FE6D7F49486D7F49486D7F4A814948
+7F49486D7F011F6F7ED97FE06E7EB500FE0107B6FCA540357EB445>120
+D E
+%EndDVIPSBitmapFont
+%DVIPSBitmapFont: Fg ecss1000 10 45
+/Fg 45 122 df<903901F807F0EB07FE130F131F133FEB7F0EEB7E0201FEC8FC5BA21201
+AEB538FE07F0A53801FC00B3AE243D7FBC2C>28 D<00FE13FEAD007E13FCA5007C137CAC
+171E77BB2A>34 D<1538157CB3A5003FB812F0B912FCA4C8007CC8FCB3A6153836367BAF
+41>43 D<12FEA7121E123CA312381278A21270A212F00711788617>I<12FEA707077886
+17>46 D<12FEA71200B3A512FEA7072578A417>58 D<12FEA71200B3A512FEA7121E123C
+A312381278A21270A212F0072F78A417>I<EC07F8A24A7EA24A7EA2157EEC3F7F143EA2
+91387E3F80A2147C02FC7F151FA2D901F87F150F01038014F0A201076D7E14E0A2010F6D
+7E14C0A2011F6D7E1480013F808191C7FC4981167F137E01FE6E7E90B7FCA24882A3D803
+F8C7EA0FF05B00078216075B000F8216035B001F8216015B003F6F7EA248C91380177F12
+7E00FE17C0323A7EB937>65 D<B67E15F815FE6F7E82D9000113F09138003FF8150F6F7E
+6F7E150115008282A45E5E15014B5A15074B5AED3FF0EDFFC090B65A4BC7FC15F815FF16
+C0D9000313F09138003FF8ED07FC6F7EED00FFEE7F80EE3FC0A2161F17E0160FA4161F17
+C0163FA2EE7F80ED01FF4B1300ED0FFEED7FFC90B65A16E016804BC7FC15E02B3A79B937
+>I<913803FF80021F13F891B6FC4915C013075B4948C61380D97FF0130FD9FFC013034A
+13014890C9FC485A485A5B120F5B485AA2485AA3485AA448CAFCAC6C7EA46C7EA36C7EA2
+6C7E7F12077F6C7E6C6C15206C6D14E06E1301D97FF0130FD91FFE137F6DB6FC6D15C001
+0115006D5C021F13F0020313802B3E7BBB35>I<B612C015F815FE6F7E16E090C77FED3F
+F8ED0FFCED03FE6F7E81EE7F8017C0163FEE1FE0A2EE0FF0A2160717F8A31603A217FCAB
+17F8A21607A217F0160FA2EE1FE0A2EE3FC0A2EE7F8016FF4B13004B5AED0FFCED3FF8ED
+FFF090B65A168093C7FC15F815C02E3A78B93C>I<B712F0A690C9FCB390B612C0A590C9
+FCB3A390B612FCA7263A78B932>I<913803FF80023F13F891B512FE0103ECFFC04915E0
+5B90383FFE00D97FF0EB1FC0D9FFC013074A13014890C8124048481500485A5B120F5B48
+5AA2485AA3485AA448CAFCA992383FFFF0A36C7EA2ED0007A26C7EA36C7EA26C7E7F1207
+7F6C7E6C7E6C7F80EB7FF0D93FFE137F010FB6FC7F6D15C001001500023F13F802031380
+2C3E7BBB37>71 D<12FFB3B3B3A4083A79B917>73 D<B4FCB3B3B090B612C0A6223A79B9
+2D>76 D<D8FFC0ED07FFA36D5DA26D5D00FE177FA26D153F0178153EA2017C157EA26D15
+FCA3013F14016D15F8A26E1303010F15F06E1307A2010715E06E130FA2010315C06E131F
+A2010115806E133FA2010015006E5B027C137E027E13FEA2023E5BEC3F01A2021F5B1583
+A2020F5B15C702075BA3913803EFC0A215FF6E5BA26E90C7FCA392C8FCA2383A78B949>
+I<EC07F891387FFF8049B512E04980010F14FC90391FFC0FFE90393FE001FF903A7F8000
+7F8049C76C7E48486E7E48486E7E49140700078248486E7E491401001F82491400A2003F
+824981007F1780A390C9123FA24817C0AC6C6CED7F80A56C6CEDFF00A26D5C001F5EA26C
+6C4A5AA26C6C4A5A6C6C4A5A6D141F00015E6C6C4A5AD97FC0EBFF806D6C4890C7FC9039
+1FFC0FFE6DB55A6D5C010114E06D6C1380DA07F8C8FC323E7BBB3D>79
+D<B612C015F815FF8216E090C77FED1FF8ED07FC15036F7E150082821780A2163FA4167F
+A217005E5E15014B5A1507ED1FF8EDFFF090B65A168093C7FC15F815C090CAFCB3A6293A
+79B935>I<B67E15F815FE6F7E8290C77FED1FF06F7EED03FC150182150082A282A35EA2
+5E15015E1503ED0FF84B5AEDFFE090B65A5E4BC7FC15F815E09038000FF0140781140381
+1401816E7E8182153F826F7EA26F7EA26F7E1503826F7EA26F7EA2EE7F80EE3FC0A2EE1F
+E02B3A78B936>82 D<EB03FF011F13F0017F13FE48B612804815C05A4848C6FCD81FF0EB
+1F804848130701801303007F140090C9FCA212FEA67E7E7F7FEA3FF013FC381FFFC06C13
+FC6CEBFF806C14E06C14F86C80013F7F01077FD9007F1380020713C0020013E0157FED1F
+F0150FA2ED07F8A21503A6ED07F0124012600078EC0FE0007C141FB4EC3FC001C0EBFF80
+EBFC036CB61200001F5C6C14F800015C6C6C13C0D907FEC7FC253E7CBB2E>I<B91280A6
+C7D807F8C8FCB3B3B0313A7DB938>I<B4ED1FC0B3B3A76CED3F807FA36C6CEC7F00A26C
+6C14FE6C6C13016D495A6C6C495A6C6CEB1FF03A01FFC07FE06C90B55A013F5C6D49C7FC
+010713F89038007FC02A3C79B939>I<EB1FF0EBFFFC000313FF000F14804814C09038E0
+1FE09038000FF0001C13070018EB03F81210C7FCEC01FCA7143FEB0FFF90B5FC1203120F
+381FFE01EA3FE0EA7F80130012FEA414037E387F800FEBE03F6CB5FC7E6C13F96C13E1D8
+01FEC7FC1E287DA628>97 D<12FEB3A4EB01FCEB0FFF013F13C090B57EB67E9038F03FF8
+EBC007496C7EEB0001486D7EA2157FA3ED3F80AAED7F00A35D5D14016C5CEB80039038C0
+0FF89038F03FF090B55A485C6D5BD91FFEC7FC380007F8213D7ABB2B>I<EB03FE90381F
+FFC0017F13E090B512F84814FC3803FC033907F8007CD80FE01338484813081500485AA2
+48C8FCA3127E12FEA9127FA36C7EA26D1302001F14066C6C131E6C6C137E9038FC03FE6C
+B5FCC614FC6D13F0011F13C0903807FC001F287DA625>I<ED3F80B3A4EB0FE0EB3FFC90
+B5FC4814BF4814FF3807FE07380FF801381FE00049137F003F143F5B127F90C7FCA312FE
+AA127FA36C7E157F6C7E6D13FF380FF0033807FE076CB512BF6C143F6C13FEEB7FF8D90F
+E0C7FC213D7DBB2B>I<EB07F8EB1FFE90387FFF8048B512C04814E03907FC0FF0390FF0
+03F8EBE001391FC000FC49137C003F147E90C7123E5A127E151F12FEB7FCA500FCC8FCA2
+7EA2127EA2127F7E7F6C7E6D13026C6C130E6C6C133E3903FE01FE6CB5FC6C14FC6D13F0
+011F13C0903803FE0020287EA625>I<14FF010313C0130F5B5BEB7F819038FE00404913
+0012015BA21203ADB512FCA5D803F8C7FCB3AE1A3D7FBC19>I<903907E001F890383FFC
+1F90397FFEFFFC48B6FC5A9039F81FF8003907F00FE048486C7EEBC003A248486C7EA76C
+6C485AA2EBE0076C6C485A6C6C485A48B5FC5D4849C7FCEB3FFC381F07E090C9FCA37F7F
+6CB512C015F815FE6CECFF8016C04815E05A3A3F80007FF048C7120F007EEC03F8481401
+A46C1403007E15F0D87F80130F6C6CEB1FE03A1FFC01FFC06CB612806C1500000114FC6C
+6C13F0010790C7FC26387EA52A>I<12FEB3A4EB01FC90380FFF804913C0017F13E090B5
+12F039FFF81FF8EBE007EBC003018013FC14011300A35AB3A71E3C7ABB2B>I<12FFA812
+00AC127FB3B308397BB814>I<12FEB3A5EC03FE4A5A4A5A4A5A4A5A4A5A4A5A4990C7FC
+495A5C495A495A495A495A495A497EB57EA280EBF7F813E3EBC1FCEB80FE497E487F6E7E
+81141F6E7E8114076E7E6E7E811400157F1680213C7ABB29>107
+D<12FEB3B3B3A6073C7ABB14>I<D901FCEB03F83BFE0FFF801FFF496D481380017F6DB5
+12C090B500F114E03CFFF81FFBF03FF0D9E007EBC00F903AC003FF80070180020013F86E
+140301005BA3485CB3A735267AA542>I<EB01FC39FE0FFF804913C0017F13E090B512F0
+39FFF81FF8EBE007EBC003018013FC14011300A35AB3A71E267AA52B>I<EB03FE90380F
+FF80013F13E090B512F848803903FE03FE3907F800FF4848EB7F8049133F4848EB1FC048
+48EB0FE0A290C712074815F0A2007E140300FE15F8A9007FEC07F0A36C6CEB0FE0A26C6C
+EB1FC06D133F6C6CEB7F806C6CEBFF003903FE03FE6CB55A6C5C6D5B011F13C0D903FEC7
+FC25287EA62A>I<EB01FC38FE0FFF013F13C090B57EB67E9038F03FF8EBC00F90388003
+FC1300486D7E14008181A21680153FA9ED7F00A35D5D14016C495AEB80076D485A9038F0
+3FF090B55A485C6D5BD91FFEC7FCEB07F890C9FCAF21367AA52B>I<14F0EAFC07130F13
+3F137F13FF00FD130013FCEAFFF05B5BA25B90C7FCA35AB3A414267AA51C>114
+D<EB7FE03801FFFC0007EBFF804814C05A383FC03F90380007801401007E90C7FCA4127F
+A26C7E13F0EBFF806C13F06C13FC6C7F6C7FC61480131F010013C0143FEC0FE0A21407A3
+124012600078EB0FC000FE131F39FFC07F8090B5FC6C1400001F5B000313F838007FC01B
+287EA620>I<EA01FCAAB6FCA5D801FCC7FCB3A76D138014013900FF07C014FFA26D1300
+EB3FFCEB1FE01A307FAE1E>I<00FEEB01FCB3AA1403A214076C131F387F807F90B5FC6C
+13F914F1000F13C1D803FCC7FC1E267AA42B>I<B4EC0FE06CEC1FC0A27F003FEC3F80A2
+7F001FEC7F00A26C6C137E15FEA26C6C485AA36C6C485AA3D801FC5B140700005C13FE14
+0F017E5B137F141F013F5BA2149FD91FBFC7FCA3EB0FBE14FE6D5AA323257FA426>I<00
+FED901FEEB01FC007F17F802031403A2018013DF003FEE07F01407ED9F80D81FC016E002
+0F140F158FD80FE002C013C0030F131F141FED07E0D807F01680021E143F143E0003DA03
+F0130013F8023C5C0001017C147EED01F813FC027814FE0000D9F8005BA24A13FC017C5D
+167D137E5C013EEC3DF0013F143F5C011F5D161F36257FA439>I<D87F80EB0FE0003FEC
+1FC06C6C133F6DEB7F806C6C1400000714FE6C6C485A3801FC0301FE5B6C6C485A6D485A
+90383F9FC0EB1FDF6DB45A92C7FC6D5A6D5A1301A2497E1307497EECDF8090381F9FC090
+383F0FE0496C7EEBFE0301FC7F00016D7E48486C7E4848137F120F49EB3F804848EB1FC0
+484814E0007FEC0FF048C7EA07F8252580A426>I<B4EC0FE06CEC1FC0A26C7EED3F807F
+001FEC7F00A26C7E15FE7F00075C1401EA03F85DEBFC0312015D3800FE075D137E140F01
+7F5B133FA290381F9F80A292C7FC130FA2EB079E14DEA2EB03FCA26D5AA35C13035CA213
+075C130FA2495A1220D8383FC8FCEA3FFEA25B5BEA0FE023367FA426>I
+E
+%EndDVIPSBitmapFont
+%DVIPSBitmapFont: Fh ecrm1000 10 70
+/Fh 70 123 df<DA0FF813FC91397FFF07FF903B01F807DF83C0903A07E001FF0F903B1F
+8007FE1FE090393F000FFC137E16F85B9338F007804848010790C7FC1503ACB812F8A328
+01F80003F0C7FCB3AB486C497E267FFFE0B512F0A3333B7FBA30>27
+D<EC0FF8EC7FFE903901F80780903907E001C090391F8000E090383F0007017E497EA25B
+A2485A6F5AED018092C8FCA9ED03F0B7FCA33901F8000F1503B3AA486C497E267FFFE0B5
+12C0A32A3B7FBA2E>I<EC0FFC91387FFF70903901F803F0903807E00790381F800FEB3F
+00137EA25B150748481303ADB7FCA33901F80003B3AB486C497E267FFFE0B512C0A32A3B
+7FBA2E>I<146014E0EB01C0EB0380EB0700130E131E5B5BA25B485AA2485AA212075B12
+0F90C7FCA25A121EA2123EA35AA65AB2127CA67EA3121EA2121F7EA27F12077F1203A26C
+7EA26C7E1378A27F7F130E7FEB0380EB01C0EB00E01460135278BD20>40
+D<12C07E12707E7E7E120F6C7E6C7EA26C7E6C7EA21378A2137C133C133E131EA2131F7F
+A21480A3EB07C0A6EB03E0B2EB07C0A6EB0F80A31400A25B131EA2133E133C137C1378A2
+5BA2485A485AA2485A48C7FC120E5A5A5A5A5A13527CBD20>I<1530B3A8B912FCA2C800
+30C8FCB3A836367BAF41>43 D<121C127FEAFF80A213C0A3127F121C1200A412011380A2
+120313005A1206120E5A5A5A12600A19798817>I<B512FCA516057F941C>I<121C127FEA
+FF80A5EA7F00121C0909798817>I<EB03F8EB1FFF90387E0FC09038F803E03901E000F0
+484813780007147C48487FA248C77EA2481580A3007EEC0FC0A500FE15E0B3007E15C0A4
+007F141F6C1580A36C1500A26C6C133EA26C6C5B6C6C5BEBF0013900F803E090387E0FC0
+D91FFFC7FCEB03F823397DB62A>48 D<EB01C013031307131F13FFB5FCA2131F1200B3B3
+A7497E007FB512F0A31C3779B62A>I<EB0FF0EB7FFE48B57E3903E03FE0390F000FF000
+1E6D7E001C6D7E486D7E5A6E7E126012FE6CEC7F807FA56CC7FC121CC8FCEDFF00A25D14
+015D14035D4A5A4A5A5D4A5A4AC7FC147E5C495A14E0495A495A49C8FC011EEB01805B5B
+49130348481400485A485A90C75A48B6FC5A5A485CB6FCA321377CB62A>I<EB07F8EB3F
+FF90B512C03901F80FF03903C007F848486C7E390E0001FEEA0F80391FE000FF7FA56C5A
+6C5AC7485AA25D14035D4A5A5DEC0F80027FC7FCEB1FFCECFF809038000FE06E7EEC01FC
+816E7EED7F80A216C0A2153F16E0A2121EEA7F80A2487EA316C0157F491480007EC7FC00
+70ECFF006C495A121E390F8003F83907F00FF00001B512C06C6C90C7FCEB0FF823397DB6
+2A>I<1538A2157815F8A2140114031407A2140F141F141B14331473146314C313011483
+EB030313071306130C131C131813301370136013C01201EA038013005A120E120C5A1238
+12305A12E0B712F8A3C73803F800AA4A7E0103B512F8A325387EB72A>I<0006140CD807
+80133C9038F003F890B5FC5D5D158092C7FC14FC38067FE090C9FCAAEB07F8EB1FFE9038
+780F809038E007E03907C003F0496C7E130000066D7E81C8FC8181A21680A4121C127F5A
+7FA390C713005D12FC00605C12704A5A6C5C6C1303001E495A6C6C485A3907E03F800001
+B5C7FC38007FFCEB1FE021397CB62A>I<EC3FC0903801FFF0010713FC90380FE03E9038
+3F800790387E001F49EB3F804848137F485A12075B000FEC3F0049131E001F91C7FC5B12
+3FA3127F90C9FCEB01FC903807FF8039FF1E07E090383801F0496C7E01607F01E0137E49
+7F16805BED1FC0A390C713E0A57EA47F123F16C0A2001FEC3F807F000F15006D5B000714
+FE6C6C5B6C6C485A3900FE07F090387FFFC0011F90C7FCEB03FC23397DB62A>I<123012
+38123E003FB612E0A316C05A168016000070C712060060140E5D5D00E014304814705D5D
+C712014A5A4AC7FC1406140E5CA25C1478147014F05C1301A213035C1307A2130FA3131F
+5CA2133FA5137FA96DC8FC131E233A7BB72A>I<EB03F8EB1FFF017F13C09038FC07F039
+01E001F83903C0007C4848133C90C7123E48141E000E141F001E80A3121FA26D5B6D131E
+7FD80FF85B6D137C01FF13786C6D5A6CEBE3E0ECF780C601FFC7FC6D5A6D6C7E010F13E0
+013F7F01F97F3901E07FFE48486C7E380F800F48486C1380001E010113C0487F007C143F
+0078EC1FE0150F00F81407481403A21501A36C15C0A200781403007C15806C14076CEC0F
+006C6C131ED807E0137C3903F803F0C6B55A013F1380D907FCC7FC23397DB62A>I<121C
+127FEAFF80A5EA7F00121CC7FCB2121C127FEAFF80A5EA7F00121C092479A317>58
+D<121C127FEAFF80A5EA7F00121CC7FCB2121C127FEAFF80A213C0A3127F121C1200A412
+011380A2120313005A1206120E5A5A5A12600A3479A317>I<EB3FE03801FFFE3907C03F
+80390E000FC0003CEB07F000301303007014F8007C130100FE14FC7EA4127E003CEB03F8
+C7FCEC07F0A2EC0FE0EC1F80EC3F00147E147C5C495A5C495A5CA249C7FCA31306AA90C8
+FCA8130EEB3F80497EA56D5A010EC7FC1E3B7CBA27>63 D<1538A3157CA315FEA34A7EA3
+4A6C7EA202077FEC063FA2020E7FEC0C1FA2021C7FEC180FA202387FEC3007A202707FEC
+6003A202C07F1501A2D901807F81A249C77F167FA20106810107B6FCA24981010CC7121F
+A2496E7EA3496E7EA3496E7EA213E0707E1201486C81D80FFC02071380B56C90B512FEA3
+373C7DBB3E>65 D<B712E016FC16FF0001903980007FC06C90C7EA1FE0707E707E707EA2
+707EA283A75F16035F4C5A4C5A4C5A4C5AEEFF8091B500FCC7FCA291C7EA7F80EE1FE0EE
+07F0707E707E83707EA21880177F18C0A7188017FFA24C13005F16034C5AEE1FF8486DEB
+7FF0B812C094C7FC16F832397DB83B>I<913A01FF800180020FEBE003027F13F8903A01
+FF807E07903A03FC000F0FD90FF0EB039F4948EB01DFD93F80EB00FF49C8127F01FE153F
+12014848151F4848150FA248481507A2485A1703123F5B007F1601A35B00FF93C7FCAD12
+7F6DED0180A3123F7F001F160318006C7E5F6C7E17066C6C150E6C6C5D00001618017F15
+386D6C5CD91FE05C6D6CEB03C0D903FCEB0F80902701FF803FC7FC9039007FFFFC020F13
+F002011380313D7BBA3C>I<B712C016F816FE000190398001FF806C90C7EA3FE0EE0FF0
+EE03F8707E707E177FA2EF3F8018C0171F18E0170F18F0A3EF07F8A418FCAC18F8A4EF0F
+F0A218E0A2171F18C0EF3F80A2EF7F0017FE4C5A4C5AEE0FF0EE3FE0486DEBFF80B8C7FC
+16F816C036397DB83F>I<B812FEA3000190388000076C90C8FC173F838383A383A31880
+170116C0A394C7FCA31501A21503150F91B5FCA3EC000F15031501A21500A21860A318E0
+93C712C0A41701A3EF0380A21707A2170F173F177F486D903807FF00B9FCA333397EB838
+>I<B812F8A30001903880001F6C90C71201EE00FC177C173C171CA2170CA4170E1706A2
+ED0180A21700A41503A21507151F91B5FCA3EC001F15071503A21501A692C8FCAD4813C0
+B612C0A32F397DB836>I<B648B512FEA30001902680000313006C90C76C5AB3A491B6FC
+A391C71201B3A6486D497EB648B512FEA337397DB83E>72 D<B612C0A3C6EBC0006D5AB3
+B3AD497EB612C0A31A397EB81E>I<013FB512E0A39039001FFC00EC07F8B3B3A3123FEA
+7F80EAFFC0A44A5A1380D87F005B0070131F6C5C6C495A6C49C7FC380781FC3801FFF038
+007F80233B7DB82B>I<B612E0A3000101C0C8FC6C90C9FCB3AD1718A517381730A31770
+A317F0A216011603160FEE1FE0486D13FFB8FCA32D397DB834>76
+D<B5933807FFF86E5DA20001F0FC002600DFC0ED1BF8A2D9CFE01533A3D9C7F01563A3D9
+C3F815C3A2D9C1FCEC0183A3D9C0FEEC0303A2027F1406A36E6C130CA36E6C1318A26E6C
+1330A36E6C1360A26E6C13C0A3913901FC0180A3913900FE0300A2ED7F06A3ED3F8CA2ED
+1FD8A3ED0FF0A3486C6D5A487ED80FFC6D48497EB500C00203B512F8A2ED018045397DB8
+4C>I<B5913807FFFE8080C69238007FE06EEC1F80D9DFF0EC0F001706EBCFF8EBC7FCA2
+EBC3FEEBC1FFA201C07F6E7EA26E7E6E7E81140F6E7E8114036E7E168080ED7FC016E015
+3FED1FF0ED0FF8A2ED07FCED03FEA2ED01FF6F1386A2EE7FC6EE3FE6A2EE1FF6EE0FFEA2
+16071603A216011600A2177E486C153E487ED80FFC151EB500C0140EA2170637397DB83E
+>I<EC03FF021F13E09138FE01FC903901F8007ED907E0EB1F8049486D7ED93F80EB07F0
+49C76C7E01FE6E7E48486E7E49157E0003167F4848ED3F80A24848ED1FC0A2001F17E049
+150F003F17F0A3007F17F8491507A300FF17FCAC007F17F86D150FA3003F17F0A26C6CED
+1FE0A36C6CED3FC0000717806D157F000317006C6C15FEA26C6C4A5A017F4A5A6D6C495A
+6D6C495AD907E0EB1F80D903F8017FC7FC903900FE01FC91381FFFE0020390C8FC363D7B
+BA41>I<B712C016FC16FF0001D9800013C06C90C7EA1FE0707EEE03F883707EA2707EA2
+1880A71800A24C5AA24C5A5FEE0FF04C5AEEFF8091B548C7FC16F091CAFCB3A5487FB6FC
+A331397EB838>I<EC03FF021F13E09138FE01FC903901F8007ED907E0EB1F8049486D7E
+D93F80EB07F049C76C7E01FE6E7E48486E7EA24848157F0007178049153F000F17C04915
+1F001F17E0A24848ED0FF0A3007F17F8A2491507A200FF17FCAC007F17F8A26D150FA200
+3F17F0A26C6CED1FE0A36C6CED3FC00007027C14804AB4FC3C03F80383807F003B01FC07
+01C0FEEC0E002600FE0CEBE1FC017FEC63F8D93F8CEB77F0D91FCCEB3FE0D907EE14806D
+B449C7FC0100D981FC130CEC1FFF0203131C91C7001E131C161F183CEF807CEFC0F8EE0F
+FFA318F08218E07013C07013809338007E00364B7BBA41>I<B612FEEDFFE016F8000190
+388007FE6C90C76C7EEE3FC0707E707E707EA2707EA283A65FA24C5AA24C5A4C5AEE3F80
+04FFC8FCED07FC91B512E05E9138000FF0ED03F8ED00FE82707E707EA2161F83A583A6F0
+0180A217F8160F1803486D01071400B66D6C5A04011306933800FE0ECAEA3FFCEF07F039
+3B7DB83D>I<D90FF813C090383FFE0190B512813903F807E33907E000F74848137F4848
+133F48C7121F003E140F007E1407A2007C140312FC1501A36C1400A37E6D14006C7E7F13
+F86CB47E6C13F8ECFF806C14E06C14F86C14FEC680013F1480010714C0EB007F020713E0
+EC007FED3FF0151F150FED07F8A200C01403A21501A37EA216F07E15036C15E06C14076C
+15C06C140F6DEB1F80D8FBF0EB3F00D8F0FE13FE39E03FFFF8010F13E0D8C00190C7FC25
+3D7CBA2E>I<003FB812E0A3D9C003EB001F273E0001FE130348EE01F000781600007017
+70A300601730A400E01738481718A4C71600B3B0913807FF80011FB612E0A335397DB83C
+>I<B6903807FFFEA3000101809038007FE06C90C8EA1F80EF0F001706B3B2170E6D150C
+80171C133F17186D6C14385F6D6C14F06D6C5C6D6C495A6D6CEB07806D6C49C7FC91387F
+807E91381FFFF8020713E09138007F80373B7DB83E>I<B500FC91387FFF80A300030180
+91380FFC006C90C8EA07E0715A6C705A6E1403017F93C7FCA280013F1506A26E140E011F
+150C80010F5DA28001075DA26E147001031560A26D6C5CA2806D4A5AA2ED8003027F91C8
+FCA291383FC006A215E0021F5BA2EDF01C020F1318A26E6C5AA215FC02035BA2EDFEE002
+015BA26E6C5AA36FC9FCA3153EA2151CA3393B7EB83E>I<B5D8FC07B5D8F001B5FCA300
+07902780001FFEC7EA1FF86C48C7D80FF8EC07E000010307ED03C01B807F6C6F6C1500A2
+6E5F017F6E6C1406A280013F4A6C5CA280011F4A6D5BEE067FA26D6C010E6D5BEE0C3FA2
+6D6C011C6D5BEE181FA26D6C6F5BEE300FA26D6C6F485AEE6007A26D6C4CC7FC9338C003
+FCA203805D913B7F818001FE06A203C1150EDA3FC3C7EAFF0CA203E3151CDA1FE6EC7F98
+A215F6DA0FFCEC3FF0A302075E4B141FA202035E4B140FA202015E4B1407A2020093C8FC
+4B80503B7EB855>I<B500FE91383FFFE0A3000301E0913807FE00C649EC03F0017F6F5A
+606D6C5D6D6C140395C7FC6D6C1406A26D6C5C6D6C141C17186D6C143817306D6D5B6E6C
+13E05F91383FE0015F91381FF003DA0FF890C8FC1606913807FC0E160C913803FE1C9138
+01FF185E6E13B016E0157F6F5AB3A24B7E023FB512C0A33B397FB83E>89
+D<003FB7FCA39039FC0001FE01C0130349495A003EC7FC003C4A5A5E0038141F00784A5A
+12704B5A5E006014FF4A90C7FCA24A5A5DC712074A5AA24A5A5D143F4A5AA24A5A92C8FC
+5B495AA2495A5C130F4948EB0180A2495A5C137F495A16034890C7FC5B1203485AEE0700
+485A495C001F5D48485C5E4848495A49130FB8FCA329397BB833>I<007FB81280B912C0
+A26C17803204797041>95 D<EB1FE0EBFFFC3803E03F3907000F80390F8007E0486C6C7E
+13E06E7EA26E7E6C5A6C5AC8FCA4147FEB07FFEB3FE0EBFE00EA03F8EA0FF0EA1FC0123F
+485A90C7FC160C12FEA31401A26C13036CEB077C903980063E18383FC01E3A0FE0781FF0
+3A03FFF00FE03A007F8007C026277DA52A>97 D<EA03F012FFA3120F1203B0EC1FE0EC7F
+F89038F1E03E9039F3801F809039F7000FC001FEEB07E049EB03F049EB01F85BED00FCA2
+16FEA2167E167FAA167E16FEA216FC15016D14F8ED03F07F01EEEB07E001C6EB0FC09039
+C7801F00903881E07E903800FFF8C7EA1FC0283B7EB92E>I<EB03FC90381FFF8090387E
+03E03901F80070484813F83907E001FC380FC003A2EA1F80123F90380001F848EB00F015
+00A2127E12FEAA127E127FA26C14067F001F140E6D130C000F141C6C6C13386C6C13706C
+6C13E039007C07C090381FFF00EB07F81F277DA525>I<ED0FC0EC03FFA3EC003F150FB0
+EB03F8EB1FFF90387E078F9038F801EF3903F0007F4848133F4848131FA24848130F123F
+90C7FC5AA2127E12FEAA127E127FA27EA26C6C131FA26C6C133F6C6C137F6C6CEBEFF03A
+01F801CFFF39007C078F90381FFE0FD907F813C0283B7DB92E>I<EB07F8EB1FFF90387C
+0FC03901F803E03903F001F0D807E013F8380FC0004848137CA248C7127E153E5A153F12
+7E12FEA3B7FCA248C8FCA5127EA2127FA26C14037F001F14076C6C13060007140E6D131C
+D801F013386C6C137090387E03E090381FFF80903803FC0020277EA525>I<147E903803
+FF8090380FC1E0EB1F8790383F0FF0137EA213FCA23901F803C091C7FCADB512FCA3D801
+F8C7FCB3AB487E387FFFF8A31C3B7FBA19>I<ED03F090390FF00FF890393FFC3C3C9039
+F81F707C3901F00FE03903E007C03A07C003E010000FECF000A248486C7EA86C6C485AA2
+00075C6C6C485A6D485A6D48C7FC38073FFC38060FF0000EC9FCA4120FA213C06CB512C0
+15F86C14FE6CECFF804815C03A0F80007FE048C7EA0FF0003E140348140116F8481400A5
+6C1401007C15F06CEC03E0003F1407D80F80EB0F80D807E0EB3F003901FC01FC39007FFF
+F0010790C7FC26387EA52A>I<EA03F012FFA3120F1203B0EC0FF0EC3FFCECF03F9039F1
+C01F809039F3800FC0EBF70013FE496D7EA25BA35BB3A3486C497EB500C1B51280A3293A
+7EB92E>I<EA0380EA0FE0487EA56C5AEA0380C8FCAAEA03F012FFA312071203B3AA487E
+B512C0A312387EB717>I<EB01C0EB07F0EB0FF8A5EB07F0EB01C090C7FCAAEB01F813FF
+A313071301B3B3A2123C127E00FF13F01303A214E038FE07C0127C383C0F00EA0FFEEA03
+F8154984B719>I<EA03F012FFA3120F1203B1913801FFFCA39138007FC01600157C1570
+5D4A5A4A5A4AC7FC141E1438147814FC13F1EBF3FEEBF73F01FE7FEBF81F496C7E811407
+6E7E6E7E811400157E157F811680ED1FC0486CEB3FF0B500C0B5FCA3283A7EB92C>I<EA
+03F012FFA3120F1203B3B3AD487EB512C0A3123A7EB917>I<2703F00FF0EB1FE000FFD9
+3FFCEB7FF8913AF03F01E07E903BF1C01F83803F3D0FF3800FC7001F802603F70013CE01
+FE14DC49D907F8EB0FC0A2495CA3495CB3A3486C496CEB1FE0B500C1B50083B5FCA34025
+7EA445>I<3903F00FF000FFEB3FFCECF03F9039F1C01F803A0FF3800FC03803F70013FE
+496D7EA25BA35BB3A3486C497EB500C1B51280A329257EA42E>I<EB03FE90380FFF8090
+383E03E09038F800F84848137C48487F48487F4848EB0F80001F15C090C712074815E0A2
+007EEC03F0A400FE15F8A9007E15F0A2007F14076C15E0A26C6CEB0FC0000F15806D131F
+6C6CEB3F006C6C137EC66C13F890387E03F090381FFFC0D903FEC7FC25277EA52A>I<39
+03F01FE000FFEB7FF89038F1E07E9039F3801F803A07F7000FC0D803FEEB07E049EB03F0
+4914F849130116FC150016FEA3167FAA16FEA3ED01FCA26DEB03F816F06D13076DEB0FE0
+01F614C09039F7803F009038F1E07E9038F0FFF8EC1FC091C8FCAB487EB512C0A328357E
+A42E>I<3807E01F00FFEB7FC09038E1E3E09038E387F0380FE707EA03E613EE9038EC03
+E09038FC0080491300A45BB3A2487EB512F0A31C257EA421>114
+D<EBFF03000313E7380F80FF381E003F487F487F00707F12F0A2807EA27EB490C7FCEA7F
+E013FF6C13E06C13F86C7F00037FC67F01071380EB007F141F00C0EB0FC01407A26C1303
+A37E15806C13077EEC0F00B4131E38F3C07C38E1FFF038C03F801A277DA521>I<1318A5
+1338A31378A313F8120112031207001FB5FCB6FCA2D801F8C7FCB215C0A93800FC011580
+EB7C03017E13006D5AEB0FFEEB01F81A347FB220>I<D803F0EB07E000FFEB01FFA3000F
+EB001F00031407B3A4150FA3151F12016D133F0000EC77F86D9038E7FF8090383F03C790
+381FFF87903A03FC07E00029267EA42E>I<B538803FFEA33A0FF8000FF06C48EB07E000
+03EC03C06D148000011500A26C6C1306A26D130E017E130CA26D5BA2EC8038011F1330A2
+6D6C5AA214E001075BA2903803F180A3D901FBC7FCA214FF6D5AA2147CA31438A227257E
+A32C>I<B53A1FFFE03FFEA3260FF8009038000FF86C48017EEB03E018C00003023EEB01
+80A26C6C013FEB0300A36C6CEC8006156FA2017E9038EFC00C15C7171CD93F01EBE01815
+830281EBF038D91F831430150102C3EBF87090260FC6001360A2D907E66D5A02EC137CA2
+D903FCEB7F804A133FA2010192C7FC4A7FA20100141E4A130E0260130C37257EA33C>I<
+B538807FFFA33A03FE003FF00001EC1F80000092C7FC017E131C6D13186D6C5AECC07001
+0F5B6D6C5AECF180EB03FB6DB4C8FC6D5AA2147F804A7E8114CF903801C7E090380383F0
+90380703F8EB0601496C7E011C137E49137F01787F496D7E486C80000FEC3FF0D8FFFE90
+B51280A329247FA32C>I<B538803FFEA33A0FF8000FF06C48EB07C00003EC03806C7E16
+007F00001406A2017E5BA2137F6D5BA26D6C5AA2ECC070010F1360A26D6C5AA214F10103
+5BA2D901FBC7FCA214FF6D5AA2147CA31438A21430A214701460A25CA2EA7C0100FE5B13
+0391C8FC1306EAFC0EEA701C6C5AEA1FF0EA0FC027357EA32C>I<003FB512FCA2EB8003
+D83E0013F8003CEB07F00038EB0FE012300070EB1FC0EC3F800060137F150014FE495AA2
+C6485A495AA2495A495A495AA290387F000613FEA2485A485A0007140E5B4848130C4848
+131CA24848133C48C7127C48EB03FC90B5FCA21F247EA325>I E
+%EndDVIPSBitmapFont
+%DVIPSBitmapFont: Fi ecss2074 20.74 19
+/Fi 19 119 df<EF7FFCA34D7EA34C7FA34C805F5F040780187FDC0FF87FA2183FDC1FF0
+7FA2181F043F8017E0180F047F8017C004FF6D7E1780A24B6E7E1700A24B6E7F5EA20307
+6E7F5E030F82197F5E031F82193F5E033F6F7EA25E037F6F7EA25E03FF6F7EA24A498185
+93C8FC4A84855D020784855D020F717EA24A48831A3FA24A48831A1F5D027F841A0F5D02
+FF841A074990BAFCA34986A34986A202FCCBFC010F861B7F5C011F861B3F4948851B1FA2
+4948851B0FA24948851B075C4887874890CC148087A248481BC087A248481BE01C7F5B00
+1F1CF01C3F48481BF8A21C1F48481BFC1C0FA248481BFE1C075B5F757BF46A>65
+D<BB12F8A801C0CCFCB3B3A890BA1280A801C0CCFCB3B3AC90BA12FEA9477570F45F>69
+D<D8FFC0F1FFF05013E05013C0501380501300505A505A63505A505A4F5B4F5B4F90C7FC
+4F5A4F5A4F5A4F5A19FF4E5B4E5B4E5B4E90C8FC4E5A614E5A4E5A4E5A4D5B4D5B4D90C9
+FC4D5A4D5A4D5A177F4D5A4C5B4C5B4C5B4C90CAFC4C5A5F4C5A4C5A4C5A4B5B4B5B5D5D
+4B7F5D4B7F92B57E5C4A804AEB9FFC4A131F4B6C7E4A486C7EEC3FF84A486C7FDAFFE080
+01C1497E01C3496C7F01C790C7FCD9CFFE6E7ED9DFFC6E7E13FF4A6E7E4A6E7E5C4A6E7E
+4A6E7F91C8FC496F7F496F7F5B49707E498349163F727EA2727E727EA2727F727FA2727F
+737EA2737E86191F737EA2737E737FA2737F737FA2747E747EA2747E747EA2747E1C8086
+7413C0A27413E0F37FF0A2F33FF8F31FFC567570F46E>75 D<EAFFC0B3B3B3B3B3B390B9
+12FCA83E7570F456>I<D8FFFCF33FFFA36D63A26D98B5FCA36E61A201BF1BFD6E190301
+9F1BF96E1907A3D98FF0F10FF1A3D987F8F11FE1A26E193F01831BC1A26E197F01811B81
+A26E19FF01801B016F5FA2027F19FE6F1703023F19FCA26F1707021F19F8A26F170F020F
+19F06F171FA2020719E06F173FA2020319C06F177F020119806F17FFA26E1900705DA203
+7F5F701503A26F6C4B5AA2031F5F70150FA2030F5F70151FA203075F70153FA26F6C4B5A
+A203015F7015FFA26F94C7FC715BA2047F5D711303043F5D711307A2041F5D71130FA204
+0F5D71131FA204075D71133F04035DA271137F04015DA27113FF7092C8FC1881057F5BA2
+18C3053F5BA394381FE7F8A2050F5B18FFA2715BA3715BA2715BA394CBFCA268756FF48B
+>I<EF1FFE0403B512F0041F14FE047F6E7E4BB712E0030716F8031F16FE037F707E92B5
+D8F003804A91C7003F7F020701F8020713F84A01E002017F4A01806E6C7E4A48C9EA1FFF
+4A48707F4A48707F4949707F03C016004949717E4990CB6C7E49864A181F4948727E4948
+727EA24948727F4948727FA24849727FA24849737EA291CD123F4888491A1F000F88A249
+1A0F001F88A2491A07003F88A34986A2007F1D80A44986A200FF1DC0B06D62007F1D80A5
+6D62A2003F1D00A26D62A2001F64A26D1A1F000F64A26D1A3F6C646E197FA26C6D4F5AA2
+6C6D4E5BA26C6D4E5BA26D6C4E5B6D6C4E90C7FCA26D6C4E5A6E183F6D6D4D5A6D626D6D
+4D5A6F5E6D6D4C5B6D01FC040F5B6E6C4C5B6E6C4C90C8FC6E01C0EDFFFE6E6D4A5B6E01
+FC020F5B020101FF023F13E06EDAF003B55A6F90B75A031F4CC9FC030716F86F5EDB007F
+1580041F4ACAFC040314F09326001FFECBFC627977F675>79 D<923801FFF8033FEBFFE0
+4AB612FC0207EDFF80021F16E0027F16F891B812FE0103EFFF80499026FE000F14C04901
+E0EB007F490180140F4948C800031380D97FF815004948167F02C0161F4849160F4890CA
+120749EF0100000795C7FC5B485AA2485AA35B123FA87FA2121F7FA27F120F7F7F6C7F80
+6C7F6C7F14FC6C13FF6D13C06D13F86DEBFF806D14F86D14FF6D15F06D15FF6D6C15E06E
+15F8020F15FE020381DA007F15C0030781030081040F80040080050F7F05017F716C1380
+061F13C018077213E07213F084F17FF8193FF11FFCA2190FF107FEA319031AFFA285A91A
+FE1903A3F107FCA20020180F007019F8007C181F007E19F0007F183F01C0EF7FE06DEFFF
+C0D8FFF85E01FE4C13806D6C030F13006C01E04B5A001F01FCED7FFC6CD9FF80903803FF
+F8000302FC013F5BC691B75A6D5F010F94C7FC010316FCD9007F15F0020F15C002014AC8
+FCDA000713E0487979F659>83 D<ED3FFF4AB512F8020F14FF023F15C04A15F049B712FC
+4916FF49178049EBE0004990C7120FD93FFC02011300D97FF06E7E4948151F0280814890
+C912034894C7FC5B485A5B120F5B121F5B123F5BA3485AA548CCFCAD6C7EA47F123FA27F
+121F7FA26C7EA26C6C17806D1601000317036C6C160F6E151F6C01E0ED7FC06D6CEC01FF
+D93FFC14076DB4143F6DD9E003B512806D90B6EAFE006D5E6D16F06D6C5D6E1580020F02
+FCC7FC020114E09126003FFCC8FC3A4C78CA47>99 D<F07FE0B3B3AD4AB47E020F13F802
+3F13FE91B612804915E0010715F04915FC4915FE499038F007FF49D9800013FF02FCC712
+3F4948804801E0804849804A804890C87E4981485A49167F121F5BA2485AA25B127FA25B
+A312FF90CAFCAD7F127FA47F123FA27FA26C7E18FF6C7E6D5D00075E7F6C6C5D6E5C6C6D
+5C02F05C6C6DECFF7F6DB4EB03FE6D9038E01FFC6D90B512F86D15F06D15E06D15806D15
+006D6C13FC021F13E0020390C9FC3B7C78FA52>I<ED7FE0913803FFFE021F6D7E4A14E0
+91B612F84981010781498149D9C01F7F90273FFE00037FD97FF8130002E06E7E4948EC1F
+F04849140F4890C86C7E5B48486F7E491501120F496F7E121F49167EA24848167F845B12
+7FA290CAFCF01F80A2BAFCA748CCFCA47EA37EA27FA36C7EA36C7EA26C7E7F12077F6C6C
+17806D16016C6D15076C6D150F6EED3FC0D97FF815FF6D6C14036DB46C131F6DD9F003B5
+12806D90B712006D16FC01005E6E15E0021F1580020702FCC7FC020114E09126001FFEC8
+FC3A4C79CA47>I<EE3FFF4BB512F01507151F5D5D4AB6FC5CEEE0034A90C71210DA0FFC
+14004A5A5D4A5A5D147F5D14FFA292C9FC5BA45BB3A9B812C0A8D8000390C9FCB3B3B3AB
+347C7DFB31>I<EAFFC0B3B3B3B3B3B3AF0A7B73FA25>108 D<ED1FF826FFC001B57E0207
+14E0021F14F8027F8091B67E01C18101C316809038C7FE00D9CFF0011F13C0D9DFE00107
+13E0D9FF80130191C8FC18F049157F5B173F4916F8A249151FA35BA45BB3B3AC354A72C9
+52>110 D<ED1FFC92B57E020714F0021F14FC027F14FF91B77E010316E0498249D9F007
+7F4990C76C7ED93FFCEC1FFED97FF0EC07FF4A8049486E7F48496E7F4890C96C7E49163F
+4848707E49160F000F844916074848707EA34848707EA2491600007F84A490CB7E481980
+AC6D17FF007F1900A36D5EA2003F606D1603A2001F606D1607A26C6C4C5A6D161F000760
+6D163F6C6C4C5A6C6D4B5A6E5C6C6D4A5BD97FF8020F90C7FC6D6C4A5A6DB46CEBFFFC6D
+D9F0075B6D90B65A6D5E010016806E92C8FC021F14FC020714F0020114C09126001FFCC9
+FC414C79CA50>I<ED0FFCD8FFC090B57E020714E0021F80027F14FC91B67E01C38101C7
+829026CFFE0080D9DFF0131FD9FFC001077F4A01017F49C87F49157F496F7E171F496F7E
+491507717E5B83198083A2187F19C0A2183FA319E0181FAC183FA219C0A3187FA2198018
+FFA24D1300A25F6D4B5AA26D4B5A6D151F4D5A6D4B5A6DEC01FF6D4A5B6E010F5BD9DFE0
+013F5B9026CFFC01B5C7FC01C7B65A01C35D01C15D01C05D023F14C0020F5C020301FCC8
+FC9138003FE092CAFCB3AE3B6B72C952>I<ED01F8B46C131F157FEC01FF1407141F5C5C
+9138FFFE00018113F0018313C0018790C7FCEB8FFCEB9FF85CEBBFC0A2EBFF8091C8FC5B
+A25B5BA35BA25BA45BB3B3A7254A72C936>114 D<91380FFFC091B512FE0107ECFFC001
+1F15F8017F15FE90B812804817C05A489038F0003F4890C70003138049EC007FD81FF815
+1F491507003F16014992C7FCA2485AA77FA26C7E7F7F6CB4FC6C13C014F86CEBFF806C14
+FC6CECFFE06C15FC6D14FF6D15C0010F81010315F8010081020F80DA007F7F03071480DB
+003F13C0160F040313E01600EF7FF0173FA2EF1FF8A2170FA7EF1FF0A20070163F127C00
+7FEE7FE001C015FF01F0020313C0B5020F138002F0137F91B712006C5E001F5E000716F0
+C65E011F1580010302FCC7FCD9000F13C0354C7CCA3D>I<D8FFC0ED1FF8B3B3B0173FA3
+177FA217FFA26D5C5E007F5D6D5C6D143F01FEECFFDF273FFF8007139F91B6121F6C15FC
+6C15F86C15E06C15806CECFE006C6C13F0D90FFEC9FC354A72C852>117
+D<D8FFC0EF3FF0007F19E07F003FF07FC0A27F001FF0FF80A26D5E000F19007F00074D5A
+A26D16070003607F6C4D5AA26E151F6C6080017F4C5AA280013F4C5AA26E15FF011F5F80
+010F4B90C7FCA26E5C01075E8001034B5AA2806D4B5AA26D6D495AA281027F4A5AA28102
+3F4A5AA26E6C495AA281020F4990C8FCA2DA07FC5B1603A26E6C485AA2DA01FF5B160FA2
+6EEB8FF0169FA292387FDFE016FF6F5BA36F5BA26F90C9FCA344497EC849>I
+E
+%EndDVIPSBitmapFont
+end
+%%EndProlog
+%%BeginSetup
+%%Feature: *Resolution 600dpi
+TeXDict begin
+%%BeginPaperSize: Letter
+letter
+%%EndPaperSize
+
+%%EndSetup
+%%Page: 1 1
+1 0 bop 0 201 a Fi(SALOME)54 b(Kernel)g(resources)f(fo)l(r)g(develop)t
+(er)p 0 315 3900 24 v 0 428 a Fh(An)n(toine)28 b(Y)-7
+b(essa)n(y)n(an,)25 b(P)n(aul)j(Rascle)1735 b(V)-7 b(ersion)27
+b(0.1)g(Jan)n(uary)e(16,)i(2002)0 734 y Fg(This)33 b(do)r(cument)g
+(describ)r(es)g(the)g(development)f(environment)g(fo)n(r)i(C++)e(and)h
+(Python.)53 b(Mak)n(e\034les)32 b(generation)g(and)h(usage)0
+848 y(a)n(re)40 b(intro)r(duced)f(in)h(another)g(do)r(cument:)61
+b("using)38 b(the)i(SALOME)g(con\034guration)f(and)h(building)e(system)
+i(environment".)0 961 y(Development)33 b(environment)h(is)g(intended)g
+(here)g(as:)51 b(trace)34 b(and)g(debug)g(macros)g(usage;)j(SALOME)d
+(exceptions)f(usage,)i(in)0 1075 y(C++)20 b(and)h(Python;)i(user)e
+(CORBA)h(exceptions)e(usage,)i(in)f(C++)f(and)h(Python,)h(with)f(and)f
+(without)g(Graphical)h(User)h(Interface;)0 1188 y(some)27
+b(general)g(purp)r(ose)g(services)g(such)g(as)h(singleton,)e(used)h(fo)
+n(r)g(CORBA)h(connection)e(and)i(disconnection.)0 1527
+y Ff(Con)l(ten)l(ts)0 1766 y Fe(1)77 b(T)-8 b(race)33
+b(and)f(debug)f(Utilities)2662 b(1)125 1923 y Fh(1.1)83
+b(T)-7 b(w)n(o)27 b(mo)r(des:)37 b(debug)27 b(and)h(release)74
+b(.)41 b(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)
+f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h
+(.)134 b(2)125 2079 y(1.2)83 b(C++)27 b(Macros)f(for)h(trace)g(and)g
+(debug)36 b(.)42 b(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f
+(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)
+f(.)h(.)134 b(2)315 2236 y(1.2.1)94 b(Macros)26 b(de\034ned)i(in)g
+(debug)f(and)g(release)g(mo)r(des)60 b(.)42 b(.)f(.)h(.)f(.)h(.)f(.)h
+(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)134
+b(2)315 2392 y(1.2.2)94 b(Macros)26 b(de\034ned)i(only)f(in)h(debug)f
+(mo)r(de)83 b(.)41 b(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)
+h(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)134
+b(3)0 2632 y Fe(2)77 b(Exceptions)3272 b(5)125 2788 y
+Fh(2.1)83 b(C++)27 b(exceptions:)36 b(class)27 b(SALOME_Exception)74
+b(.)42 b(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)
+h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)134 b(5)315 2945
+y(2.1.1)94 b(de\034nition)67 b(.)42 b(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f
+(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)
+g(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)134
+b(5)315 3101 y(2.1.2)94 b(usage)79 b(.)42 b(.)f(.)h(.)f(.)h(.)g(.)f(.)h
+(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)
+h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f
+(.)h(.)134 b(5)125 3257 y(2.2)83 b(CORBA)28 b(exceptions)f(.)41
+b(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h
+(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)
+f(.)h(.)f(.)h(.)f(.)h(.)134 b(6)315 3414 y(2.2.1)94 b(de\034nition)67
+b(.)42 b(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)
+h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)f
+(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)134 b(6)315 3570 y(2.2.2)94
+b(usage)79 b(.)42 b(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h
+(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)
+f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)134
+b(7)0 3810 y Fe(3)77 b(Miscellaneous)29 b(to)s(ols)2919
+b(7)125 3966 y Fh(3.1)83 b(Singleton)c(.)42 b(.)f(.)h(.)f(.)h(.)f(.)h
+(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)
+f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h
+(.)f(.)h(.)f(.)h(.)134 b(7)315 4123 y(3.1.1)94 b(De\034nition)50
+b(.)42 b(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)
+h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)f
+(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)134 b(7)315 4279 y(3.1.2)94
+b(Usage)63 b(.)42 b(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h
+(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)
+f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)134
+b(8)315 4436 y(3.1.3)94 b(Design)27 b(description)62
+b(.)42 b(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)
+h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f(.)h(.)f(.)h(.)f(.)h(.)g(.)f(.)h(.)f
+(.)h(.)f(.)h(.)134 b(8)0 4774 y Ff(1)d(T)-11 b(race)45
+b(and)e(debug)h(Utilities)0 5013 y Fh(During)24 b(the)h(dev)n(elopmen)n
+(t)e(pro)r(cess,)h(an)g(execution)g(log)f(is)h(useful)h(to)f(iden)n
+(tify)h(problems.)35 b(This)24 b(log)g(con)n(tains)f(messages,)0
+5126 y(v)-5 b(ariables)31 b(v)-5 b(alues,)33 b(source)e(\034les)h
+(names)g(and)g(line)h(n)n(um)n(b)r(ers.)51 b(It)32 b(is)g(recommended)g
+(to)g(v)n(erify)g(assertions)e(on)i(v)-5 b(ariables)0
+5240 y(v)g(alues)27 b(and)h(if)g(necessary)-7 b(,)26
+b(to)h(stop)g(the)h(execution)f(at)h(debug)f(time,)h(in)g(order)e(to)i
+(v)-5 b(alidate)27 b(all)g(parts)g(of)h(co)r(de.)p eop
+%%Page: 2 2
+2 1 bop 0 -167 3900 5 v 0 -200 a Fe(1.)73 b(T)-8 b(race)34
+b(and)e(debug)f(Utilities)2644 b Fh(2)0 162 y Fd(1.1)112
+b(T)-9 b(w)m(o)37 b(mo)s(des:)50 b(debug)38 b(and)h(release)0
+372 y Fh(The)27 b(goal)e(of)h(debug)h(mo)r(de)f(is)h(to)f(c)n(hec)n(k)g
+(as)g(man)n(y)g(features)g(as)f(p)r(ossible)i(during)f(the)h(early)e
+(stages)g(of)i(the)g(dev)n(elopmen)n(t)0 485 y(pro)r(cess.)46
+b(The)31 b(purp)r(ose)g(of)g(the)g(utilities)h(pro)n(vided)e(in)h
+(SALOME)h(is)f(to)g(help)g(the)g(dev)n(elop)r(er)f(to)h(add)g(detailed)
+g(traces)0 599 y(and)c(c)n(hec)n(k)g(v)-5 b(ariables)26
+b(v)-5 b(alues,)27 b(without)h(writing)g(a)f(lot)g(of)h(co)r(de.)0
+755 y(When)33 b(the)g(co)r(de)f(is)h(assumed)e(to)i(b)r(e)g(v)-5
+b(alid,)33 b(the)g(release)e(mo)r(de)i(optimizes)f(execution,)i(in)e
+(terms)g(of)h(sp)r(eed,)h(memory)-7 b(,)0 869 y(and)27
+b(displa)n(y)g(only)g(user)g(lev)n(el)g(messages.)0 1025
+y(But,)22 b(some)d(informations)f(m)n(ust)i(alw)n(a)n(ys)e(b)r(e)i
+(displa)n(y)n(ed)e(in)i(b)r(oth)g(mo)r(des:)33 b(esp)r(ecially)19
+b(messages)f(concerning)g(en)n(vironmen)n(t)0 1139 y(or)31
+b(in)n(ternal)g(errors,)g(with)h(v)n(ersion)e(iden)n(ti\034cation.)49
+b(When)32 b(an)g(end)g(user)f(is)g(confron)n(ted)g(to)h(suc)n(h)f(a)h
+(message,)f(he)h(ma)n(y)0 1253 y(refer)23 b(to)h(a)g(con\034guration)e
+(do)r(cumen)n(tation)i(or)f(send)h(the)g(message)f(to)g(the)i(p)r
+(eople)f(in)g(c)n(harge)e(of)i(SALOME)h(installation,)0
+1366 y(or)i(to)g(the)h(dev)n(elopmen)n(t)f(team,)h(follo)n(wing)e(the)i
+(kind)g(of)f(error.)0 1658 y Fd(1.2)112 b(C++)38 b(Macros)g(for)f
+(trace)g(and)i(debug)0 1868 y Fh(SALOME)23 b(pro)n(vides)d(C++)h
+(macros)g(for)g(trace)h(and)f(debug.)35 b(These)22 b(macros)e(are)i(in)
+g Fc(SALOME/src/utils)o(/u)o(ti)o(lit)o(ie)o(s.)o(h)0
+1981 y Fh(and)30 b(this)h(\034le)g(m)n(ust)g(b)r(e)g(included)g(in)g
+(C++)f(source.)45 b(Some)30 b(macros)f(are)h(activ)-5
+b(ated)30 b(only)g(in)h(debug)g(mo)r(de,)g(others)f(are)0
+2095 y(alw)n(a)n(ys)c(activ)-5 b(ated.)37 b(T)-7 b(o)27
+b(activ)-5 b(ate)28 b(the)g(debug)f(mo)r(de,)h Fc(_DEBUG_)d
+Fh(m)n(ust)j(b)r(e)g(de\034ned,)g(whic)n(h)g(is)g(the)g(case)f(when)h
+(SALOME)0 2208 y(Mak)n(e\034les)k(are)g(generated)f(from)i
+(con\034gure,)g(without)g(options.)53 b(When)33 b Fc(_DEBUG_)d
+Fh(is)j(unde\034ned)g(\(release)f(mo)r(de\),)j(the)0
+2322 y(debug)c(mo)r(de)h(macros)d(are)i(de\034ned)h(empt)n(y)f(\(they)h
+(do)f(nothing\).)48 b(So,)32 b(when)g(switc)n(hing)f(from)g(debug)g(to)
+g(release,)g(it)h(is)0 2436 y(p)r(ossible)27 b(\(and)h(recommended\))f
+(to)g(let)h(the)g(macro)f(calls)f(unc)n(hanged)h(in)h(the)g(source.)0
+2592 y(All)23 b(the)h(macros)d(writing)i(on)f(the)i(standard)e(output)h
+(start)g(b)n(y)f(\035ushing)h(the)g(standard)f(error.)34
+b(A)n(t)23 b(the)g(end)h(of)f(the)g(displa)n(y)0 2706
+y(those)k(macros)f(\035ush)i(the)g(standard)e(output.)0
+2862 y(T)-7 b(w)n(o)27 b(informations)f(are)h(systematically)f(added)i
+(in)g(fron)n(t)f(of)g(the)h(information)f(displa)n(y)n(ed:)125
+3102 y Fb(\017)41 b Fh(the)28 b(name)f(of)g(the)h(source)f(\034le)g(in)
+h(whic)n(h)g(the)g(macros)e(is)h(set;)125 3282 y Fb(\017)41
+b Fh(the)28 b(line)f(n)n(um)n(b)r(er)h(of)f(the)h(source)e(\034le)i(at)
+g(whic)n(h)f(the)h(macro)e(is)i(set.)0 3554 y Fe(1.2.1)94
+b(Macros)32 b(de\034ned)f(in)g(debug)h(and)g(release)f(mo)s(des)0
+3764 y(INF)m(OS_COMPILA)-8 b(TION)84 b Fh(The)30 b(C++)f(macro)g
+Fc(INFOS_COMPILATIO)o(N)24 b Fh(writes)30 b(on)g(the)g(standard)f
+(output)i(infor-)0 3878 y(mations)c(ab)r(out)h(the)f(compiling)h(pro)r
+(cess:)125 4117 y Fb(\017)41 b Fh(the)28 b(name)f(of)g(the)h(compiler)f
+(:)37 b Fc(g++,)42 b(KCC,)g(CC,)g(pgCC)p Fh(;)125 4297
+y Fb(\017)f Fh(the)28 b(date)f(and)g(the)h(time)g(of)g(the)g(compiling)
+f(pro)r(cessing)f(pro)r(cess.)0 4537 y(This)35 b(macro)f
+Fc(INFOS_COMPILATIO)o(N)29 b Fh(do)r(es)35 b(not)g(ha)n(v)n(e)f(an)n(y)
+g(argumen)n(t.)58 b(Moreo)n(v)n(er,)35 b(it)g(is)g(de\034ned)h(in)f(b)r
+(oth)h(compiling)0 4650 y(mo)r(de)28 b(:)37 b Fc(_DEBUG_)24
+b Fh(and)k Fc(_RELEASE_)p Fh(.)0 4807 y(Example)g(:)0
+5046 y Fc(#include)40 b("utilities.h")0 5160 y(int)i(main\(int)e(argc)i
+(,)i(char)d(**argv\))0 5274 y({)87 5387 y(INFOS_COMPILATIO)o(N;)p
+eop
+%%Page: 3 3
+3 2 bop 0 -167 3900 5 v 0 -200 a Fe(1.)73 b(T)-8 b(race)34
+b(and)e(debug)f(Utilities)2644 b Fh(3)87 162 y Fc(...)0
+275 y(})0 548 y Fe(INF)m(OS\(str\))83 b Fh(In)39 b(b)r(oth)f(compiling)
+g(mo)r(de)g Fc(_DEBUG_)d Fh(and)j Fc(_RELEASE_)p Fh(,)f(The)h(C++)g
+(macro)e Fc(INFOS)g Fh(writes)i(on)g(the)0 661 y(standard)27
+b(output)h(the)g(string)e(whic)n(h)i(has)f(b)r(een)h(passed)f(in)g
+(argumen)n(t)g(b)n(y)g(the)h(user.)0 818 y(Example)g(:)0
+1057 y Fc(#include)40 b("utilities.h")0 1171 y(int)i(main\(int)e(argc)i
+(,)i(char)d(**argv\))0 1285 y({)87 1398 y(...)87 1512
+y(INFOS\("NORMAL)d(END)43 b(OF)f(THE)h(PROCESS"\);)87
+1625 y(return)e(0;)0 1739 y(})0 1978 y Fh(displa)n(ys)26
+b(:)0 2218 y Fc(main.cxx)40 b([5])i(:)i(NORMAL)d(END)h(OF)h(THE)f
+(PROCESS)0 2490 y Fe(1.2.2)94 b(Macros)32 b(de\034ned)f(only)g(in)h
+(debug)f(mo)s(de)0 2701 y(MESSA)m(GE\(str\))83 b Fh(In)19
+b Fc(_DEBUG_)d Fh(compiling)j(mo)r(de)g(only)-7 b(,)20
+b(the)f(C++)g(macro)e Fc(MESSAGE)f Fh(writes)j(on)f(the)i(standard)e
+(output)0 2814 y(the)34 b(string)g(whic)n(h)g(has)f(b)r(een)i(passed)e
+(in)i(argumen)n(t)e(b)n(y)g(the)i(user.)56 b(In)34 b
+Fc(_RELEASE_)c Fh(compiling)k(mo)r(de,)i(this)e(macro)f(is)0
+2928 y(blank.)0 3084 y(Example)28 b(:)0 3324 y Fc(#include)40
+b("utilities.h")0 3437 y(#include)g(<string>)0 3551 y(using)h
+(namespace)f(std;)0 3664 y(int)i(main\(int)e(argc)i(,)i(char)d
+(**argv\))0 3778 y({)87 3892 y(...)87 4005 y(const)h(char)f(*str)h(=)i
+("Salome";)87 4119 y(MESSAGE\(str\);)87 4232 y(...)e(const)g(string)f
+(st;)87 4346 y(st)i(=)g("Aster";)87 4459 y(MESSAGE\(c_str\(st)o(+")37
+b(and)42 b(CASTEM"\)\);)87 4573 y(return)f(0;)0 4687
+y(})0 4926 y Fh(displa)n(ys)26 b(:)0 5166 y Fc(-)43 b(Trace)f(main.cxx)
+e([8])i(:)h(Salome)0 5279 y(-)g(Trace)f(main.cxx)e([12])i(:)h(Aster)e
+(and)i(CASTEM)p eop
+%%Page: 4 4
+4 3 bop 0 -167 3900 5 v 0 -200 a Fe(1.)73 b(T)-8 b(race)34
+b(and)e(debug)f(Utilities)2644 b Fh(4)0 162 y Fe(BEGIN_OF\(func_name\))
+82 b Fh(In)28 b Fc(_DEBUG_)c Fh(compiling)i(mo)r(de,)i(The)f(C++)f
+(macro)g Fc(BEGIN_OF)d Fh(app)r(ends)k(the)h(string)0
+275 y Fc("Begin)41 b(of)i(")27 b Fh(to)g(the)h(one)e(passed)h(in)g
+(argumen)n(t)g(b)n(y)g(the)g(user)g(and)g(displa)n(ys)f(the)i(result)f
+(on)g(the)g(standard)g(output.)37 b(In)0 389 y Fc(_RELEASE_)24
+b Fh(compiling)j(mo)r(de,)h(this)g(macro)e(is)h(blank.)0
+545 y(Example)h(:)0 751 y Fc(#include)40 b("utilities.h")0
+865 y(int)i(main\(int)e(argc)i(,)i(char)d(**argv\))0
+978 y({)87 1092 y(BEGIN_OF\(argv[0])o(\);)87 1205 y(return)g(0;)0
+1319 y(})0 1524 y Fh(displa)n(ys)26 b(:)0 1730 y Fc(-)43
+b(Trace)f(main.cxx)e([3])i(:)h(Begin)f(of)g(a.out)0 1997
+y Fe(END_OF\(func_name\))82 b Fh(In)47 b Fc(_DEBUG_)c
+Fh(compiling)i(mo)r(de,)51 b(The)46 b(C++)f(macro)f Fc(END_OF)g
+Fh(app)r(ends)i(the)g(string)0 2110 y Fc("Normal)41 b(end)h(of)h(")38
+b Fh(to)h(the)h(one)f(passed)f(in)h(argumen)n(t)g(b)n(y)f(the)i(user)e
+(and)h(displa)n(ys)f(the)i(result)f(on)g(the)g(standard)0
+2224 y(output.)e(In)28 b Fc(_RELEASE_)c Fh(compiling)j(mo)r(de,)h(this)
+g(macro)e(is)h(blank.)0 2380 y(Example)h(:)0 2586 y Fc(#include)40
+b("utilities.h")0 2700 y(int)i(main\(int)e(argc)i(,)i(char)d(**argv\))0
+2813 y({)87 2927 y(END_OF\(argv[0]\);)87 3040 y(return)g(0;)0
+3154 y(})0 3360 y Fh(displa)n(ys)26 b(:)0 3565 y Fc(-)43
+b(Trace)f(main.cxx)e([4])i(:)h(Normal)e(end)i(of)f(a.out)0
+3832 y Fe(SCR)m(UTE\(v)-5 b(ar\))84 b Fh(In)30 b Fc(_DEBUG_)c
+Fh(compiling)j(mo)r(de,)h(The)f(C++)f(macro)g Fc(SCRUTE)f
+Fh(displa)n(ys)h(its)h(argumen)n(t)f(whic)n(h)h(is)g(an)0
+3946 y(application)21 b(v)-5 b(ariable)22 b(follo)n(w)n(ed)f(b)n(y)h
+(the)g(v)-5 b(alue)22 b(of)g(the)h(v)-5 b(ariable.)34
+b(In)22 b Fc(_RELEASE_)d Fh(compiling)j(mo)r(de,)h(this)f(macro)f(is)h
+(blank.)0 4102 y(Example)28 b(:)0 4308 y Fc(#include)40
+b("utilities.h")0 4421 y(int)i(main\(int)e(argc)i(,)i(char)d(**argv\))0
+4535 y({)87 4648 y(const)h(int)g(i=999;)87 4762 y(if\()g(i)i(>)f(0)g
+(\))g(SCRUTE\(i\))d(;)j(i=i+1;)87 4875 y(return)e(0;)0
+4989 y(})0 5195 y Fh(displa)n(ys)26 b(:)0 5400 y Fc(-)43
+b(Trace)f(main.cxx)e([5])i(:)h(i=999)p eop
+%%Page: 5 5
+5 4 bop 0 -167 3900 5 v 0 -200 a Fe(2.)73 b(Exceptions)3255
+b Fh(5)0 162 y Fe(ASSER)-8 b(T\(condition\))82 b Fh(In)33
+b Fc(_DEBUG_)c Fh(compiling)i(mo)r(de)i(only)-7 b(,)33
+b(The)f(C++)f(macro)g Fc(ASSERT)e Fh(c)n(hec)n(ks)i(the)i(expression)0
+275 y(passed)23 b(in)h(argumen)n(t)f(to)g(b)r(e)i(not)e(NULL.)i(If)f
+(it)g(is)g(NULL)g(the)g(pro)r(cess)f(is)g(stopp)r(ed)h(and)g(the)g
+(condition)g(is)f(written)h(on)g(the)0 389 y(standard)30
+b(output.)47 b(In)31 b Fc(_RELEASE_)c Fh(compiling)j(mo)r(de,)i(this)f
+(macro)e(is)i(blank.)46 b(N.B.)31 b(:)43 b(if)32 b Fc(ASSERT)c
+Fh(is)i(already)g(de\034ned,)0 502 y(this)e(macro)e(is)i(ignored.)0
+659 y(Example)g(:)0 898 y Fc(#include)40 b("utilities.h")0
+1012 y(...)0 1126 y(const)h(char)h(*ptrS)g(=)h(fonc\(\);)0
+1239 y(ASSERT\(ptrS!=NUL)o(L\))o(;)0 1353 y(cout)f(<<)h
+(strlen\(ptrS\);)0 1466 y(float)e(table[10];)0 1580 y(int)h(k;)0
+1693 y(...)0 1807 y(ASSERT\(k<10\);)0 1921 y(cout)g(<<)h(table[k];)0
+2259 y Ff(2)131 b(Exceptions)0 2516 y Fd(2.1)112 b(C++)38
+b(exceptions:)49 b(class)38 b(SALOME_Exception)0 2727
+y Fe(2.1.1)94 b(de\034nition)0 2937 y Fh(The)30 b(class)f
+Fc(SALOME_Exceptio)o(n)24 b Fh(pro)n(vides)k(a)h(generic)g(metho)r(d)h
+(to)g(send)f(a)h(message,)f(with)h(optional)f(source)f(\034le)i(name)0
+3050 y(and)g(line)g(n)n(um)n(b)r(er.)43 b(This)30 b(class)f(is)h(in)n
+(tended)g(to)g(serv)n(e)e(as)h(a)h(base)f(class)g(for)g(all)h(kinds)g
+(of)g(exceptions)f(SALOME)h(co)r(de.)0 3164 y(All)25
+b(the)g(exceptions)e(deriv)n(ed)h(from)g Fc(SALOME_Exception)18
+b Fh(could)24 b(b)r(e)h(handled)f(in)h(a)f(single)f(catc)n(h,)i(in)g
+(whic)n(h)f(the)h(message)0 3277 y(asso)r(ciated)h(to)i(the)g
+(exception)f(is)g(displa)n(y)n(ed,)g(or)f(sen)n(t)i(to)f(a)g(log)g
+(\034le.)0 3434 y(The)h(class)e Fc(SALOME_Exception)21
+b Fh(inherits)28 b(its)f(b)r(eha)n(vior)f(from)i(the)g(STL)f(class)g
+(exception.)0 3706 y Fe(2.1.2)94 b(usage)0 3916 y Fh(The)26
+b(header)g Fc(SALOME/src/util)o(s/)o(uti)o(ls)o(_S)o(ALO)o(ME)o(_E)o
+(xce)o(pt)o(io)o(n.h)o(xx)20 b Fh(m)n(ust)26 b(b)r(e)h(included)f(in)h
+(the)f(C++)g(source,)f(when)0 4030 y(raised)h(or)h(trapp)r(ed:)0
+4187 y Fc(#include)40 b("utils_SALOME_Ex)o(cep)o(ti)o(on)o(.hx)o(x")0
+4343 y Fh(The)28 b Fc(SALOME_Exceptio)o(n)21 b Fh(constructor)26
+b(is:)0 4582 y Fc(SALOME_Exception)o(\()37 b(const)42
+b(char)g(*text,)784 4696 y(const)g(char)g(*fileName=0,)784
+4810 y(const)g(unsigned)e(int)i(lineNumber=0)d(\);)0
+5049 y Fh(The)28 b(exception)f(is)g(raised)g(lik)n(e)g(this:)0
+5289 y Fc(throw)41 b(SALOME_Exception\()o("m)o(y)d(pertinent)h
+(message"\);)p eop
+%%Page: 6 6
+6 5 bop 0 -167 3900 5 v 0 -200 a Fe(2.)73 b(Exceptions)3255
+b Fh(6)0 162 y(or)27 b(lik)n(e)g(this:)0 401 y Fc(throw)41
+b(SALOME_Exception\()o(LO)o(CAL)o(IZ)o(ED)o(\("m)o(y)c(pertinent)j
+(message"\)\);)0 641 y Fh(where)24 b(LOCALIZED)h(is)f(a)h(macro)e(pro)n
+(vided)g(with)j Fc(utils_SALOME_Ex)o(ce)o(pti)o(on)o(.h)o(xx)18
+b Fh(whic)n(h)25 b(giv)n(es)e(\034le)i(name)f(and)h(line)0
+754 y(n)n(um)n(b)r(er.)0 911 y(The)j(exception)f(is)g(handled)h(lik)n
+(e)f(this:)0 1150 y Fc(try)87 1264 y({)174 1377 y(...)87
+1491 y(})0 1605 y(catch)41 b(\(const)g(SALOME_Exception)c(&ex\))87
+1718 y({)174 1832 y(cerr)42 b(<<)h(ex.what\(\))d(<<endl;)87
+1945 y(})0 2185 y Fh(The)28 b Fc(what\(\))d Fh(metho)r(d)j(o)n(v)n
+(errides)d(the)j(one)f(de\034ned)h(in)g(the)g(STL)f(exception)g(class.)
+0 2476 y Fd(2.2)112 b(CORBA)37 b(exceptions)0 2686 y
+Fe(2.2.1)94 b(de\034nition)0 2896 y Fh(The)24 b(idl)h
+Fc(SALOME_Exception)18 b Fh(pro)n(vides)23 b(a)g(generic)h(CORBA)g
+(exception)g(for)g(SALOME,)g(with)h(an)f(attribute)h(that)f(giv)n(es)0
+3010 y(an)j(exception)g(t)n(yp)r(e,a)h(message,)e(plus)i(optional)e
+(source)h(\034le)g(name)h(and)f(line)h(n)n(um)n(b)r(er.)0
+3166 y(This)i(idl)h(is)f(in)n(tended)g(to)g(serv)n(e)f(for)h(all)g
+(user)f(CORBA)h(exceptions)g(raised)f(in)h(SALOME)h(co)r(de,)g(as)e
+(IDL)i(sp)r(eci\034cation)0 3280 y(do)r(es)21 b(not)g(supp)r(ort)h
+(exception)f(inheritance.)34 b(So,)22 b(all)g(the)f(user)g(CORBA)g
+(exceptions)g(from)g(SALOME)h(could)f(b)r(e)h(handled)0
+3394 y(in)28 b(a)f(single)g(catc)n(h.)0 3550 y(The)h(exception)f(t)n
+(yp)r(es)g(de\034ned)h(in)g(idl)g(are:)0 3790 y Fe(COMM)208
+3936 y Fh(CORBA)f(comm)n(unication)g(problem,)0 4116
+y Fe(BAD_P)-8 b(ARAM)208 4263 y Fh(Bad)27 b(User)g(parameters,)0
+4443 y Fe(INTERNAL_ERR)m(OR)208 4590 y Fh(application)f(lev)n(el)h
+(problem)g(\(often)i(irreco)n(v)n(erable\).)0 4829 y(CORBA)k(system)g
+(and)f(user)h(exceptions)f(already)g(de\034ned)h(in)h(the)f(pac)n(k)-5
+b(ages)31 b(used)i(within)h(SALOME,)f(suc)n(h)g(as)g(Om-)0
+4943 y(niORB)27 b(exceptions,)g(m)n(ust)h(b)r(e)g(handled)f(separately)
+-7 b(.)p eop
+%%Page: 7 7
+7 6 bop 0 -167 3900 5 v 0 -200 a Fe(3.)73 b(Miscellaneous)30
+b(to)s(ols)2901 b Fh(7)0 162 y Fe(2.2.2)94 b(usage)0
+372 y(CORBA)35 b(serv)-5 b(an)m(t,)37 b(C++)83 b Fh(The)31
+b(CORBA)g(Serv)n(er)e(header)h(for)g Fc(SALOME_Exception)24
+b Fh(and)31 b(a)f(macro)g(to)h(thro)n(w)f(the)0 485 y(exception)d(are)g
+(pro)n(vided)f(with)i(the)g(header)f Fc(SALOME/src/Utils)o(/U)o(ti)o
+(ls_)o(Co)o(rb)o(aEx)o(ce)o(pt)o(ion)o(.h)o(xx)p Fh(:)0
+717 y Fc(#include)40 b("Utils_CorbaExce)o(pti)o(on)o(.h)o(xx")0
+949 y Fh(The)28 b(exception)f(is)g(raised)g(with)h(a)f(macro)f(whic)n
+(h)i(app)r(ends)f(\034le)h(name)f(and)h(line)f(n)n(um)n(b)r(er.)0
+1181 y Fc(if)43 b(\(myStudyName.si)o(ze\()o(\))37 b(==)43
+b(0\))131 1294 y(THROW_SALOME_CO)o(RBA)o(_E)o(XC)o(EPT)o(IO)o(N\()o
+("No)37 b(Study)k(Name)h(given",)f(\\)1394 1408 y(SALOME::BAD_PARAM)o
+(\);)0 1679 y Fe(CORBA)113 b(Clien)m(t,)133 b(GUI)114
+b(Qt)f(C++)84 b Fh(The)99 b(CORBA)f(Clien)n(t)h(header)f(for)g
+Fc(SALOME_Exceptio)o(n)0 1793 y Fh(and)141 b(a)f(Qt)h(function)h
+(header)e(that)h(displa)n(ys)f(a)h(message)e(b)r(o)n(x)i(are)f(pro)n
+(vided)g(in)0 1906 y Fc(SALOME/src/SALOM)o(EG)o(UI/)o(SA)o(LO)o(MEG)o
+(UI)o(_Q)o(tCa)o(tc)o(hC)o(orb)o(aE)o(xc)o(ept)o(io)o(n.h)o(xx)o
+Fh(:)0 2138 y Fc(#include)40 b("SALOMEGUI_QtCat)o(chC)o(or)o(ba)o(Exc)o
+(ep)o(ti)o(on.)o(hx)o(x")0 2370 y Fh(A)28 b(t)n(ypical)f(exc)n(hange)f
+(with)i(a)f(CORBA)h(Serv)-5 b(an)n(t)27 b(will)g(b)r(e:)0
+2602 y Fc(try)87 2715 y({)174 2829 y(...)43 b(//)f(one)h(ore)f(more)g
+(CORBA)f(calls)87 2943 y(})0 3056 y(catch)g(\(const)g
+(SALOME::SALOME_Ex)o(ce)o(pti)o(on)c(&)43 b(S_ex\))87
+3170 y({)174 3283 y(QtCatchCorbaExcep)o(ti)o(on)o(\(S_)o(ex)o(\);)87
+3397 y(})0 3668 y Fe(CORBA)28 b(Clien)m(t,)g(C++,)h(without)f(GUI)84
+b Fh(Nothing)24 b(sp)r(eci\034c)h(has)f(b)r(een)h(pro)n(vided)f(to)h
+(the)g(dev)n(elop)r(er)e(y)n(et.)36 b(See)25 b(the)0
+3782 y(idl)i(or)f(the)h(Qt)f(function)i Fc(SALOMEGUI_QtCat)o(ch)o(Cor)o
+(ba)o(Exc)o(ep)o(ti)o(on.)o(hx)o(x)21 b Fh(to)26 b(see)g(ho)n(w)h(to)f
+(get)h(the)g(information)f(giv)n(en)f(b)n(y)0 3895 y(the)j(exception)f
+(ob)5 b(ject.)0 4232 y Ff(3)131 b(Miscellaneous)45 b(to)t(ols)0
+4490 y Fd(3.1)112 b(Singleton)0 4700 y Fe(3.1.1)94 b(De\034nition)0
+4910 y Fh(A)37 b(singleton)g(is)g(an)g(application)f(data)h(whic)n(h)g
+(is)g(created)f(and)h(deleted)h(only)f(once)f(at)h(the)h(end)f(of)g
+(the)h(application)0 5024 y(pro)r(cess.)63 b(The)36 b(C++)g(compiler)g
+(allo)n(ws)f(the)i(user)f(to)h(create)e(a)h(static)h(singleton)f(data)g
+(b)r(efore)g(the)h(\034rst)g(executable)0 5137 y(statemen)n(t.)g(They)
+27 b(are)g(deleted)h(after)f(the)h(last)f(statemen)n(t)h(execution.)0
+5294 y(The)g Fc(SINGLETON_)23 b Fh(template)28 b(class)e(deals)h(with)h
+(dynamic)f(singleton.)36 b(It)28 b(is)f(useful)h(for)f(functor)g(ob)5
+b(jects.)37 b(F)-7 b(or)27 b(example,)0 5407 y(an)g(ob)5
+b(ject)27 b(that)h(connects)f(the)g(application)g(to)g(a)g(system)g(at)
+g(creation)g(and)g(disconnects)f(the)i(application)f(at)g(deletion.)p
+eop
+%%Page: 8 8
+8 7 bop 0 -167 3900 5 v 0 -200 a Fe(3.)73 b(Miscellaneous)30
+b(to)s(ols)2901 b Fh(8)0 162 y Fe(3.1.2)94 b(Usage)0
+372 y Fh(T)-7 b(o)27 b(create)g(a)g(single)g(instance)g(a)g(POINT)h(ob)
+5 b(ject)28 b(:)0 611 y Fc(#)43 b(include)e("Utils_SINGLETO)o(N.h)o(xx)
+o(")0 725 y(...)0 838 y(POINT)g(*ptrPoint=SINGLET)o(ON)o(_<P)o(OI)o(NT)
+o(>::)o(In)o(st)o(anc)o(e\()o(\))c(;)0 952 y(assert\(ptrPoint!)o(=N)o
+(ULL)o(\))g(;)0 1191 y Fh(No)27 b(need)g(to)g(delete)g(ptrP)n(oin)n(t.)
+37 b(Deletion)27 b(is)g(ac)n(hiev)n(ed)f(automatically)g(at)h(exit.)37
+b(If)27 b(the)h(user)e(tries)h(to)g(create)f(more)g(than)0
+1305 y(one)e(singleton)g(b)n(y)g(using)f(the)i(class)e(metho)r(d)i
+Fc(SINGLETON_)p Fa(<)p Fc(TYPE)p Fa(>)o Fc(::I)o(ns)o(ta)o(nce)o(\(\))o
+Fh(,)19 b(the)25 b(p)r(oin)n(ter)f(is)g(returned)g(with)h(the)0
+1419 y(same)i(v)-5 b(alue)27 b(ev)n(en)g(if)i(this)e(is)h(done)f(in)h
+(di\033eren)n(t)g(functions)f(\(threads)h(?\).)0 1658
+y Fc(POINT)41 b(*p1=SINGLETON_<PO)o(IN)o(T>:)o(:I)o(ns)o(tan)o(ce)o
+(\(\))c(;)0 1772 y(...)0 1885 y(POINT)k(*p2=SINGLETON_<PO)o(IN)o(T>:)o
+(:I)o(ns)o(tan)o(ce)o(\(\))c(;)0 1999 y(assert\(p1==p2\))0
+2271 y Fe(3.1.3)94 b(Design)30 b(description)0 2482 y
+Fh(Here)d(are)g(the)h(principles)f(features)g(of)g(the)h(singleton)f
+(design)g(:)125 2721 y Fb(\017)41 b Fh(the)28 b(user)f(creates)g(an)g
+(ob)5 b(ject)28 b(of)g(class)f Fc(TYPE)f Fh(b)n(y)i(using)f(the)i
+(class)e(metho)r(d)h Fc(SINGLETON_)p Fa(<)p Fc(TYPE)p
+Fa(>)o Fc(::)o(In)o(sta)o(nc)o(e\()o(\))208 2835 y Fh(whic)n(h)f
+(returns)g(a)g(p)r(oin)n(ter)g(to)h(the)g(single)f(ob)5
+b(ject)27 b(;)125 3015 y Fb(\017)41 b Fh(to)27 b(create)g(an)g(ob)5
+b(ject,)27 b Fc(SINGLETON_)p Fa(<)p Fc(TYPE)p Fa(>)o
+Fc(::I)o(ns)o(tan)o(ce)o(\(\))21 b Fh(uses)27 b(the)h(default)g
+(constructor)e(of)i(class)e Fc(TYPE)g Fh(;)125 3195 y
+Fb(\017)41 b Fh(at)31 b(the)h(same)g(time,)h(this)f(class)f(metho)r(d)h
+(creates)f(a)g(destructor)g(ob)5 b(ject)31 b(whic)n(h)h(is)g(added)f
+(to)h(the)g(generic)f(list)h(of)208 3308 y(destructor)26
+b(ob)5 b(jects)27 b(to)h(b)r(e)g(executed)f(at)g(the)h(end)g(of)g(the)g
+(application)f(\()p Fc(atexit)p Fh(\))e(;)125 3488 y
+Fb(\017)41 b Fh(at)30 b(the)h(end)f(of)h(the)f(application)g(pro)r
+(cess)f(all)h(the)h(deletions)f(are)g(p)r(erformed)f(b)n(y)i(the)f
+Fc(Nettoyage\(\))c Fh(C)31 b(function)208 3602 y(whic)n(h)c(executes)g
+(the)h(destruction)f(ob)5 b(jects)27 b(end)h(then)g(deletes)g(the)g
+(destructions)f(ob)5 b(jects)27 b(themselv)n(es)g(;)125
+3782 y Fb(\017)41 b Fh(the)23 b Fc(Nettoyage\(\))c Fh(C)k(function)g
+(using)g(atexit\(\))g(C)h(function)f(is)g(em)n(b)r(edded)h(in)f(a)g
+(static)f(single)h(ob)5 b(ject)23 b Fc(ATEXIT_\(\))p
+Fh(.)p eop
+%%Trailer
+end
+userdict /end-hook known{end-hook}if
+%%EOF
--- /dev/null
+<HTML><b>
+<table width="100%" BORDER>
+<tr bgcolor="#FFFFCC">
+<td colspan="11"><font size="+3"><b><div align="center"><i>interface Logger</i></div></b></font></td>
+</tr>
+<td width="50%" bgcolor= "lightgreen" ><font size="+2"><div align="center"><b><i>IDL file</i></b></div></font></td>
+<td width="50%" bgcolor= "lightgreen"><font size="+2"><div align="center"><b><i>Python</i></b></div></font></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void putMessage ( in string message )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>putMessage ( message )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void ping ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>ping ( )</b></div></td>
+</tr>
+</table><br>
+</b></HTML>
--- /dev/null
+<HTML><b>
+<table width="100%" BORDER>
+<tr bgcolor="#FFFFCC">
+<td colspan="11"><font size="+3"><b><div align="center"><i>interface Study</i></div></b></font></td>
+</tr>
+<td width="50%" bgcolor= "lightgreen" ><font size="+2"><div align="center"><b><i>IDL file</i></b></div></font></td>
+<td width="50%" bgcolor= "lightgreen"><font size="+2"><div align="center"><b><i>Python</i></b></div></font></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>PersistentReference GetPersistentReference ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetPersistentReference ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>SalomeReference GetTransientReference ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetTransientReference ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>boolean IsEmpty ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = IsEmpty ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>SComponent FindComponent ( in string aComponentName )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = FindComponent ( aComponentName )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>SComponent FindComponentID ( in ID aComponentID )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = FindComponentID ( aComponentID )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>SObject FindObject ( in string anObjectName )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = FindObject ( anObjectName )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>SObject FindObjectID ( in ID aObjectID )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = FindObjectID ( aObjectID )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>SObject FindObjectIOR ( in ID aObjectIOR )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = FindObjectIOR ( aObjectIOR )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>ListOfSObject FindObjectByName ( in string anObjectName, in string aComponentName )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = FindObjectByName ( anObjectName, aComponentName )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>SObject FindObjectByPath ( in string thePath )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = FindObjectByPath ( thePath )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>string GetObjectPath ( in Object theObject )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetObjectPath ( theObject )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void SetContext ( in string thePath )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>SetContext ( thePath )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>string GetContext ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetContext ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>ListOfStrings GetObjectNames ( in string theContext )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetObjectNames ( theContext )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>ListOfStrings GetDirectoryNames ( in string theContext )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetDirectoryNames ( theContext )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>ListOfStrings GetFileNames ( in string theContext )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetFileNames ( theContext )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>ListOfStrings GetComponentNames ( in string theContext )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetComponentNames ( theContext )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>ChildIterator NewChildIterator ( in SObject aSO )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = NewChildIterator ( aSO )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>SComponentIterator NewComponentIterator ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = NewComponentIterator ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>StudyBuilder NewBuilder ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = NewBuilder ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void UpdateIORLabelMap ( in string anIOR, in string anEntry )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>UpdateIORLabelMap ( anIOR, anEntry )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>AttributeStudyProperties GetProperties ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetProperties ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>boolean IsModified ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = IsModified ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>ListOfSObject FindDependances ( in SObject anObject )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = FindDependances ( anObject )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>string GetLastModificationDate ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetLastModificationDate ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>ListOfDates GetModificationsDate ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetModificationsDate ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>string ConvertObjectToIOR ( in Object theObject )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = ConvertObjectToIOR ( theObject )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>Object ConvertIORToObject ( in string theIOR )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = ConvertIORToObject ( theIOR )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>UseCaseBuilder GetUseCaseBuilder ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetUseCaseBuilder ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void Close ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>Close ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void EnableUseCaseAutoFilling ( in boolean isEnabled )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>EnableUseCaseAutoFilling ( isEnabled )</b></div></td>
+</tr>
+</table><br>
+<table width="100%" BORDER>
+<tr bgcolor="#FFFFCC">
+<td colspan="11"><font size="+3"><b><div align="center"><i>interface StudyBuilder</i></div></b></font></td>
+</tr>
+<td width="50%" bgcolor= "lightgreen" ><font size="+2"><div align="center"><b><i>IDL file</i></b></div></font></td>
+<td width="50%" bgcolor= "lightgreen"><font size="+2"><div align="center"><b><i>Python</i></b></div></font></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>SComponent NewComponent ( in string ComponentDataType )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = NewComponent ( ComponentDataType )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void DefineComponentInstance ( in SComponent aComponent, in Object ComponentIOR )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>DefineComponentInstance ( aComponent, ComponentIOR )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void RemoveComponent ( in SComponent aComponent )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>RemoveComponent ( aComponent )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>SObject NewObject ( in SObject theFatherObject )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = NewObject ( theFatherObject )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>SObject NewObjectToTag ( in SObject theFatherObject, in long atag )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = NewObjectToTag ( theFatherObject, atag )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void RemoveObject ( in SObject anObject )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>RemoveObject ( anObject )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void RemoveObjectWithChildren ( in SObject anObject )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>RemoveObjectWithChildren ( anObject )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void LoadWith ( in SComponent sco, in Driver Engine )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>LoadWith ( sco, Engine )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void Load ( in SObject sco )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>Load ( sco )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>GenericAttribute FindOrCreateAttribute ( in SObject anObject, in string aTypeOfAttribute )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = FindOrCreateAttribute ( anObject, aTypeOfAttribute )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>boolean FindAttribute ( in SObject anObject, out GenericAttribute anAttribute, in string aTypeOfAttribute )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>[ return_value, anAttribute ] = FindAttribute ( anObject, aTypeOfAttribute )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void RemoveAttribute ( in SObject anObject, in string aTypeOfAttribute )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>RemoveAttribute ( anObject, aTypeOfAttribute )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void Addreference ( in SObject anObject, in SObject theReferencedObject )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>Addreference ( anObject, theReferencedObject )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void AddDirectory ( in string theName )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>AddDirectory ( theName )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void SetGUID ( in SObject anObject, in string theGUID )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>SetGUID ( anObject, theGUID )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>boolean IsGUID ( in SObject anObject, in string theGUID )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = IsGUID ( anObject, theGUID )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void NewCommand ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>NewCommand ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void CommitCommand ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>CommitCommand ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>boolean HasOpenCommand ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = HasOpenCommand ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void AbortCommand ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>AbortCommand ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void Undo ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>Undo ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void Redo ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>Redo ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>boolean GetAvailableUndos ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetAvailableUndos ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>boolean GetAvailableRedos ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetAvailableRedos ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>Callback SetOnAddSObject ( in Callback theCallback )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = SetOnAddSObject ( theCallback )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>Callback SetOnRemoveSObject ( in Callback theCallback )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = SetOnRemoveSObject ( theCallback )</b></div></td>
+</tr>
+</table><br>
+<table width="100%" BORDER>
+<tr bgcolor="#FFFFCC">
+<td colspan="11"><font size="+3"><b><div align="center"><i>interface StudyManager</i></div></b></font></td>
+</tr>
+<td width="50%" bgcolor= "lightgreen" ><font size="+2"><div align="center"><b><i>IDL file</i></b></div></font></td>
+<td width="50%" bgcolor= "lightgreen"><font size="+2"><div align="center"><b><i>Python</i></b></div></font></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void ping ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>ping ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>Study NewStudy ( in string study_name )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = NewStudy ( study_name )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>Study Open ( in URL aStudyUrl )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = Open ( aStudyUrl )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void Close ( in Study aStudy )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>Close ( aStudy )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void Save ( in Study aStudy, in boolean theMultiFile )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>Save ( aStudy, theMultiFile )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void SaveASCII ( in Study aStudy, in boolean theMultiFile )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>SaveASCII ( aStudy, theMultiFile )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void SaveAs ( in URL aUrl, in Study aStudy, in boolean theMultiFile )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>SaveAs ( aUrl, aStudy, theMultiFile )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void SaveAsASCII ( in URL aUrl, in Study aStudy, in boolean theMultiFile )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>SaveAsASCII ( aUrl, aStudy, theMultiFile )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>ListOfOpenStudies GetOpenStudies ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetOpenStudies ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>Study GetStudyByName ( in string aStudyName )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetStudyByName ( aStudyName )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>Study GetStudyByID ( in short aStudyID )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetStudyByID ( aStudyID )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>boolean CanCopy ( in SObject theObject )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = CanCopy ( theObject )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>boolean Copy ( in SObject theObject )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = Copy ( theObject )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>boolean CanPaste ( in SObject theObject )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = CanPaste ( theObject )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>SObject Paste ( in SObject theObject )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = Paste ( theObject )</b></div></td>
+</tr>
+</table><br>
+<table width="100%" BORDER>
+<tr bgcolor="#FFFFCC">
+<td colspan="11"><font size="+3"><b><div align="center"><i>interface SObject</i></div></b></font></td>
+</tr>
+<td width="50%" bgcolor= "lightgreen" ><font size="+2"><div align="center"><b><i>IDL file</i></b></div></font></td>
+<td width="50%" bgcolor= "lightgreen"><font size="+2"><div align="center"><b><i>Python</i></b></div></font></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>ID GetID ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetID ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>SComponent GetFatherComponent ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetFatherComponent ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>SObject GetFather ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetFather ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>short Tag ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = Tag ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>boolean FindSubObject ( in long atag, out SObject obj )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>[ return_value, obj ] = FindSubObject ( atag )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>boolean FindAttribute ( out GenericAttribute anAttribute, in string aTypeOfAttribute )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>[ return_value, anAttribute ] = FindAttribute ( aTypeOfAttribute )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>boolean ReferencedObject ( out SObject obj )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>[ return_value, obj ] = ReferencedObject ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>ListOfAttributes GetAllAttributes ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetAllAttributes ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>Study GetStudy ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetStudy ( )</b></div></td>
+</tr>
+</table><br>
+<table width="100%" BORDER>
+<tr bgcolor="#FFFFCC">
+<td colspan="11"><font size="+3"><b><div align="center"><i>interface GenericAttribute</i></div></b></font></td>
+</tr>
+<td width="50%" bgcolor= "lightgreen" ><font size="+2"><div align="center"><b><i>IDL file</i></b></div></font></td>
+<td width="50%" bgcolor= "lightgreen"><font size="+2"><div align="center"><b><i>Python</i></b></div></font></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void CheckLocked ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>CheckLocked ( )</b></div></td>
+</tr>
+</table><br>
+<table width="100%" BORDER>
+<tr bgcolor="#FFFFCC">
+<td colspan="11"><font size="+3"><b><div align="center"><i>interface SComponent</i></div></b></font></td>
+</tr>
+<td width="50%" bgcolor= "lightgreen" ><font size="+2"><div align="center"><b><i>IDL file</i></b></div></font></td>
+<td width="50%" bgcolor= "lightgreen"><font size="+2"><div align="center"><b><i>Python</i></b></div></font></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>string ComponentDataType ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = ComponentDataType ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>boolean ComponentIOR ( out ID theID )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>[ return_value, theID ] = ComponentIOR ( )</b></div></td>
+</tr>
+</table><br>
+<table width="100%" BORDER>
+<tr bgcolor="#FFFFCC">
+<td colspan="11"><font size="+3"><b><div align="center"><i>interface SComponentIterator</i></div></b></font></td>
+</tr>
+<td width="50%" bgcolor= "lightgreen" ><font size="+2"><div align="center"><b><i>IDL file</i></b></div></font></td>
+<td width="50%" bgcolor= "lightgreen"><font size="+2"><div align="center"><b><i>Python</i></b></div></font></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void Init ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>Init ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>boolean More ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = More ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void Next ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>Next ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>SComponent Value ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = Value ( )</b></div></td>
+</tr>
+</table><br>
+<table width="100%" BORDER>
+<tr bgcolor="#FFFFCC">
+<td colspan="11"><font size="+3"><b><div align="center"><i>interface ChildIterator</i></div></b></font></td>
+</tr>
+<td width="50%" bgcolor= "lightgreen" ><font size="+2"><div align="center"><b><i>IDL file</i></b></div></font></td>
+<td width="50%" bgcolor= "lightgreen"><font size="+2"><div align="center"><b><i>Python</i></b></div></font></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void Init ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>Init ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void InitEx ( in boolean allLevels )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>InitEx ( allLevels )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>boolean More ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = More ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void Next ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>Next ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>SObject Value ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = Value ( )</b></div></td>
+</tr>
+</table><br>
+<table width="100%" BORDER>
+<tr bgcolor="#FFFFCC">
+<td colspan="11"><font size="+3"><b><div align="center"><i>interface UseCaseIterator</i></div></b></font></td>
+</tr>
+<td width="50%" bgcolor= "lightgreen" ><font size="+2"><div align="center"><b><i>IDL file</i></b></div></font></td>
+<td width="50%" bgcolor= "lightgreen"><font size="+2"><div align="center"><b><i>Python</i></b></div></font></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void Init ( in boolean allLevels )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>Init ( allLevels )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>boolean More ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = More ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void Next ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>Next ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>SObject Value ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = Value ( )</b></div></td>
+</tr>
+</table><br>
+<table width="100%" BORDER>
+<tr bgcolor="#FFFFCC">
+<td colspan="11"><font size="+3"><b><div align="center"><i>interface UseCaseBuilder</i></div></b></font></td>
+</tr>
+<td width="50%" bgcolor= "lightgreen" ><font size="+2"><div align="center"><b><i>IDL file</i></b></div></font></td>
+<td width="50%" bgcolor= "lightgreen"><font size="+2"><div align="center"><b><i>Python</i></b></div></font></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>boolean Append ( in SObject theObject )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = Append ( theObject )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>boolean Remove ( in SObject theObject )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = Remove ( theObject )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>boolean AppendTo ( in SObject theFather, in SObject theObject )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = AppendTo ( theFather, theObject )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>boolean InsertBefore ( in SObject theFirst, in SObject theNext )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = InsertBefore ( theFirst, theNext )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>boolean SetCurrentObject ( in SObject theObject )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = SetCurrentObject ( theObject )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>boolean SetRootCurrent ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = SetRootCurrent ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>boolean HasChildren ( in SObject theObject )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = HasChildren ( theObject )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>boolean SetName ( in string theName )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = SetName ( theName )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>string GetName ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetName ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>boolean IsUseCase ( in SObject theObject )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = IsUseCase ( theObject )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>SObject GetCurrentObject ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetCurrentObject ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>SObject AddUseCase ( in string theName )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = AddUseCase ( theName )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>UseCaseIterator GetUseCaseIterator ( in SObject theObject )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetUseCaseIterator ( theObject )</b></div></td>
+</tr>
+</table><br>
+<table width="100%" BORDER>
+<tr bgcolor="#FFFFCC">
+<td colspan="11"><font size="+3"><b><div align="center"><i>interface Callback</i></div></b></font></td>
+</tr>
+<td width="50%" bgcolor= "lightgreen" ><font size="+2"><div align="center"><b><i>IDL file</i></b></div></font></td>
+<td width="50%" bgcolor= "lightgreen"><font size="+2"><div align="center"><b><i>Python</i></b></div></font></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void OnAddSObject ( in SObject theObject )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>OnAddSObject ( theObject )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void OnRemoveSObject ( in SObject theObject )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>OnRemoveSObject ( theObject )</b></div></td>
+</tr>
+</table><br>
+<table width="100%" BORDER>
+<tr bgcolor="#FFFFCC">
+<td colspan="11"><font size="+3"><b><div align="center"><i>interface Driver</i></div></b></font></td>
+</tr>
+<td width="50%" bgcolor= "lightgreen" ><font size="+2"><div align="center"><b><i>IDL file</i></b></div></font></td>
+<td width="50%" bgcolor= "lightgreen"><font size="+2"><div align="center"><b><i>Python</i></b></div></font></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>TMPFile Save ( in SComponent theComponent, in string theURL, in boolean isMultiFile )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = Save ( theComponent, theURL, isMultiFile )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>TMPFile SaveASCII ( in SComponent theComponent, in string theURL, in boolean isMultiFile )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = SaveASCII ( theComponent, theURL, isMultiFile )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>boolean Load ( in SComponent theComponent, in TMPFile theStream, in string theURL, in boolean isMultiFile )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = Load ( theComponent, theStream, theURL, isMultiFile )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>boolean LoadASCII ( in SComponent theComponent, in TMPFile theStream, in string theURL, in boolean isMultiFile )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = LoadASCII ( theComponent, theStream, theURL, isMultiFile )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void Close ( in SComponent aSComponent )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>Close ( aSComponent )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>string ComponentDataType ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = ComponentDataType ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>string IORToLocalPersistentID ( in SObject theSObject, in string IORString, in boolean isMultiFile, in boolean isASCII )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = IORToLocalPersistentID ( theSObject, IORString, isMultiFile, isASCII )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>string LocalPersistentIDToIOR ( in SObject theSObject, in string aLocalPersistentID, in boolean isMultiFile, in boolean isASCII )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = LocalPersistentIDToIOR ( theSObject, aLocalPersistentID, isMultiFile, isASCII )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>boolean CanPublishInStudy ( in Object theIOR )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = CanPublishInStudy ( theIOR )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>SObject PublishInStudy ( in Study theStudy, in SObject theSObject, in Object theObject, in string theName )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = PublishInStudy ( theStudy, theSObject, theObject, theName )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>boolean CanCopy ( in SObject theObject )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = CanCopy ( theObject )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>TMPFile CopyFrom ( in SObject theObject, out long theObjectID )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>[ return_value, theObjectID ] = CopyFrom ( theObject )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>boolean CanPaste ( in string theComponentName, in long theObjectID )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = CanPaste ( theComponentName, theObjectID )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>SObject PasteInto ( in TMPFile theStream, in long theObjectID, in SObject theObject )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = PasteInto ( theStream, theObjectID, theObject )</b></div></td>
+</tr>
+</table><br>
+</b></HTML>
--- /dev/null
+<HTML><b>
+<table width="100%" BORDER>
+<tr bgcolor="#FFFFCC">
+<td colspan="11"><font size="+3"><b><div align="center"><i>interface AttributeReal</i></div></b></font></td>
+</tr>
+<td width="50%" bgcolor= "lightgreen" ><font size="+2"><div align="center"><b><i>IDL file</i></b></div></font></td>
+<td width="50%" bgcolor= "lightgreen"><font size="+2"><div align="center"><b><i>Python</i></b></div></font></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>double Value ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = Value ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void SetValue ( in double value )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>SetValue ( value )</b></div></td>
+</tr>
+</table><br>
+<table width="100%" BORDER>
+<tr bgcolor="#FFFFCC">
+<td colspan="11"><font size="+3"><b><div align="center"><i>interface AttributeInteger</i></div></b></font></td>
+</tr>
+<td width="50%" bgcolor= "lightgreen" ><font size="+2"><div align="center"><b><i>IDL file</i></b></div></font></td>
+<td width="50%" bgcolor= "lightgreen"><font size="+2"><div align="center"><b><i>Python</i></b></div></font></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>long Value ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = Value ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void SetValue ( in long value )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>SetValue ( value )</b></div></td>
+</tr>
+</table><br>
+<table width="100%" BORDER>
+<tr bgcolor="#FFFFCC">
+<td colspan="11"><font size="+3"><b><div align="center"><i>interface AttributeSequenceOfReal</i></div></b></font></td>
+</tr>
+<td width="50%" bgcolor= "lightgreen" ><font size="+2"><div align="center"><b><i>IDL file</i></b></div></font></td>
+<td width="50%" bgcolor= "lightgreen"><font size="+2"><div align="center"><b><i>Python</i></b></div></font></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void Assign ( in DoubleSeq other )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>Assign ( other )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>DoubleSeq CorbaSequence ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = CorbaSequence ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void Add ( in double value )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>Add ( value )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void Remove ( in long index )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>Remove ( index )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void ChangeValue ( in long index, in double value )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>ChangeValue ( index, value )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>double Value ( in short index )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = Value ( index )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>long Length ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = Length ( )</b></div></td>
+</tr>
+</table><br>
+<table width="100%" BORDER>
+<tr bgcolor="#FFFFCC">
+<td colspan="11"><font size="+3"><b><div align="center"><i>interface AttributeSequenceOfInteger</i></div></b></font></td>
+</tr>
+<td width="50%" bgcolor= "lightgreen" ><font size="+2"><div align="center"><b><i>IDL file</i></b></div></font></td>
+<td width="50%" bgcolor= "lightgreen"><font size="+2"><div align="center"><b><i>Python</i></b></div></font></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void Assign ( in LongSeq other )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>Assign ( other )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>LongSeq CorbaSequence ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = CorbaSequence ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void Add ( in long value )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>Add ( value )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void Remove ( in long index )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>Remove ( index )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void ChangeValue ( in long index, in long value )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>ChangeValue ( index, value )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>long Value ( in short index )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = Value ( index )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>long Length ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = Length ( )</b></div></td>
+</tr>
+</table><br>
+<table width="100%" BORDER>
+<tr bgcolor="#FFFFCC">
+<td colspan="11"><font size="+3"><b><div align="center"><i>interface AttributeName</i></div></b></font></td>
+</tr>
+<td width="50%" bgcolor= "lightgreen" ><font size="+2"><div align="center"><b><i>IDL file</i></b></div></font></td>
+<td width="50%" bgcolor= "lightgreen"><font size="+2"><div align="center"><b><i>Python</i></b></div></font></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>string Value ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = Value ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void SetValue ( in string value )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>SetValue ( value )</b></div></td>
+</tr>
+</table><br>
+<table width="100%" BORDER>
+<tr bgcolor="#FFFFCC">
+<td colspan="11"><font size="+3"><b><div align="center"><i>interface AttributeComment</i></div></b></font></td>
+</tr>
+<td width="50%" bgcolor= "lightgreen" ><font size="+2"><div align="center"><b><i>IDL file</i></b></div></font></td>
+<td width="50%" bgcolor= "lightgreen"><font size="+2"><div align="center"><b><i>Python</i></b></div></font></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>string Value ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = Value ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void SetValue ( in string value )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>SetValue ( value )</b></div></td>
+</tr>
+</table><br>
+<table width="100%" BORDER>
+<tr bgcolor="#FFFFCC">
+<td colspan="11"><font size="+3"><b><div align="center"><i>interface AttributeIOR</i></div></b></font></td>
+</tr>
+<td width="50%" bgcolor= "lightgreen" ><font size="+2"><div align="center"><b><i>IDL file</i></b></div></font></td>
+<td width="50%" bgcolor= "lightgreen"><font size="+2"><div align="center"><b><i>Python</i></b></div></font></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>string Value ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = Value ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void SetValue ( in string value )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>SetValue ( value )</b></div></td>
+</tr>
+</table><br>
+<table width="100%" BORDER>
+<tr bgcolor="#FFFFCC">
+<td colspan="11"><font size="+3"><b><div align="center"><i>interface AttributePersistentRef</i></div></b></font></td>
+</tr>
+<td width="50%" bgcolor= "lightgreen" ><font size="+2"><div align="center"><b><i>IDL file</i></b></div></font></td>
+<td width="50%" bgcolor= "lightgreen"><font size="+2"><div align="center"><b><i>Python</i></b></div></font></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>string Value ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = Value ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void SetValue ( in string value )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>SetValue ( value )</b></div></td>
+</tr>
+</table><br>
+<table width="100%" BORDER>
+<tr bgcolor="#FFFFCC">
+<td colspan="11"><font size="+3"><b><div align="center"><i>interface AttributeDrawable</i></div></b></font></td>
+</tr>
+<td width="50%" bgcolor= "lightgreen" ><font size="+2"><div align="center"><b><i>IDL file</i></b></div></font></td>
+<td width="50%" bgcolor= "lightgreen"><font size="+2"><div align="center"><b><i>Python</i></b></div></font></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>boolean IsDrawable ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = IsDrawable ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void SetDrawable ( in boolean value )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>SetDrawable ( value )</b></div></td>
+</tr>
+</table><br>
+<table width="100%" BORDER>
+<tr bgcolor="#FFFFCC">
+<td colspan="11"><font size="+3"><b><div align="center"><i>interface AttributeSelectable</i></div></b></font></td>
+</tr>
+<td width="50%" bgcolor= "lightgreen" ><font size="+2"><div align="center"><b><i>IDL file</i></b></div></font></td>
+<td width="50%" bgcolor= "lightgreen"><font size="+2"><div align="center"><b><i>Python</i></b></div></font></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>boolean IsSelectable ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = IsSelectable ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void SetSelectable ( in boolean value )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>SetSelectable ( value )</b></div></td>
+</tr>
+</table><br>
+<table width="100%" BORDER>
+<tr bgcolor="#FFFFCC">
+<td colspan="11"><font size="+3"><b><div align="center"><i>interface AttributeExpandable</i></div></b></font></td>
+</tr>
+<td width="50%" bgcolor= "lightgreen" ><font size="+2"><div align="center"><b><i>IDL file</i></b></div></font></td>
+<td width="50%" bgcolor= "lightgreen"><font size="+2"><div align="center"><b><i>Python</i></b></div></font></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>boolean IsExpandable ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = IsExpandable ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void SetExpandable ( in boolean value )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>SetExpandable ( value )</b></div></td>
+</tr>
+</table><br>
+<table width="100%" BORDER>
+<tr bgcolor="#FFFFCC">
+<td colspan="11"><font size="+3"><b><div align="center"><i>interface AttributeOpened</i></div></b></font></td>
+</tr>
+<td width="50%" bgcolor= "lightgreen" ><font size="+2"><div align="center"><b><i>IDL file</i></b></div></font></td>
+<td width="50%" bgcolor= "lightgreen"><font size="+2"><div align="center"><b><i>Python</i></b></div></font></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>boolean IsOpened ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = IsOpened ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void SetOpened ( in boolean value )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>SetOpened ( value )</b></div></td>
+</tr>
+</table><br>
+<table width="100%" BORDER>
+<tr bgcolor="#FFFFCC">
+<td colspan="11"><font size="+3"><b><div align="center"><i>interface AttributeTextColor</i></div></b></font></td>
+</tr>
+<td width="50%" bgcolor= "lightgreen" ><font size="+2"><div align="center"><b><i>IDL file</i></b></div></font></td>
+<td width="50%" bgcolor= "lightgreen"><font size="+2"><div align="center"><b><i>Python</i></b></div></font></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>Color TextColor ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = TextColor ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void SetTextColor ( in Color value )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>SetTextColor ( value )</b></div></td>
+</tr>
+</table><br>
+<table width="100%" BORDER>
+<tr bgcolor="#FFFFCC">
+<td colspan="11"><font size="+3"><b><div align="center"><i>interface AttributeTextHighlightColor</i></div></b></font></td>
+</tr>
+<td width="50%" bgcolor= "lightgreen" ><font size="+2"><div align="center"><b><i>IDL file</i></b></div></font></td>
+<td width="50%" bgcolor= "lightgreen"><font size="+2"><div align="center"><b><i>Python</i></b></div></font></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>Color TextHighlightColor ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = TextHighlightColor ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void SetTextHighlightColor ( in Color value )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>SetTextHighlightColor ( value )</b></div></td>
+</tr>
+</table><br>
+<table width="100%" BORDER>
+<tr bgcolor="#FFFFCC">
+<td colspan="11"><font size="+3"><b><div align="center"><i>interface AttributePixMap</i></div></b></font></td>
+</tr>
+<td width="50%" bgcolor= "lightgreen" ><font size="+2"><div align="center"><b><i>IDL file</i></b></div></font></td>
+<td width="50%" bgcolor= "lightgreen"><font size="+2"><div align="center"><b><i>Python</i></b></div></font></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>boolean HasPixMap ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = HasPixMap ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>string GetPixMap ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetPixMap ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void SetPixMap ( in string value )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>SetPixMap ( value )</b></div></td>
+</tr>
+</table><br>
+<table width="100%" BORDER>
+<tr bgcolor="#FFFFCC">
+<td colspan="11"><font size="+3"><b><div align="center"><i>interface AttributeTreeNode</i></div></b></font></td>
+</tr>
+<td width="50%" bgcolor= "lightgreen" ><font size="+2"><div align="center"><b><i>IDL file</i></b></div></font></td>
+<td width="50%" bgcolor= "lightgreen"><font size="+2"><div align="center"><b><i>Python</i></b></div></font></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void SetFather ( in AttributeTreeNode value )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>SetFather ( value )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>boolean HasFather ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = HasFather ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>AttributeTreeNode GetFather ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetFather ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void SetPrevious ( in AttributeTreeNode value )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>SetPrevious ( value )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>boolean HasPrevious ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = HasPrevious ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>AttributeTreeNode GetPrevious ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetPrevious ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void SetNext ( in AttributeTreeNode value )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>SetNext ( value )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>boolean HasNext ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = HasNext ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>AttributeTreeNode GetNext ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetNext ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void SetFirst ( in AttributeTreeNode value )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>SetFirst ( value )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>boolean HasFirst ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = HasFirst ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>AttributeTreeNode GetFirst ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetFirst ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void SetTreeID ( in string value )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>SetTreeID ( value )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>string GetTreeID ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetTreeID ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void Append ( in AttributeTreeNode value )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>Append ( value )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void Prepend ( in AttributeTreeNode value )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>Prepend ( value )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void InsertBefore ( in AttributeTreeNode value )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>InsertBefore ( value )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void InsertAfter ( in AttributeTreeNode value )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>InsertAfter ( value )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void Remove ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>Remove ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>long Depth ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = Depth ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>boolean IsRoot ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = IsRoot ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>boolean IsDescendant ( in AttributeTreeNode value )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = IsDescendant ( value )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>boolean IsFather ( in AttributeTreeNode value )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = IsFather ( value )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>boolean IsChild ( in AttributeTreeNode value )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = IsChild ( value )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>string Label ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = Label ( )</b></div></td>
+</tr>
+</table><br>
+<table width="100%" BORDER>
+<tr bgcolor="#FFFFCC">
+<td colspan="11"><font size="+3"><b><div align="center"><i>interface AttributeLocalID</i></div></b></font></td>
+</tr>
+<td width="50%" bgcolor= "lightgreen" ><font size="+2"><div align="center"><b><i>IDL file</i></b></div></font></td>
+<td width="50%" bgcolor= "lightgreen"><font size="+2"><div align="center"><b><i>Python</i></b></div></font></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>long Value ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = Value ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void SetValue ( in long value )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>SetValue ( value )</b></div></td>
+</tr>
+</table><br>
+<table width="100%" BORDER>
+<tr bgcolor="#FFFFCC">
+<td colspan="11"><font size="+3"><b><div align="center"><i>interface AttributeUserID</i></div></b></font></td>
+</tr>
+<td width="50%" bgcolor= "lightgreen" ><font size="+2"><div align="center"><b><i>IDL file</i></b></div></font></td>
+<td width="50%" bgcolor= "lightgreen"><font size="+2"><div align="center"><b><i>Python</i></b></div></font></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>string Value ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = Value ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void SetValue ( in string value )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>SetValue ( value )</b></div></td>
+</tr>
+</table><br>
+<table width="100%" BORDER>
+<tr bgcolor="#FFFFCC">
+<td colspan="11"><font size="+3"><b><div align="center"><i>interface AttributeTarget</i></div></b></font></td>
+</tr>
+<td width="50%" bgcolor= "lightgreen" ><font size="+2"><div align="center"><b><i>IDL file</i></b></div></font></td>
+<td width="50%" bgcolor= "lightgreen"><font size="+2"><div align="center"><b><i>Python</i></b></div></font></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void Add ( in SObject anObject )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>Add ( anObject )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>ListOfSObject Get ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = Get ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void Remove ( in SObject anObject )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>Remove ( anObject )</b></div></td>
+</tr>
+</table><br>
+<table width="100%" BORDER>
+<tr bgcolor="#FFFFCC">
+<td colspan="11"><font size="+3"><b><div align="center"><i>interface AttributeTableOfInteger</i></div></b></font></td>
+</tr>
+<td width="50%" bgcolor= "lightgreen" ><font size="+2"><div align="center"><b><i>IDL file</i></b></div></font></td>
+<td width="50%" bgcolor= "lightgreen"><font size="+2"><div align="center"><b><i>Python</i></b></div></font></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void SetTitle ( in string theTitle )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>SetTitle ( theTitle )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>string GetTitle ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetTitle ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void SetRowTitle ( in long theIndex, in string theTitle )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>SetRowTitle ( theIndex, theTitle )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void SetRowTitles ( in StringSeq theTitles )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>SetRowTitles ( theTitles )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>StringSeq GetRowTitles ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetRowTitles ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void SetColumnTitle ( in long theIndex, in string theTitle )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>SetColumnTitle ( theIndex, theTitle )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void SetColumnTitles ( in StringSeq theTitles )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>SetColumnTitles ( theTitles )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>StringSeq GetColumnTitles ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetColumnTitles ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void SetRowUnit ( in long theIndex, in string theUnit )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>SetRowUnit ( theIndex, theUnit )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void SetRowUnits ( in StringSeq theUnits )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>SetRowUnits ( theUnits )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>StringSeq GetRowUnits ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetRowUnits ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>long GetNbRows ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetNbRows ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>long GetNbColumns ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetNbColumns ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void AddRow ( in LongSeq theData )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>AddRow ( theData )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void SetRow ( in long theRow, in LongSeq theData )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>SetRow ( theRow, theData )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>LongSeq GetRow ( in long theRow )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetRow ( theRow )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void AddColumn ( in LongSeq theData )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>AddColumn ( theData )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void SetColumn ( in long theColumn, in LongSeq theData )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>SetColumn ( theColumn, theData )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>LongSeq GetColumn ( in long theColumn )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetColumn ( theColumn )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void PutValue ( in long theValue, in long theRow, in long theColumn )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>PutValue ( theValue, theRow, theColumn )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>boolean HasValue ( in long theRow, in long theColumn )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = HasValue ( theRow, theColumn )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>long GetValue ( in long theRow, in long theColumn )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetValue ( theRow, theColumn )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void SetNbColumns ( in long theNbColumns )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>SetNbColumns ( theNbColumns )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>LongSeq GetRowSetIndices ( in long theRow )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetRowSetIndices ( theRow )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>boolean ReadFromFile ( in TMPFile theStream )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = ReadFromFile ( theStream )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>TMPFile SaveToFile ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = SaveToFile ( )</b></div></td>
+</tr>
+</table><br>
+<table width="100%" BORDER>
+<tr bgcolor="#FFFFCC">
+<td colspan="11"><font size="+3"><b><div align="center"><i>interface AttributeTableOfReal</i></div></b></font></td>
+</tr>
+<td width="50%" bgcolor= "lightgreen" ><font size="+2"><div align="center"><b><i>IDL file</i></b></div></font></td>
+<td width="50%" bgcolor= "lightgreen"><font size="+2"><div align="center"><b><i>Python</i></b></div></font></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void SetTitle ( in string theTitle )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>SetTitle ( theTitle )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>string GetTitle ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetTitle ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void SetRowTitle ( in long theIndex, in string theTitle )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>SetRowTitle ( theIndex, theTitle )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void SetRowTitles ( in StringSeq theTitles )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>SetRowTitles ( theTitles )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>StringSeq GetRowTitles ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetRowTitles ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void SetColumnTitle ( in long theIndex, in string theTitle )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>SetColumnTitle ( theIndex, theTitle )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void SetColumnTitles ( in StringSeq theTitles )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>SetColumnTitles ( theTitles )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>StringSeq GetColumnTitles ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetColumnTitles ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void SetRowUnit ( in long theIndex, in string theUnit )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>SetRowUnit ( theIndex, theUnit )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void SetRowUnits ( in StringSeq theUnits )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>SetRowUnits ( theUnits )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>StringSeq GetRowUnits ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetRowUnits ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>long GetNbRows ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetNbRows ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>long GetNbColumns ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetNbColumns ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void AddRow ( in DoubleSeq theData )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>AddRow ( theData )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void SetRow ( in long theRow, in DoubleSeq theData )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>SetRow ( theRow, theData )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>DoubleSeq GetRow ( in long theRow )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetRow ( theRow )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void AddColumn ( in DoubleSeq theData )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>AddColumn ( theData )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void SetColumn ( in long theColumn, in DoubleSeq theData )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>SetColumn ( theColumn, theData )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>DoubleSeq GetColumn ( in long theColumn )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetColumn ( theColumn )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void PutValue ( in double theValue, in long theRow, in long theColumn )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>PutValue ( theValue, theRow, theColumn )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>boolean HasValue ( in long theRow, in long theColumn )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = HasValue ( theRow, theColumn )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>double GetValue ( in long theRow, in long theColumn )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetValue ( theRow, theColumn )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void SetNbColumns ( in long theNbColumns )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>SetNbColumns ( theNbColumns )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>LongSeq GetRowSetIndices ( in long theRow )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetRowSetIndices ( theRow )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>boolean ReadFromFile ( in TMPFile theStream )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = ReadFromFile ( theStream )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>TMPFile SaveToFile ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = SaveToFile ( )</b></div></td>
+</tr>
+</table><br>
+<table width="100%" BORDER>
+<tr bgcolor="#FFFFCC">
+<td colspan="11"><font size="+3"><b><div align="center"><i>interface AttributeTableOfString</i></div></b></font></td>
+</tr>
+<td width="50%" bgcolor= "lightgreen" ><font size="+2"><div align="center"><b><i>IDL file</i></b></div></font></td>
+<td width="50%" bgcolor= "lightgreen"><font size="+2"><div align="center"><b><i>Python</i></b></div></font></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void SetTitle ( in string theTitle )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>SetTitle ( theTitle )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>string GetTitle ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetTitle ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void SetRowTitle ( in long theIndex, in string theTitle )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>SetRowTitle ( theIndex, theTitle )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void SetRowTitles ( in StringSeq theTitles )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>SetRowTitles ( theTitles )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>StringSeq GetRowTitles ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetRowTitles ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void SetColumnTitle ( in long theIndex, in string theTitle )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>SetColumnTitle ( theIndex, theTitle )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void SetColumnTitles ( in StringSeq theTitles )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>SetColumnTitles ( theTitles )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>StringSeq GetColumnTitles ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetColumnTitles ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void SetRowUnit ( in long theIndex, in string theUnit )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>SetRowUnit ( theIndex, theUnit )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void SetRowUnits ( in StringSeq theUnits )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>SetRowUnits ( theUnits )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>StringSeq GetRowUnits ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetRowUnits ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>long GetNbRows ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetNbRows ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>long GetNbColumns ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetNbColumns ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void AddRow ( in StringSeq theData )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>AddRow ( theData )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void SetRow ( in long theRow, in StringSeq theData )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>SetRow ( theRow, theData )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>StringSeq GetRow ( in long theRow )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetRow ( theRow )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void AddColumn ( in StringSeq theData )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>AddColumn ( theData )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void SetColumn ( in long theColumn, in StringSeq theData )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>SetColumn ( theColumn, theData )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>StringSeq GetColumn ( in long theColumn )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetColumn ( theColumn )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void PutValue ( in string theValue, in long theRow, in long theColumn )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>PutValue ( theValue, theRow, theColumn )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>boolean HasValue ( in long theRow, in long theColumn )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = HasValue ( theRow, theColumn )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>string GetValue ( in long theRow, in long theColumn )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetValue ( theRow, theColumn )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void SetNbColumns ( in long theNbColumns )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>SetNbColumns ( theNbColumns )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>LongSeq GetRowSetIndices ( in long theRow )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetRowSetIndices ( theRow )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>boolean ReadFromFile ( in TMPFile theStream )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = ReadFromFile ( theStream )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>TMPFile SaveToFile ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = SaveToFile ( )</b></div></td>
+</tr>
+</table><br>
+<table width="100%" BORDER>
+<tr bgcolor="#FFFFCC">
+<td colspan="11"><font size="+3"><b><div align="center"><i>interface AttributeStudyProperties</i></div></b></font></td>
+</tr>
+<td width="50%" bgcolor= "lightgreen" ><font size="+2"><div align="center"><b><i>IDL file</i></b></div></font></td>
+<td width="50%" bgcolor= "lightgreen"><font size="+2"><div align="center"><b><i>Python</i></b></div></font></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void SetUserName ( in string theName )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>SetUserName ( theName )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>string GetUserName ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetUserName ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void SetCreationDate ( in long theMinute, in long theHour, in long theDay, in long theMonth, in long theYear )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>SetCreationDate ( theMinute, theHour, theDay, theMonth, theYear )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>boolean GetCreationDate ( out long theMinute, out long theHour, out long theDay, out long theMonth, out long theYear )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>[ return_value, theMinute, theHour, theDay, theMonth, theYear ] = GetCreationDate ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void SetCreationMode ( in string theMode )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>SetCreationMode ( theMode )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>string GetCreationMode ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetCreationMode ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void SetModified ( in long theModified )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>SetModified ( theModified )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>boolean IsModified ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = IsModified ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>long GetModified ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetModified ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void SetLocked ( in boolean theLocked )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>SetLocked ( theLocked )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>boolean IsLocked ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = IsLocked ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void SetModification ( in string theName, in long theMinute, in long theHour, in long theDay, in long theMonth, in long theYear )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>SetModification ( theName, theMinute, theHour, theDay, theMonth, theYear )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void GetModificationsList ( out StringSeq theNames, out LongSeq theMinutes, out LongSeq theHours, out LongSeq theDays, out LongSeq theMonths, out LongSeq theYears, in boolean theWithCreator )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>[ theNames, theMinutes, theHours, theDays, theMonths, theYears ] = GetModificationsList ( theWithCreator )</b></div></td>
+</tr>
+</table><br>
+<table width="100%" BORDER>
+<tr bgcolor="#FFFFCC">
+<td colspan="11"><font size="+3"><b><div align="center"><i>interface AttributePythonObject</i></div></b></font></td>
+</tr>
+<td width="50%" bgcolor= "lightgreen" ><font size="+2"><div align="center"><b><i>IDL file</i></b></div></font></td>
+<td width="50%" bgcolor= "lightgreen"><font size="+2"><div align="center"><b><i>Python</i></b></div></font></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void SetObject ( in string theSequence, in boolean IsScript )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>SetObject ( theSequence, IsScript )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>string GetObject ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetObject ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>boolean IsScript ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = IsScript ( )</b></div></td>
+</tr>
+</table><br>
+</b></HTML>
--- /dev/null
+<HTML><b>
+<table width="100%" BORDER>
+<tr bgcolor="#FFFFCC">
+<td colspan="11"><font size="+3"><b><div align="center"><i>interface Container</i></div></b></font></td>
+</tr>
+<td width="50%" bgcolor= "lightgreen" ><font size="+2"><div align="center"><b><i>IDL file</i></b></div></font></td>
+<td width="50%" bgcolor= "lightgreen"><font size="+2"><div align="center"><b><i>Python</i></b></div></font></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>Container start_impl ( in string ContainerName )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = start_impl ( ContainerName )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>Component load_impl ( in string nameToRegister, in string componentName )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = load_impl ( nameToRegister, componentName )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void remove_impl ( in Component component_i )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>remove_impl ( component_i )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void finalize_removal ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>finalize_removal ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void ping ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>ping ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>boolean Kill_impl ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = Kill_impl ( )</b></div></td>
+</tr>
+</table><br>
+<table width="100%" BORDER>
+<tr bgcolor="#FFFFCC">
+<td colspan="11"><font size="+3"><b><div align="center"><i>interface Component</i></div></b></font></td>
+</tr>
+<td width="50%" bgcolor= "lightgreen" ><font size="+2"><div align="center"><b><i>IDL file</i></b></div></font></td>
+<td width="50%" bgcolor= "lightgreen"><font size="+2"><div align="center"><b><i>Python</i></b></div></font></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void ping ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>ping ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void destroy ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>destroy ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>Container GetContainerRef ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetContainerRef ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void Names ( in string aGraphName, in string aNodeName )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>Names ( aGraphName, aNodeName )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>boolean Kill_impl ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = Kill_impl ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>boolean Stop_impl ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = Stop_impl ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>boolean Suspend_impl ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = Suspend_impl ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>boolean Resume_impl ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = Resume_impl ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>long CpuUsed_impl ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = CpuUsed_impl ( )</b></div></td>
+</tr>
+</table><br>
+</b></HTML>
--- /dev/null
+<HTML><b>
+<table width="100%" BORDER>
+<tr bgcolor="#FFFFCC">
+<td colspan="11"><font size="+3"><b><div align="center"><i>interface DataCatalog</i></div></b></font></td>
+</tr>
+<td width="50%" bgcolor= "lightgreen" ><font size="+2"><div align="center"><b><i>IDL file</i></b></div></font></td>
+<td width="50%" bgcolor= "lightgreen"><font size="+2"><div align="center"><b><i>Python</i></b></div></font></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>ListOfDataTypeName GetDataTypeList ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetDataTypeList ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>boolean isDerivedFrom ( in string type_in, in string type_out )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = isDerivedFrom ( type_in, type_out )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>string GetDataInterfaceRead ( in string type )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetDataInterfaceRead ( type )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>string GetDataInterfaceWrite ( in string type )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetDataInterfaceWrite ( type )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>ListOfDataTypeName GetDataTypeParents ( in string type )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetDataTypeParents ( type )</b></div></td>
+</tr>
+</table><br>
+</b></HTML>
--- /dev/null
+<HTML><b>
+</b></HTML>
--- /dev/null
+<HTML><b>
+<table width="100%" BORDER>
+<tr bgcolor="#FFFFCC">
+<td colspan="11"><font size="+3"><b><div align="center"><i>interface Acomponent</i></div></b></font></td>
+</tr>
+<td width="50%" bgcolor= "lightgreen" ><font size="+2"><div align="center"><b><i>IDL file</i></b></div></font></td>
+<td width="50%" bgcolor= "lightgreen"><font size="+2"><div align="center"><b><i>Python</i></b></div></font></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>ListOfInterfaces GetInterfaceList ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetInterfaceList ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>DefinitionInterface GetInterface ( in string interfacename )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetInterface ( interfacename )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>ListOfServices GetServiceList ( in string interfacename )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetServiceList ( interfacename )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>Service GetService ( in string interfacename, in string servicename )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetService ( interfacename, servicename )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>Service GetDefaultService ( in string interfacename )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetDefaultService ( interfacename )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>string GetPathPrefix ( in string machinename )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetPathPrefix ( machinename )</b></div></td>
+</tr>
+</table><br>
+<table width="100%" BORDER>
+<tr bgcolor="#FFFFCC">
+<td colspan="11"><font size="+3"><b><div align="center"><i>interface ModuleCatalog</i></div></b></font></td>
+</tr>
+<td width="50%" bgcolor= "lightgreen" ><font size="+2"><div align="center"><b><i>IDL file</i></b></div></font></td>
+<td width="50%" bgcolor= "lightgreen"><font size="+2"><div align="center"><b><i>Python</i></b></div></font></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void ping ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>ping ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>ListOfComputers GetComputerList ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetComputerList ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>string GetPathPrefix ( in string machinename )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetPathPrefix ( machinename )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>ListOfComponents GetComponentList ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetComponentList ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>ListOfIAPP_Affich GetComponentIconeList ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetComponentIconeList ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>ListOfComponents GetTypedComponentList ( in ComponentType component_type )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetTypedComponentList ( component_type )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>Acomponent GetComponent ( in string componentname )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetComponent ( componentname )</b></div></td>
+</tr>
+</table><br>
+</b></HTML>
--- /dev/null
+<HTML><b>
+<table width="100%" BORDER>
+<tr bgcolor="#FFFFCC">
+<td colspan="11"><font size="+3"><b><div align="center"><i>interface Components</i></div></b></font></td>
+</tr>
+<td width="50%" bgcolor= "lightgreen" ><font size="+2"><div align="center"><b><i>IDL file</i></b></div></font></td>
+<td width="50%" bgcolor= "lightgreen"><font size="+2"><div align="center"><b><i>Python</i></b></div></font></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void ping ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>ping ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>unsigned long add ( in Infos lesInfos )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = add ( lesInfos )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void remove ( in unsigned long id )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>remove ( id )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>unsigned long size ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = size ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>AllInfos getall ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = getall ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>AllInfos history ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = history ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void end ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>end ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void hello ( in unsigned long id )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>hello ( id )</b></div></td>
+</tr>
+</table><br>
+</b></HTML>
--- /dev/null
+<HTML><b>
+<table width="100%" BORDER>
+<tr bgcolor="#FFFFCC">
+<td colspan="11"><font size="+3"><b><div align="center"><i>interface RessourcesCatalog</i></div></b></font></td>
+</tr>
+<td width="50%" bgcolor= "lightgreen" ><font size="+2"><div align="center"><b><i>IDL file</i></b></div></font></td>
+<td width="50%" bgcolor= "lightgreen"><font size="+2"><div align="center"><b><i>Python</i></b></div></font></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>ListOfComputer GetComputerList ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetComputerList ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>ListOfContainerType GetContainerTypeList ( in string computer )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetContainerTypeList ( computer )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>computer_info GetComputerInfo ( in string computer )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetComputerInfo ( computer )</b></div></td>
+</tr>
+</table><br>
+</b></HTML>
--- /dev/null
+<HTML><b>
+<table width="100%" BORDER>
+<tr bgcolor="#FFFFCC">
+<td colspan="11"><font size="+3"><b><div align="center"><i>interface Session</i></div></b></font></td>
+</tr>
+<td width="50%" bgcolor= "lightgreen" ><font size="+2"><div align="center"><b><i>IDL file</i></b></div></font></td>
+<td width="50%" bgcolor= "lightgreen"><font size="+2"><div align="center"><b><i>Python</i></b></div></font></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void GetInterface ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>GetInterface ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>Component GetVisuGen ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetVisuGen ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void StopSession ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>StopSession ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>StatSession GetStatSession ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetStatSession ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void ping ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>ping ( )</b></div></td>
+</tr>
+</table><br>
+</b></HTML>
--- /dev/null
+<HTML><b>
+<table width="100%" BORDER>
+<tr bgcolor="#FFFFCC">
+<td colspan="11"><font size="+3"><b><div align="center"><i>interface TestComponent</i></div></b></font></td>
+</tr>
+<td width="50%" bgcolor= "lightgreen" ><font size="+2"><div align="center"><b><i>IDL file</i></b></div></font></td>
+<td width="50%" bgcolor= "lightgreen"><font size="+2"><div align="center"><b><i>Python</i></b></div></font></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>string Coucou ( in long L )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = Coucou ( L )</b></div></td>
+</tr>
+</table><br>
+</b></HTML>
--- /dev/null
+<HTML><b>
+<table width="100%" BORDER>
+<tr bgcolor="#FFFFCC">
+<td colspan="11"><font size="+3"><b><div align="center"><i>interface Solver</i></div></b></font></td>
+</tr>
+<td width="50%" bgcolor= "lightgreen" ><font size="+2"><div align="center"><b><i>IDL file</i></b></div></font></td>
+<td width="50%" bgcolor= "lightgreen"><font size="+2"><div align="center"><b><i>Python</i></b></div></font></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>boolean Connect ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>return_value = Connect ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void Start ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>Start ( )</b></div></td>
+</tr>
+<tr>
+<td bgcolor= "lightgreen"><div align="center"><b>void ReStart ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>ReStart ( )</b></div></td>
+</tr>
+</table><br>
+</b></HTML>
--- /dev/null
+<HTML><b>
+</b></HTML>
--- /dev/null
+# Doxyfile 1.3-rc1
+
+#---------------------------------------------------------------------------
+# General configuration options
+#---------------------------------------------------------------------------
+PROJECT_NAME = "SALOME v.1.4.1"
+PROJECT_NUMBER = id#1.1
+OUTPUT_DIRECTORY = ../
+OUTPUT_LANGUAGE = English
+EXTRACT_ALL = YES
+EXTRACT_PRIVATE = YES
+EXTRACT_STATIC = YES
+EXTRACT_LOCAL_CLASSES = YES
+HIDE_UNDOC_MEMBERS = NO
+HIDE_UNDOC_CLASSES = NO
+HIDE_FRIEND_COMPOUNDS = NO
+HIDE_IN_BODY_DOCS = NO
+BRIEF_MEMBER_DESC = YES
+REPEAT_BRIEF = NO
+ALWAYS_DETAILED_SEC = YES
+INLINE_INHERITED_MEMB = YES
+FULL_PATH_NAMES = NO
+STRIP_FROM_PATH =
+INTERNAL_DOCS = YES
+CASE_SENSE_NAMES = YES
+SHORT_NAMES = NO
+HIDE_SCOPE_NAMES = NO
+VERBATIM_HEADERS = YES
+SHOW_INCLUDE_FILES = YES
+JAVADOC_AUTOBRIEF = YES
+MULTILINE_CPP_IS_BRIEF = NO
+DETAILS_AT_TOP = NO
+INHERIT_DOCS = YES
+INLINE_INFO = YES
+SORT_MEMBER_DOCS = NO
+DISTRIBUTE_GROUP_DOC = NO
+TAB_SIZE = 5
+GENERATE_TODOLIST = YES
+GENERATE_TESTLIST = YES
+GENERATE_BUGLIST = YES
+GENERATE_DEPRECATEDLIST= YES
+ALIASES =
+ENABLED_SECTIONS =
+MAX_INITIALIZER_LINES = 25
+OPTIMIZE_OUTPUT_FOR_C = YES
+OPTIMIZE_OUTPUT_JAVA = YES
+SHOW_USED_FILES = NO
+#---------------------------------------------------------------------------
+# configuration options related to warning and progress messages
+#---------------------------------------------------------------------------
+QUIET = NO
+WARNINGS = YES
+WARN_IF_UNDOCUMENTED = YES
+WARN_FORMAT = "$file:$line: $text"
+WARN_LOGFILE = log.txt
+#---------------------------------------------------------------------------
+# configuration options related to the input files
+#---------------------------------------------------------------------------
+INPUT = ../../../share/salome/idl/SALOME_ModuleCatalog.idl \
+ ../../../share/salome/idl/SALOMEDS.idl \
+ ../../../share/salome/idl/SALOME_Exception.idl \
+ ../../../share/salome/idl/SALOMEDS_Attributes.idl \
+ ../../../share/salome/idl/SALOME_Session.idl \
+ ../../../share/salome/idl/SALOME_Component.idl \
+ ../../../share/salome/src/LifeCycleCORBA/SALOME_LifeCycleCORBA.hxx \
+ ../../../share/salome/src/NamingService/SALOME_NamingService.hxx \
+ ../../../share/salome/src/NamingService/SALOME_NamingService.cxx \
+ ../../../share/salome/src/LifeCycleCORBA/SALOME_LifeCycleCORBA.cxx
+FILE_PATTERNS =
+RECURSIVE = NO
+EXCLUDE =
+EXCLUDE_SYMLINKS = NO
+EXCLUDE_PATTERNS =
+EXAMPLE_PATH =
+EXAMPLE_PATTERNS =
+EXAMPLE_RECURSIVE = NO
+IMAGE_PATH = sources/
+INPUT_FILTER =
+FILTER_SOURCE_FILES = YES
+#---------------------------------------------------------------------------
+# configuration options related to source browsing
+#---------------------------------------------------------------------------
+SOURCE_BROWSER = NO
+INLINE_SOURCES = NO
+STRIP_CODE_COMMENTS = YES
+REFERENCED_BY_RELATION = NO
+REFERENCES_RELATION = YES
+#---------------------------------------------------------------------------
+# configuration options related to the alphabetical class index
+#---------------------------------------------------------------------------
+ALPHABETICAL_INDEX = NO
+COLS_IN_ALPHA_INDEX = 5
+IGNORE_PREFIX =
+#---------------------------------------------------------------------------
+# configuration options related to the HTML output
+#---------------------------------------------------------------------------
+GENERATE_HTML = YES
+HTML_OUTPUT = KERNEL
+HTML_FILE_EXTENSION = .html
+HTML_HEADER = sources/myheader.html
+HTML_FOOTER =
+HTML_STYLESHEET =
+HTML_ALIGN_MEMBERS = YES
+GENERATE_HTMLHELP = NO
+CHM_FILE =
+HHC_LOCATION =
+GENERATE_CHI = NO
+BINARY_TOC = YES
+TOC_EXPAND = YES
+DISABLE_INDEX = YES
+ENUM_VALUES_PER_LINE = 4
+GENERATE_TREEVIEW = YES
+TREEVIEW_WIDTH = 250
+#---------------------------------------------------------------------------
+# configuration options related to the LaTeX output
+#---------------------------------------------------------------------------
+GENERATE_LATEX = NO
+LATEX_OUTPUT = latex
+LATEX_CMD_NAME = latex
+MAKEINDEX_CMD_NAME = makeindex
+COMPACT_LATEX = NO
+PAPER_TYPE = a4wide
+EXTRA_PACKAGES =
+LATEX_HEADER =
+PDF_HYPERLINKS = NO
+USE_PDFLATEX = NO
+LATEX_BATCHMODE = NO
+#---------------------------------------------------------------------------
+# configuration options related to the RTF output
+#---------------------------------------------------------------------------
+GENERATE_RTF = NO
+RTF_OUTPUT = rtf
+COMPACT_RTF = NO
+RTF_HYPERLINKS = NO
+RTF_STYLESHEET_FILE =
+RTF_EXTENSIONS_FILE =
+#---------------------------------------------------------------------------
+# configuration options related to the man page output
+#---------------------------------------------------------------------------
+GENERATE_MAN = NO
+MAN_OUTPUT = man
+MAN_EXTENSION = .3
+MAN_LINKS = NO
+#---------------------------------------------------------------------------
+# configuration options related to the XML output
+#---------------------------------------------------------------------------
+GENERATE_XML = NO
+XML_SCHEMA =
+XML_DTD =
+#---------------------------------------------------------------------------
+# configuration options for the AutoGen Definitions output
+#---------------------------------------------------------------------------
+GENERATE_AUTOGEN_DEF = NO
+#---------------------------------------------------------------------------
+# configuration options related to the Perl module output
+#---------------------------------------------------------------------------
+GENERATE_PERLMOD = NO
+PERLMOD_LATEX = NO
+PERLMOD_PRETTY = YES
+PERLMOD_MAKEVAR_PREFIX =
+#---------------------------------------------------------------------------
+# Configuration options related to the preprocessor
+#---------------------------------------------------------------------------
+ENABLE_PREPROCESSING = YES
+MACRO_EXPANSION = YES
+EXPAND_ONLY_PREDEF = NO
+SEARCH_INCLUDES = YES
+INCLUDE_PATH =
+INCLUDE_FILE_PATTERNS =
+PREDEFINED =
+EXPAND_AS_DEFINED =
+SKIP_FUNCTION_MACROS = NO
+#---------------------------------------------------------------------------
+# Configuration::addtions related to external references
+#---------------------------------------------------------------------------
+TAGFILES =
+GENERATE_TAGFILE =
+ALLEXTERNALS = NO
+EXTERNAL_GROUPS = YES
+PERL_PATH = /usr/bin/perl
+#---------------------------------------------------------------------------
+# Configuration options related to the dot tool
+#---------------------------------------------------------------------------
+CLASS_DIAGRAMS = YES
+HIDE_UNDOC_RELATIONS = NO
+HAVE_DOT = YES
+CLASS_GRAPH = YES
+COLLABORATION_GRAPH = NO
+TEMPLATE_RELATIONS = YES
+INCLUDE_GRAPH = YES
+INCLUDED_BY_GRAPH = NO
+GRAPHICAL_HIERARCHY = YES
+DOT_IMAGE_FORMAT = jpg
+DOT_PATH =
+DOTFILE_DIRS =
+MAX_DOT_GRAPH_WIDTH = 1024
+MAX_DOT_GRAPH_HEIGHT = 1200
+GENERATE_LEGEND = NO
+DOT_CLEANUP = YES
+#---------------------------------------------------------------------------
+# Configuration::addtions related to the search engine
+#---------------------------------------------------------------------------
+SEARCHENGINE = NO
+CGI_NAME = search.cgi
+CGI_URL =
+DOC_URL =
+DOC_ABSPATH =
+BIN_ABSPATH = /usr/local/bin/
+EXT_DOC_PATHS =
--- /dev/null
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"><HTML>\r
+<HEAD>\r
+<!-- hennerik CVSweb $Revision$ -->\r
+<TITLE>Exemple</TITLE></HEAD>\r
+<BODY BGCOLOR="#eeeeee">\r
+<HR noshade><PRE>#%AttributeReal interface (creations/saving/restoring)%\r
+#%Methods : FindOrCreateAttribute, Value, SaveAs, SetValue, FindComponent, FindAttribute, Open%\r
+\r
+\r
+# create AttributeReal \r
+#=================================\r
+A = batchmode_geompy.myBuilder.FindOrCreateAttribute(batchmode_geompy.father, "AttributeReal")\r
+if A == None :\r
+ raise RuntimeError, "Can't create AttributeReal attribute"\r
+A = A._narrow(SALOMEDS.AttributeReal)\r
+A.SetValue(0.0001)\r
+if A.Value() != 0.0001:\r
+ raise RuntimeError, "Error : wrong value of AttributeReal"\r
+\r
+# save / restore study \r
+#=================================\r
+\r
+str= os.getenv("TmpDir")\r
+if str == None:\r
+ str = "/tmp"\r
+file = str+"/test.hdf"\r
+\r
+#file = "/tmp/ggg.hdf"\r
+\r
+print " ------- We will save to", file, "-----------"\r
+\r
+batchmode_geompy.myStudyManager.SaveAs(file, batchmode_geompy.myStudy)\r
+openedStudy=batchmode_geompy.myStudyManager.Open(file)\r
+\r
+if openedStudy == None:\r
+ raise RuntimeError, "Can't open saved study!"\r
+\r
+\r
+father = openedStudy.FindComponent("GEOM")\r
+if father is None:\r
+ raise RuntimeError, "Geom component is not found! Wrong study is opened." \r
+\r
+\r
+# find AttributeReal\r
+#=================================\r
+\r
+res,A=father.FindAttribute("AttributeReal")\r
+if res == 0 or A == None:\r
+ raise RuntimeError, "Error: not found AttributeReal"\r
+\r
+A = A._narrow(SALOMEDS.AttributeReal)\r
+if A.Value() != 0.0001:\r
+ raise RuntimeError, "Error : wrong value of AttributeReal"\r
+</PRE>
\ No newline at end of file
--- /dev/null
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"><HTML>\r
+<HEAD>\r
+<!-- hennerik CVSweb $Revision$ -->\r
+<TITLE>Example</TITLE></HEAD>\r
+<BODY BGCOLOR="#eeeeee">\r
+<HR noshade><PRE>#%AttributeExpandable interface(creations/saving/restoring)%\r
+#%SALOMEDS methods : SaveAs FindComponent FindAttribute Open%\r
+#%Attribute methods : SetExpandable IsExpandable%\r
+\r
+# create AttributeExpandable\r
+#===========================================================\r
+A = batchmode_geompy.myBuilder.FindOrCreateAttribute( batchmode_geompy.father, "AttributeExpandable")\r
+if A == None :\r
+ raise RuntimeError, "Can't create AttributeExpandable attribute"\r
+A = A._narrow(SALOMEDS.AttributeExpandable)\r
+\r
+if A == None :\r
+ raise RuntimeError, "Can't create AttributeExpandable attribute"\r
+\r
+A.SetExpandable(1)\r
+\r
+if A.IsExpandable() == 0:\r
+ "Error: wrong value of AttributeExpandable"\r
+\r
+\r
+# save / restore study \r
+#============================================================\r
+str= os.getenv("TmpDir")\r
+if str == None:\r
+ str = "/tmp"\r
+file = str+"/test.hdf"\r
+\r
+batchmode_geompy.myStudyManager.SaveAs(file, batchmode_geompy.myStudy)\r
+openedStudy = batchmode_geompy.myStudyManager.Open(file);\r
+\r
+if openedStudy == None:\r
+ raise RuntimeError, "Can't open saved study!"\r
+\r
+father = openedStudy.FindComponent("GEOM")\r
+if father is None:\r
+ raise RuntimeError, "Geom component is not found! Wrong study is opened." \r
+\r
+\r
+# find AttributeExpandable\r
+#============================================================\r
+\r
+res,A=father.FindAttribute("AttributeExpandable")\r
+if res == 0 or A == None:\r
+ raise RuntimeError, "Error: not found AttributeExpandable"\r
+\r
+A = A._narrow(SALOMEDS.AttributeExpandable)\r
+\r
+if A == None :\r
+ raise RuntimeError, "Can't create AttributeExpandable attribute"\r
+\r
+if A.IsExpandable() == 0:\r
+ "Error: wrong value of AttributeExpandable"\r
+\r
+</PRE>
\ No newline at end of file
--- /dev/null
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"><HTML>\r
+<HEAD>\r
+<!-- hennerik CVSweb $Revision$ -->\r
+<TITLE>Example</TITLE></HEAD>\r
+<BODY BGCOLOR="#eeeeee">\r
+<HR noshade><PRE>#%Test AttributeOpened (creations/saving/restoring)%\r
+#%SALOMEDS methods : FindOrCreateAttribute SaveAs, FindComponent, FindAttribute, Open%\r
+#%Attribute methods : SetOpened, IsOpened%\r
+\r
+# create AttributeOpened\r
+#===========================================================\r
+A = batchmode_geompy.myBuilder.FindOrCreateAttribute(batchmode_geompy.father, "AttributeOpened")\r
+if A == None :\r
+ raise RuntimeError, "Can't create AttributeOpened attribute"\r
+A = A._narrow(SALOMEDS.AttributeOpened)\r
+\r
+if A == None :\r
+ raise RuntimeError, "Can't create AttributeOpened attribute"\r
+\r
+A.SetOpened(1)\r
+\r
+if A.IsOpened() == 0:\r
+ "Error: wrong value of AttributeOpened"\r
+\r
+\r
+# save / restore study \r
+#============================================================\r
+str= os.getenv("TmpDir")\r
+if str == None:\r
+ str = "/tmp"\r
+file = str+"/test.hdf"\r
+\r
+batchmode_geompy.myStudyManager.SaveAs(file, batchmode_geompy.myStudy)\r
+openedStudy=batchmode_geompy.myStudyManager.Open(file);\r
+\r
+if openedStudy == None:\r
+ raise RuntimeError, "Can't open saved study!"\r
+\r
+father = openedStudy.FindComponent("GEOM")\r
+if father is None:\r
+ raise RuntimeError, "Geom component is not found! Wrong study is opened." \r
+\r
+\r
+# find AttributeOpened\r
+#============================================================\r
+\r
+res,A=father.FindAttribute("AttributeOpened")\r
+if res == 0 or A == None:\r
+ raise RuntimeError, "Error: not found AttributeOpened"\r
+\r
+A = A._narrow(SALOMEDS.AttributeOpened)\r
+\r
+if A == None :\r
+ raise RuntimeError, "Can't create AttributeOpened attribute"\r
+\r
+if A.IsOpened() == 0:\r
+ "Error: wrong value of AttributeOpened"\r
+\r
+</PRE>
\ No newline at end of file
--- /dev/null
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"><HTML>\r
+<HEAD>\r
+<!-- hennerik CVSweb $Revision$ -->\r
+<TITLE>Example</TITLE></HEAD>\r
+<BODY BGCOLOR="#eeeeee">\r
+<HR noshade><PRE>#%AttributeTextColor interface (creations/saving/restoring)%\r
+#%SALOMEDS methods : FindOrCreateAttribute, SaveAs, FindComponent, FindAttribute, Open%\r
+#%Attribute methods : SetTextColor TextColor%\r
+\r
+\r
+#--------------------------------------------------------------------------\r
+# create AttributeTextColor\r
+#===========================================================\r
+import SALOMEDS_Attributes_idl\r
+color = SALOMEDS_Attributes_idl._0_SALOMEDS.Color(234,345,231)\r
+\r
+A = batchmode_geompy.myBuilder.FindOrCreateAttribute(batchmode_geompy.father, "AttributeTextColor")\r
+\r
+if A == None :\r
+ raise RuntimeError, "Can't create AttributeTextColor attribute"\r
+A = A._narrow(SALOMEDS.AttributeTextColor)\r
+\r
+if A == None :\r
+ raise RuntimeError, "Can't create AttributeTextColor attribute"\r
+\r
+A.SetTextColor(color)\r
+\r
+c = A.TextColor();\r
+\r
+if c.R != 234 or c.G != 345 or c.B != 231:\r
+ print "Error: wrong value of AttributeTextColor"\r
+\r
+# save / restore study \r
+#============================================================\r
+str= os.getenv("TmpDir")\r
+if str == None:\r
+ str = "/tmp"\r
+file = str+"/test.hdf"\r
+\r
+batchmode_geompy.myStudyManager.SaveAs(file, batchmode_geompy.myStudy)\r
+openedStudy = batchmode_geompy.myStudyManager.Open(file);\r
+\r
+if openedStudy == None:\r
+ raise RuntimeError, "Can't open saved study!"\r
+\r
+father = openedStudy.FindComponent("GEOM")\r
+if father is None:\r
+ raise RuntimeError, "Geom component is not found! Wrong study is opened." \r
+\r
+\r
+# find AttributeTextColor\r
+#============================================================\r
+\r
+res,A=father.FindAttribute("AttributeTextColor")\r
+if res == 0 or A == None:\r
+ raise RuntimeError, "Error: not found AttributeTextColor"\r
+\r
+A = A._narrow(SALOMEDS.AttributeTextColor)\r
+\r
+if A == None :\r
+ raise RuntimeError, "Can't create AttributeTextColor attribute"\r
+\r
+c = A.TextColor();\r
+if c.R != 234 or c.G != 345 or c.B != 231:\r
+ print "Error: wrong value of AttributeTextColor"\r
+\r
+</PRE>
\ No newline at end of file
--- /dev/null
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"><HTML>\r
+<HEAD>\r
+<!-- hennerik CVSweb $Revision$ -->\r
+<TITLE>Example</TITLE></HEAD>\r
+<BODY BGCOLOR="#eeeeee">\r
+<HR noshade><PRE>#%Test AttributeTextHighlightColor interface(creations/saving/restoring)%\r
+#%SALOMEDS methods : FindOrCreateAttribute, SaveAs, FindComponent, FindAttribute, Open%\r
+#%Attribute methods : SetTextHighlightColor TextHighlightColor%\r
+\r
+#--------------------------------------------------------------------------\r
+# create AttributeTextHighlightColor\r
+#===========================================================\r
+\r
+import SALOMEDS_Attributes_idl\r
+highlightcolor=SALOMEDS_Attributes_idl._0_SALOMEDS.Color(256,256,256)\r
+\r
+A = batchmode_geompy.myBuilder.FindOrCreateAttribute(batchmode_geompy.father, "AttributeTextHighlightColor")\r
+\r
+if A == None :\r
+ raise RuntimeError, "Can't create AttributeTextHighlightColor attribute"\r
+A = A._narrow(SALOMEDS.AttributeTextHighlightColor)\r
+\r
+if A == None :\r
+ raise RuntimeError, "Can't create AttributeTextHighlightColor attribute"\r
+\r
+A.SetTextHighlightColor(highlightcolor)\r
+\r
+c = A.TextHighlightColor();\r
+if c.R != 256 or c.G != 256 or c.B != 256:\r
+ print "Error: wrong value of AttributeTextHighlightColor"\r
+\r
+\r
+# save / restore study \r
+#============================================================\r
+str= os.getenv("TmpDir")\r
+if str == None:\r
+ str = "/tmp"\r
+file = str+"/test.hdf"\r
+\r
+batchmode_geompy.myStudyManager.SaveAs(file, batchmode_geompy.myStudy)\r
+openedStudy=batchmode_geompy.myStudyManager.Open(file);\r
+\r
+if openedStudy == None:\r
+ raise RuntimeError, "Can't open saved study!"\r
+\r
+father = openedStudy.FindComponent("GEOM")\r
+if father is None:\r
+ raise RuntimeError, "Geom component is not found! Wrong study is opened." \r
+\r
+\r
+# find AttributeTextHighlightColor\r
+#============================================================\r
+\r
+res, A = father.FindAttribute("AttributeTextHighlightColor")\r
+print res, A\r
+if res == 0 or A == None:\r
+ raise RuntimeError, "Error: not found AttributeTextHighlightColor"\r
+\r
+A = A._narrow(SALOMEDS.AttributeTextHighlightColor)\r
+\r
+if A == None :\r
+ raise RuntimeError, "Can't create AttributeTextHighlightColor attribute"\r
+\r
+c = A.TextHighlightColor();\r
+\r
+if c.R != 256 or c.G != 256 or c.B != 256:\r
+ print "Error: wrong value of AttributeTextTextHighlightColor"\r
+</PRE>
\ No newline at end of file
--- /dev/null
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"><HTML>\r
+<HEAD>\r
+<!-- hennerik CVSweb $Revision$ -->\r
+<TITLE>Example</TITLE></HEAD>\r
+<BODY BGCOLOR="#eeeeee">\r
+<HR noshade><PRE>#%AttributePixMap interface (creations/saving/restoring)%\r
+#%SALOMEDS methods : FindOrCreateAttribute, SaveAs, FindComponent, FindAttribute, Open%\r
+#%Attribute methods : SetPixMap, GetPixMap%\r
+\r
+#--------------------------------------------------------------------------\r
+\r
+#--------------------------------------------------------------------------\r
+# create AttributePixMap\r
+#===============================\r
+A = batchmode_geompy.myBuilder.FindOrCreateAttribute(batchmode_geompy.father, "AttributePixMap")\r
+if A == None :\r
+ raise RuntimeError, "Can't create AttributePixMap attribute"\r
+aPixmap = A._narrow(SALOMEDS.AttributePixMap);\r
+aPixmap.SetPixMap( "ICON_OBJBROWSER_Geometry" );\r
+\r
+if aPixmap.GetPixMap() != "ICON_OBJBROWSER_Geometry":\r
+ print "Error: wrong value of AttributePixMap"\r
+\r
+\r
+# save / restore study \r
+#============================================================\r
+str= os.getenv("TmpDir")\r
+if str == None:\r
+ str = "/tmp"\r
+file = str+"/test.hdf"\r
+\r
+batchmode_geompy.myStudyManager.SaveAs(file, batchmode_geompy.myStudy)\r
+openedStudy = batchmode_geompy.myStudyManager.Open(file);\r
+\r
+if openedStudy == None:\r
+ raise RuntimeError, "Can't open saved study!"\r
+\r
+father = openedStudy.FindComponent("GEOM")\r
+if father is None:\r
+ raise RuntimeError, "Geom component is not found! Wrong study is opened." \r
+\r
+\r
+# find AttributePixMap\r
+#============================================================\r
+\r
+res,A=father.FindAttribute("AttributePixMap")\r
+if res == 0 or A == None:\r
+ raise RuntimeError, "Error: AttributePixMap not found "\r
+\r
+A = A._narrow(SALOMEDS.AttributePixMap)\r
+\r
+if A == None :\r
+ raise RuntimeError, "Can't create AttributePixMap attribute"\r
+\r
+if A.GetPixMap() != "ICON_OBJBROWSER_Geometry":\r
+ print "Error: wrong value of AttributePixMap"\r
+</PRE>
\ No newline at end of file
--- /dev/null
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"><HTML>\r
+<HEAD>\r
+<!-- hennerik CVSweb $Revision$ -->\r
+<TITLE>Example</TITLE></HEAD>\r
+<BODY BGCOLOR="#eeeeee">\r
+<HR noshade><PRE>#%AttributeLocalID interface(creations/saving/restoring)%\r
+#%SALOMEDS methods : FindOrCreateAttribute, SaveAs, FindComponent, FindAttribute, Open% \r
+#%Attribute methods : Value, SetValue%\r
+\r
+# create AttributeLocalID\r
+#=================================\r
+A = batchmode_geompy.myBuilder.FindOrCreateAttribute(batchmode_geompy.father, "AttributeLocalID")\r
+if A == None :\r
+ raise RuntimeError, "Can't create AttributeLocalID attribute"\r
+A = A._narrow(SALOMEDS.AttributeLocalID)\r
+\r
+A.SetValue(763242882)\r
+\r
+if A.Value() != 763242882:\r
+ print "Error: wrong value of AttributeLocalID"\r
+\r
+# save / restore study \r
+#=================================\r
+str= os.getenv("TmpDir")\r
+if str == None:\r
+ str = "/tmp"\r
+file = str+"/test.hdf"\r
+\r
+batchmode_geompy.myStudyManager.SaveAs(file, batchmode_geompy.myStudy)\r
+openedStudy = batchmode_geompy.myStudyManager.Open(file);\r
+\r
+if openedStudy == None:\r
+ raise RuntimeError, "Can't open saved study!"\r
+\r
+father = openedStudy.FindComponent("GEOM")\r
+if father is None:\r
+ raise RuntimeError, "Geom component is not found! Wrong study is opened." \r
+\r
+\r
+# find AttributeLocalID\r
+#=================================\r
+\r
+res,A=father.FindAttribute("AttributeLocalID")\r
+if res == 0 or A == None:\r
+ raise RuntimeError, "Error: not found AttributeLocalID"\r
+\r
+A = A._narrow(SALOMEDS.AttributeLocalID)\r
+\r
+if A.Value() != 763242882:\r
+ print "Error: wrong value of AttributeLocalID"\r
+</PRE>
\ No newline at end of file
--- /dev/null
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"><HTML>\r
+<HEAD>\r
+<!-- hennerik CVSweb $Revision$ -->\r
+<TITLE>Example</TITLE></HEAD>\r
+<BODY BGCOLOR="#eeeeee">\r
+<HR noshade><PRE>Methods : GetAvailableUndos, ChangeValue, FindOrCreateAttribute, SaveAs, GetAvailableRedos, Undo, FindComponent, Redo, FindAttribute, Open, CommitCommand, NewCommand\r
+\r
+\r
+dir= os.getenv("TmpDir")\r
+if dir == None:\r
+ dir = "/tmp"\r
+\r
+batchmode_geompy.myBuilder._set_UndoLimit(20)\r
+\r
+# 1st transaction -----------------------------------------\r
+batchmode_geompy.myBuilder.NewCommand()\r
+# create AttributeSequenceOfInteger \r
+#=========================================================\r
+A = batchmode_geompy.myBuilder.FindOrCreateAttribute(batchmode_geompy.father, "AttributeSequenceOfInteger")\r
+if A == None :\r
+ raise RuntimeError, "Can't create AttributeSequenceOfInteger attribute"\r
+A = A._narrow(SALOMEDS.AttributeSequenceOfInteger)\r
+if A == None :\r
+ raise RuntimeError, "Can't create AttributeSequenceOfInteger attribute"\r
+\r
+A.Add(100)\r
+A.Add(300)\r
+A.Add(500)\r
+A.Add(400)\r
+A.Add(700)\r
+print "First transaction goes on : HasOpenCommand() = ", batchmode_geompy.myBuilder.HasOpenCommand()\r
+batchmode_geompy.myBuilder.CommitCommand() #--------------\r
+\r
+# 2nd transaction ------------------------------------------\r
+batchmode_geompy.myBuilder.NewCommand() \r
+A.Remove(3)\r
+A.ChangeValue(4,500)\r
+batchmode_geompy.myBuilder.CommitCommand() #--------------\r
+\r
+if batchmode_geompy.myBuilder.GetAvailableUndos() == 0:\r
+ raise RuntimeError, "GetAvailableUndos() = 0 but must not !"\r
+\r
+if A.Length() != 4:\r
+ print "Wrong length of SequenceOfInteger"\r
+if A.Value(1) != 100 or A.Value(2) != 300 or A.Value(3) != 400 or A.Value(4) != 500:\r
+ raise RuntimeError, "Wrong value of AttributeSequenceOfInteger"\r
+\r
+file1 = dir + "/test1.hdf"\r
+batchmode_geompy.myStudyManager.SaveAs(file1, batchmode_geompy.myStudy)\r
+\r
+# 1st Undo ---------------------------------------\r
+batchmode_geompy.myBuilder.Undo()\r
+res, A = batchmode_geompy.myBuilder.FindAttribute(batchmode_geompy.father, "AttributeSequenceOfInteger")\r
+if A is None:\r
+ raise RuntimeError, "After first 'undo' can't find AttributeSequenceOfInteger"\r
+if A.Length() != 5:\r
+ print "Wrong length of SequenceOfInteger"\r
+if A.Value(1) != 100 or A.Value(2) != 300 or A.Value(3) != 500 or A.Value(4) != 400 or A.Value(5) != 700:\r
+ print A.Value(1), A.Value(2), A.Value(3), A.Value(4), A.Value(5)\r
+ raise RuntimeError, "Wrong value of AttributeSequenceOfInteger after the first 'undo'!"\r
+# save \r
+file2 = dir + "/test2.hdf"\r
+batchmode_geompy.myStudyManager.SaveAs(file2, batchmode_geompy.myStudy)\r
+#-------------------------------------------------\r
+# 2nd Undo ---------------------------------------\r
+batchmode_geompy.myBuilder.Undo()\r
+res, attr = batchmode_geompy.myBuilder.FindAttribute(batchmode_geompy.father, "AttributeSequenceOfInteger")\r
+if res !=0 or attr != None :\r
+ raise RuntimeError, "After the second 'undo' AttributeSequenceOfInteger exists but must not!"\r
+file3 = dir + "/test3.hdf"\r
+batchmode_geompy.myStudyManager.SaveAs(file3, batchmode_geompy.myStudy)\r
+#-------------------------------------------------\r
+\r
+#make redo twice ---------------------------------\r
+if batchmode_geompy.myBuilder.GetAvailableRedos() == 0:\r
+ raise RuntimeError, "GetAvailableRedos() = 0 but must not !"\r
+batchmode_geompy.myBuilder.Redo()\r
+batchmode_geompy.myBuilder.Redo()\r
+res, A = batchmode_geompy.myBuilder.FindAttribute(batchmode_geompy.father, "AttributeSequenceOfInteger")\r
+if res ==0 or A== None :\r
+ raise RuntimeError, "AttributeSequenceOfInteger is not found but must be!"\r
+if A.Length() != 4:\r
+ print "Wrong length of SequenceOfInteger"\r
+if A.Value(1) != 100 or A.Value(2) != 300 or A.Value(3) != 400 or A.Value(4) != 500:\r
+ raise RuntimeError, "Wrong value of AttributeSequenceOfInteger"\r
+\r
+\r
+#----------------------------------------------------------------------\r
+openedStudy=batchmode_geompy.myStudyManager.Open(file1);\r
+\r
+if openedStudy == None:\r
+ raise RuntimeError, "Can't open saved study!"\r
+\r
+\r
+father = openedStudy.FindComponent("GEOM")\r
+if father is None:\r
+ raise RuntimeError, "Geom component is not found! Wrong study is opened." \r
+\r
+\r
+# find AttributeSequenceOfInteger\r
+#======================================\r
+\r
+res,A=father.FindAttribute("AttributeSequenceOfInteger")\r
+if res == 0 or A == None:\r
+ raise RuntimeError, "Error: not found AttributeSequenceOfInteger"\r
+\r
+A = A._narrow(SALOMEDS.AttributeSequenceOfInteger)\r
+\r
+if A.Length() != 4:\r
+ print "Wrong length of SequenceOfInteger"\r
+if A.Value(1) != 100 or A.Value(2) != 300 or A.Value(3) != 400 or A.Value(4) != 500:\r
+ print "Wrong value of AttributeSequenceOfInteger"\r
+#----------------------------------------------------------------------\r
+openedStudy=batchmode_geompy.myStudyManager.Open(file2);\r
+\r
+if openedStudy == None:\r
+ raise RuntimeError, "Can't open saved study!"\r
+\r
+\r
+father = openedStudy.FindComponent("GEOM")\r
+if father is None:\r
+ raise RuntimeError, "Geom component is not found! Wrong study is opened." \r
+\r
+\r
+# find AttributeSequenceOfInteger\r
+#======================================\r
+\r
+res,A=father.FindAttribute("AttributeSequenceOfInteger")\r
+if res == 0 or A == None:\r
+ raise RuntimeError, "Error: not found AttributeSequenceOfInteger"\r
+\r
+A = A._narrow(SALOMEDS.AttributeSequenceOfInteger)\r
+\r
+if A.Length() != 5:\r
+ print "Wrong length of SequenceOfInteger"\r
+if A.Value(1) != 100 or A.Value(2) != 300 or A.Value(3) != 500 or A.Value(4) != 400 or A.Value(5) != 700:\r
+ raise RuntimeError, "Wrong value of AttributeSequenceOfInteger after the first 'undo'!"\r
+\r
+#----------------------------------------------------------------------\r
+openedStudy=batchmode_geompy.myStudyManager.Open(file3);\r
+\r
+if openedStudy == None:\r
+ raise RuntimeError, "Can't open saved study!"\r
+\r
+\r
+father = openedStudy.FindComponent("GEOM")\r
+if father is None:\r
+ raise RuntimeError, "Geom component is not found! Wrong study is opened." \r
+\r
+\r
+# find AttributeSequenceOfInteger\r
+#======================================\r
+\r
+res,A=father.FindAttribute("AttributeSequenceOfInteger")\r
+\r
+if res!=0 or A != None:\r
+ raise RuntimeError, " AttributeSequenceOfInteger is found but must not!"\r
+</PRE>
\ No newline at end of file
--- /dev/null
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"><HTML>\r
+<HEAD>\r
+<!-- hennerik CVSweb $Revision$ -->\r
+<TITLE>Example</TITLE></HEAD>\r
+<BODY BGCOLOR="#eeeeee">\r
+<HR noshade><PRE>#% Check methods : %\r
+SALOMEDS methods : RemoveAttribute, FindOrCreateAttribute, NewStudy, GetAllAttributes, NewCommand, CommitCommand, AbortCommand, NewComponent%\r
+\r
+batchmode_geompy.myBuilder._set_UndoLimit(20)\r
+\r
+batchmode_geompy.myBuilder.NewCommand() \r
+child = batchmode_geompy.myBuilder.NewObject(batchmode_geompy.father)\r
+batchmode_geompy.myBuilder.CommitCommand()\r
+\r
+batchmode_geompy.myBuilder.NewCommand() \r
+#==========================================================\r
+# create AttributeSequenceOfReal \r
+#==========================================================\r
+A = batchmode_geompy.myBuilder.FindOrCreateAttribute(child, "AttributeSequenceOfReal")\r
+if A == None :\r
+ raise RuntimeError, "Can't create AttributeSequenceOfReal attribute"\r
+A = A._narrow(SALOMEDS.AttributeSequenceOfReal)\r
+if A == None :\r
+ raise RuntimeError, "_narrow returns None instead of AttributeSequenceOfReal pointer"\r
+\r
+A.Add(0.0293)\r
+A.Add(522)\r
+A.Add(98234)\r
+A.Add(83.287)\r
+batchmode_geompy.myBuilder.CommitCommand()\r
+\r
+\r
+batchmode_geompy.myBuilder.NewCommand() \r
+#==========================================================\r
+# create AttributeInteger \r
+#==========================================================\r
+A = batchmode_geompy.myBuilder.FindOrCreateAttribute(child, "AttributeInteger")\r
+if A == None :\r
+ raise RuntimeError, "Can't create AttributeInteger attribute"\r
+A = A._narrow(SALOMEDS.AttributeInteger)\r
+A.SetValue(1000000)\r
+\r
+if A.Value() != 1000000:\r
+ raise RuntimeError, "Error : wrong value of AttributeInteger"\r
+\r
+batchmode_geompy.myBuilder.CommitCommand()\r
+\r
+batchmode_geompy.myBuilder.NewCommand() #===================\r
+# create AttributeName \r
+#===========================================================\r
+A = batchmode_geompy.myBuilder.FindOrCreateAttribute(child, "AttributeName")\r
+if A == None :\r
+ raise RuntimeError, "Can't create AttributeName attribute"\r
+A = A._narrow(SALOMEDS.AttributeName)\r
+\r
+if A == None :\r
+ raise RuntimeError, "Can't create AttributeName attribute"\r
+A.SetValue("AttributesTesting")\r
+\r
+if A.Value() != "AttributesTesting":\r
+ print "Wrong value of AttributeName" \r
+\r
+batchmode_geompy.myBuilder.CommitCommand()\r
+\r
+batchmode_geompy.myBuilder.NewCommand() #===================\r
+# create AttributeComment \r
+#===========================================================\r
+A = batchmode_geompy.myBuilder.FindOrCreateAttribute(child, "AttributeComment")\r
+if A == None :\r
+ raise RuntimeError, "Can't create AttributeComment attribute"\r
+A = A._narrow(SALOMEDS.AttributeComment)\r
+\r
+if A == None :\r
+ raise RuntimeError, "Can't create AttributeComment attribute"\r
+\r
+A.SetValue("GEOM")\r
+\r
+batchmode_geompy.myBuilder.AbortCommand()\r
+\r
+batchmode_geompy.myBuilder.NewCommand() #===================\r
+# create AttributePersistentRef \r
+#===========================================================\r
+A = batchmode_geompy.myBuilder.FindOrCreateAttribute(child, "AttributePersistentRef")\r
+if A == None :\r
+ raise RuntimeError, "Can't create AttributePersistentRef attribute"\r
+A = A._narrow(SALOMEDS.AttributePersistentRef)\r
+\r
+if A == None :\r
+ raise RuntimeError, "Can't create AttributePersistentRef attribute"\r
+\r
+A.SetValue("/tmp/test;1")\r
+batchmode_geompy.myBuilder.CommitCommand()\r
+\r
+batchmode_geompy.myBuilder.NewCommand() #===================================\r
+# create AttributeDrawable \r
+#===========================================================\r
+A = batchmode_geompy.myBuilder.FindOrCreateAttribute(child, "AttributeDrawable")\r
+if A == None :\r
+ raise RuntimeError, "Can't create AttributeDrawable attribute"\r
+A = A._narrow(SALOMEDS.AttributeDrawable)\r
+\r
+if A == None :\r
+ raise RuntimeError, "Can't create AttributeDrawable attribute"\r
+\r
+A.SetDrawable(1)\r
+\r
+if A.IsDrawable() == 0:\r
+ "Error: wrong value of AttributeDrawable"\r
+batchmode_geompy.myBuilder.CommitCommand()\r
+\r
+\r
+\r
+batchmode_geompy.myBuilder.NewCommand() #===================\r
+# create AttributeSelectable \r
+#===========================================================\r
+A = batchmode_geompy.myBuilder.FindOrCreateAttribute(child, "AttributeSelectable")\r
+if A == None :\r
+ raise RuntimeError, "Can't create AttributeSelectable attribute"\r
+A = A._narrow(SALOMEDS.AttributeSelectable)\r
+\r
+if A == None :\r
+ raise RuntimeError, "Can't create AttributeSelectable attribute"\r
+\r
+A.SetSelectable(1)\r
+\r
+if A.IsSelectable() == 0:\r
+ "Error: wrong value of AttributeSelectable"\r
+batchmode_geompy.myBuilder.CommitCommand()\r
+\r
+\r
+batchmode_geompy.myBuilder.NewCommand() #===================\r
+#===========================================================\r
+batchmode_geompy.myBuilder.RemoveAttribute(child,"AttributeSelectable")\r
+batchmode_geompy.myBuilder.CommitCommand()\r
+\r
+# Control the attributes \r
+#===========================================================\r
+\r
+res, A = batchmode_geompy.myBuilder.FindAttribute(child, "AttributeComment")\r
+print "res = ", res\r
+if A != None :\r
+ print " AttributeComment was found"\r
+else:\r
+ print " AttributeComment is not found. It's correct"\r
+\r
+attributes=[]\r
+ \r
+attributes = child.GetAllAttributes()\r
+\r
+length = len(attributes)\r
+\r
+print "Attributes number = ", length\r
+print attributes\r
+for i in range(0, length) :\r
+ attr = attributes[i]\r
+ if attr is None :\r
+ print i,"None item of object attributes list"\r
+\r
+if length != 5 :\r
+ raise RuntimeError, "Wrong number of attributes"\r
+\r
+</PRE>
\ No newline at end of file
--- /dev/null
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"><HTML>\r
+<HEAD>\r
+<!-- hennerik CVSweb $Revision$ -->\r
+<TITLE>Example</TITLE></HEAD>\r
+<BODY BGCOLOR="#eeeeee">\r
+<HR noshade><PRE>#%AttributeTreeNode interface(creations/saving/restoring)%\r
+#%SALOMEDS methods : FindOrCreateAttribute, NewObject%\r
+#%Attribute methods : HasFirst, HasFather, SetPrevious, Next, InsertAfter, GetFather, HasNext, SetValue, Append, NewStudy, Label, IsRoot, Prepend, SetFather, Depth, HasPrevious%\r
+\r
+child1 = batchmode_geompy.myBuilder.NewObject(batchmode_geompy.father)\r
+A = batchmode_geompy.myBuilder.FindOrCreateAttribute(child1,"AttributeName")\r
+if A == None :\r
+ raise RuntimeError, "Can't create AttributeName attribute"\r
+A = A._narrow(SALOMEDS.AttributeName)\r
+A.SetValue("N1")\r
+N1 = batchmode_geompy.myBuilder.FindOrCreateAttribute(child1, "AttributeTreeNode")\r
+if N1 == None :\r
+ raise RuntimeError, "Can't create AttributeTreeNode attribute"\r
+\r
+child2 = batchmode_geompy.myBuilder.NewObject(batchmode_geompy.father)\r
+A = batchmode_geompy.myBuilder.FindOrCreateAttribute(child2,"AttributeName")\r
+if A == None :\r
+ raise RuntimeError, "Can't create AttributeName attribute"\r
+A = A._narrow(SALOMEDS.AttributeName)\r
+A.SetValue("N2")\r
+N2 = batchmode_geompy.myBuilder.FindOrCreateAttribute(child2, "AttributeTreeNode")\r
+if N2 == None :\r
+ raise RuntimeError, "Can't create AttributeTreeNode attribute"\r
+\r
+child3 = batchmode_geompy.myBuilder.NewObject(batchmode_geompy.father)\r
+A = batchmode_geompy.myBuilder.FindOrCreateAttribute(child3,"AttributeName")\r
+if A == None :\r
+ raise RuntimeError, "Can't create AttributeName attribute"\r
+A = A._narrow(SALOMEDS.AttributeName)\r
+A.SetValue("N3")\r
+N3 = batchmode_geompy.myBuilder.FindOrCreateAttribute(child3, "AttributeTreeNode")\r
+if N3 == None :\r
+ raise RuntimeError, "Can't create AttributeTreeNode attribute"\r
+\r
+\r
+child11 = batchmode_geompy.myBuilder.NewObject(child1)\r
+A = batchmode_geompy.myBuilder.FindOrCreateAttribute(child11,"AttributeName")\r
+if A == None :\r
+ raise RuntimeError, "Can't create AttributeName attribute"\r
+A = A._narrow(SALOMEDS.AttributeName)\r
+A.SetValue("N11")\r
+\r
+N11 = batchmode_geompy.myBuilder.FindOrCreateAttribute(child11, "AttributeTreeNode")\r
+\r
+if N11 == None :\r
+ raise RuntimeError, "Can't create AttributeTreeNode attribute"\r
+\r
+child111 = batchmode_geompy.myBuilder.NewObject(child11)\r
+A = batchmode_geompy.myBuilder.FindOrCreateAttribute(child111, "AttributeName")\r
+if A == None :\r
+ raise RuntimeError, "Can't create AttributeName attribute"\r
+A = A._narrow(SALOMEDS.AttributeName)\r
+A.SetValue("N111")\r
+\r
+N111 = batchmode_geompy.myBuilder.FindOrCreateAttribute(child111, "AttributeTreeNode")\r
+\r
+if N111 == None :\r
+ raise RuntimeError, "Can't create AttributeTreeNode attribute"\r
+ \r
+\r
+child31 = batchmode_geompy.myBuilder.NewObject(child3)\r
+A = batchmode_geompy.myBuilder.FindOrCreateAttribute(child31,"AttributeName")\r
+if A == None :\r
+ raise RuntimeError, "Can't create AttributeName attribute"\r
+A = A._narrow(SALOMEDS.AttributeName)\r
+A.SetValue("N31")\r
+\r
+N31 = batchmode_geompy.myBuilder.FindOrCreateAttribute(child31, "AttributeTreeNode")\r
+if N31 == None :\r
+ raise RuntimeError, "Can't create AttributeTreeNode attribute"\r
+\r
+child32 = batchmode_geompy.myBuilder.NewObject(child3)\r
+A = batchmode_geompy.myBuilder.FindOrCreateAttribute(child32,"AttributeName")\r
+if A == None :\r
+ raise RuntimeError, "Can't create AttributeName attribute"\r
+A = A._narrow(SALOMEDS.AttributeName)\r
+A.SetValue("N32")\r
+\r
+N32 = batchmode_geompy.myBuilder.FindOrCreateAttribute(child32, "AttributeTreeNode")\r
+if N32 == None :\r
+ raise RuntimeError, "Can't create AttributeTreeNode attribute"\r
+\r
+child321 = batchmode_geompy.myBuilder.NewObject(child32)\r
+A = batchmode_geompy.myBuilder.FindOrCreateAttribute(child321,"AttributeName")\r
+if A == None :\r
+ raise RuntimeError, "Can't create AttributeName attribute"\r
+A = A._narrow(SALOMEDS.AttributeName)\r
+A.SetValue("N321")\r
+\r
+N321 = batchmode_geompy.myBuilder.FindOrCreateAttribute(child321, "AttributeTreeNode")\r
+if N321 == None :\r
+ raise RuntimeError, "Can't create AttributeTreeNode attribute"\r
+\r
+child33 = batchmode_geompy.myBuilder.NewObject(child3)\r
+A = batchmode_geompy.myBuilder.FindOrCreateAttribute(child33,"AttributeName")\r
+if A == None :\r
+ raise RuntimeError, "Can't create AttributeName attribute"\r
+A = A._narrow(SALOMEDS.AttributeName)\r
+A.SetValue("N33")\r
+\r
+N33 = batchmode_geompy.myBuilder.FindOrCreateAttribute(child33, "AttributeTreeNode")\r
+if N33 == None :\r
+ raise RuntimeError, "Can't create AttributeTreeNode attribute"\r
+\r
+child34 = batchmode_geompy.myBuilder.NewObject(child3)\r
+A = batchmode_geompy.myBuilder.FindOrCreateAttribute(child34,"AttributeName")\r
+if A == None :\r
+ raise RuntimeError, "Can't create AttributeName attribute"\r
+A = A._narrow(SALOMEDS.AttributeName)\r
+A.SetValue("N34")\r
+\r
+N34 = batchmode_geompy.myBuilder.FindOrCreateAttribute(child34, "AttributeTreeNode")\r
+if N34 == None :\r
+ raise RuntimeError, "Can't create AttributeTreeNode attribute"\r
+\r
+\r
+\r
+#Create links between tree nodes.\r
+# -| root\r
+# --N1 __\r
+# | N11__\r
+# | N111\r
+# --N2 \r
+# | \r
+# --N3__\r
+# N31\r
+# N32__\r
+# N321\r
+# N33\r
+# N34\r
+ \r
+N11.SetFather(N1)\r
+N11.Append(N111)\r
+N3.SetPrevious(N1)\r
+N3.Prepend(N2)\r
+\r
+N32.SetFather(N3)\r
+N32.Prepend(N31)\r
+N33.InsertAfter(N32)\r
+N33.Append(N34)\r
+print "------------- ", N1, " ------------- "\r
+print "N1.Label() = ", N1.Label() , "IsRoot() = ", N1.IsRoot(), "Depth() = ", N1.Depth()\r
+print "N11.Label() = ", N11.Label() , "IsRoot() = ", N11.IsRoot(), "Depth() = ", N11.Depth()\r
+print "N111.Label() = ", N111.Label() , "IsRoot() = ", N111.IsRoot(), "Depth() = ", N111.Depth()\r
+print "N2.Label() = ", N2.Label() , "IsRoot() = ", N2.IsRoot(), "Depth() = ", N2.Depth()\r
+print "N3.Label() = ", N3.Label() , "IsRoot() = ", N3.IsRoot(), "Depth() = ", N3.Depth()\r
+print "N31.Label() = ", N31.Label() , "IsRoot() = ", N31.IsRoot(), "Depth() = ", N31.Depth()\r
+print "N32.Label() = ", N32.Label() , "IsRoot() = ", N32.IsRoot(), "Depth() = ", N32.Depth()\r
+print "N321.Label() = ", N321.Label() , "IsRoot() = ", N321.IsRoot(), "Depth() = ", N321.Depth()\r
+print "N33.Label() = ", N33.Label() , "IsRoot() = ", N33.IsRoot(), "Depth() = ", N33.Depth()\r
+print "N34.Label() = ", N34.Label() , "IsRoot() = ", N34.IsRoot(), "Depth() = ", N34.Depth()\r
+print "N1.IsRoot()=", N1.IsRoot()\r
+\r
+print "N1.HasNext() = ",N1.HasNext()\r
+if N1.HasNext():\r
+ print N1.Next().Label()\r
+\r
+print "N32.HasPrevious() = ",N32.HasPrevious()\r
+if N32.HasPrevious():\r
+ print N32.GetPrevious().Label()\r
+\r
+print "N111.HasFirst()=",N111.HasFirst()\r
+print "N111.HasFather()=",N111.HasFather()\r
+if N111.HasFather() :\r
+ print "N111.GetFather().Label()=",N111.GetFather().Label()\r
+</PRE>
\ No newline at end of file
--- /dev/null
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"><HTML>\r
+<HEAD>\r
+<!-- hennerik CVSweb $Revision$ -->\r
+<TITLE>Exemple</TITLE></HEAD>\r
+<BODY BGCOLOR="#eeeeee">\r
+<HR noshade><PRE>\r
+#^ SALOMEDS methods : FindOrCreateAttribute, Save, SaveAs, Close, Open, FindComponent, FindAttribute, FindObject, LoadWith^\r
+#^ Attribute methods : Value, SetValue^\r
+#======================================================================\r
+#1. Create Study and add some components to it\r
+#======================================================================\r
+\r
+#=================================\r
+# create AttributeReal \r
+#=================================\r
+A = batchmode_geompy.myBuilder.FindOrCreateAttribute(batchmode_geompy.father, "AttributeReal")\r
+if A == None :\r
+ raise RuntimeError, "Can't create AttributeReal attribute"\r
+A = A._narrow(SALOMEDS.AttributeReal)\r
+A.SetValue(0.0001)\r
+if A.Value() != 0.0001:\r
+ raise RuntimeError, "Error : wrong value of AttributeReal"\r
+\r
+# === Geometry ==================================================\r
+\r
+import batchmode_geompy\r
+ \r
+#===================================\r
+# define a box\r
+#===================================\r
+\r
+box = batchmode_geompy.MakeBox(0., 0., 0., 100., 200., 300.)\r
+idbox = batchmode_geompy.addToStudy(box,"box")\r
+\r
+\r
+geom = batchmode_geompy.geom\r
+import SMESH\r
+import batchmode_smesh\r
+ShapeType = batchmode_smesh.ShapeType\r
+\r
+# ---- add first face of box in study\r
+\r
+subShapeList = batchmode_geompy.SubShapeAll(box,ShapeType["Face"])\r
+face=subShapeList[0]\r
+name = "box_face"\r
+print name\r
+idface= batchmode_geompy.addToStudyInFather(box,face,name)\r
+\r
+# ---- add shell from box in study\r
+\r
+subShellList= batchmode_geompy.SubShapeAll(box,ShapeType["Shell"])\r
+shell = subShellList[0]\r
+name = "box_shell"\r
+print name\r
+idshell= batchmode_geompy.addToStudyInFather(box,shell,name)\r
+\r
+# ---- add first edge of face in study\r
+\r
+edgeList = batchmode_geompy.SubShapeAll(face,ShapeType["Edge"])\r
+edge=edgeList[0];\r
+name = "face_edge"\r
+print name\r
+idedge= batchmode_geompy.addToStudyInFather(face,edge,name)\r
+\r
+# ---- launch SMESH, init a Mesh with the box\r
+\r
+smesh = batchmode_smesh.smesh\r
+# -- Init --\r
+shape = batchmode_geompy.IDToObject(idbox)\r
+mesh=smesh.Init(geom, batchmode_geompy.myStudyId, shape)\r
+\r
+orb = batchmode_geompy.orb\r
+\r
+idmesh = batchmode_smesh.AddNewMesh( orb.object_to_string(mesh) )\r
+batchmode_smesh.SetName(idmesh, "Meshbox");\r
+batchmode_smesh.SetShape(idbox, idmesh);\r
+\r
+# ---- create Hypothesis\r
+\r
+print "-------------------------- create Hypothesis ----------------------"\r
+print "-------------------------- LocalLength"\r
+hyp1 = smesh.CreateHypothesis("LocalLength", batchmode_geompy.myStudyId )\r
+hypLen1 = hyp1._narrow(SMESH.SMESH_LocalLength)\r
+hypLen1.SetLength(100)\r
+print hypLen1.GetName()\r
+print hypLen1.GetId()\r
+print hypLen1.GetLength()\r
+\r
+idlength = batchmode_smesh.AddNewHypothesis( orb.object_to_string(hypLen1) );\r
+batchmode_smesh.SetName(idlength, "Local_Length_100");\r
+\r
+print "-------------------------- NumberOfSegments"\r
+hyp2 = smesh.CreateHypothesis("NumberOfSegments", batchmode_geompy.myStudyId )\r
+hypNbSeg1=hyp2._narrow(SMESH.SMESH_NumberOfSegments)\r
+hypNbSeg1.SetNumberOfSegments(7)\r
+print hypNbSeg1.GetName()\r
+print hypNbSeg1.GetId()\r
+print hypNbSeg1.GetNumberOfSegments()\r
+\r
+idseg = batchmode_smesh.AddNewHypothesis( orb.object_to_string(hypNbSeg1) );\r
+batchmode_smesh.SetName(idseg, "NumberOfSegments_7");\r
+\r
+print "-------------------------- MaxElementArea"\r
+hyp3 = smesh.CreateHypothesis("MaxElementArea", batchmode_geompy.myStudyId)\r
+hypArea1=hyp3._narrow(SMESH.SMESH_MaxElementArea)\r
+hypArea1.SetMaxElementArea(2500)\r
+print hypArea1.GetName()\r
+print hypArea1.GetId()\r
+print hypArea1.GetMaxElementArea()\r
+\r
+idarea1 = batchmode_smesh.AddNewHypothesis( orb.object_to_string(hypArea1) );\r
+batchmode_smesh.SetName(idarea1, "MaxElementArea_2500");\r
+\r
+print "-------------------------- MaxElementArea"\r
+hyp3 = smesh.CreateHypothesis("MaxElementArea", batchmode_geompy.myStudyId)\r
+hypArea2 = hyp3._narrow(SMESH.SMESH_MaxElementArea)\r
+hypArea2.SetMaxElementArea(500)\r
+print hypArea2.GetName()\r
+print hypArea2.GetId()\r
+print hypArea2.GetMaxElementArea()\r
+\r
+idarea2 = batchmode_smesh.AddNewHypothesis( orb.object_to_string(hypArea2) );\r
+batchmode_smesh.SetName(idarea2, "MaxElementArea_500");\r
+\r
+print "-------------------------- Regular_1D"\r
+alg1 = smesh.CreateHypothesis("Regular_1D", batchmode_geompy.myStudyId)\r
+algo1 = alg1._narrow(SMESH.SMESH_Algo)\r
+listHyp = algo1.GetCompatibleHypothesis()\r
+for hyp in listHyp:\r
+ print hyp\r
+algoReg=alg1._narrow(SMESH.SMESH_Regular_1D)\r
+print algoReg.GetName()\r
+print algoReg.GetId()\r
+\r
+idreg = batchmode_smesh.AddNewAlgorithms( orb.object_to_string(algoReg) );\r
+batchmode_smesh.SetName(idreg, "Regular_1D");\r
+\r
+print "-------------------------- MEFISTO_2D"\r
+alg2 = smesh.CreateHypothesis("MEFISTO_2D", batchmode_geompy.myStudyId)\r
+algo2 = alg2._narrow(SMESH.SMESH_Algo)\r
+listHyp=algo2.GetCompatibleHypothesis()\r
+for hyp in listHyp:\r
+ print hyp\r
+algoMef=alg2._narrow(SMESH.SMESH_MEFISTO_2D)\r
+print algoMef.GetName()\r
+print algoMef.GetId()\r
+\r
+idmef = batchmode_smesh.AddNewAlgorithms( orb.object_to_string(algoMef) );\r
+batchmode_smesh.SetName(idmef, "MEFISTO_2D");\r
+\r
+\r
+# ---- add hypothesis to edge\r
+\r
+print "-------------------------- add hypothesis to edge"\r
+edge = batchmode_geompy.IDToObject(idedge)\r
+submesh = mesh.GetElementsOnShape(edge)\r
+ret = mesh.AddHypothesis(edge,algoReg)\r
+print ret\r
+ret=mesh.AddHypothesis(edge,hypLen1)\r
+print ret\r
+\r
+idsm1 = batchmode_smesh.AddSubMeshOnShape( idmesh,\r
+ idedge,\r
+ orb.object_to_string(submesh),\r
+ ShapeType["Edge"] )\r
+batchmode_smesh.SetName(idsm1, "SubMeshEdge")\r
+batchmode_smesh.SetAlgorithms( idsm1, idreg );\r
+batchmode_smesh.SetHypothesis( idsm1, idlength );\r
+\r
+print "-------------------------- add hypothesis to face"\r
+face=batchmode_geompy.IDToObject(idface)\r
+submesh=mesh.GetElementsOnShape(face)\r
+ret=mesh.AddHypothesis(face,hypArea2)\r
+print ret\r
+\r
+idsm2 = batchmode_smesh.AddSubMeshOnShape( idmesh,\r
+ idface,\r
+ orb.object_to_string(submesh),\r
+ ShapeType["Face"] )\r
+batchmode_smesh.SetName(idsm2, "SubMeshFace")\r
+batchmode_smesh.SetHypothesis( idsm2, idarea2 );\r
+\r
+# ---- add hypothesis to box\r
+\r
+print "-------------------------- add hypothesis to box"\r
+box=batchmode_geompy.IDToObject(idbox)\r
+submesh=mesh.GetElementsOnShape(box)\r
+ret=mesh.AddHypothesis(box,algoReg)\r
+print ret\r
+ret=mesh.AddHypothesis(box,hypNbSeg1)\r
+print ret\r
+ret=mesh.AddHypothesis(box,algoMef)\r
+print ret\r
+ret=mesh.AddHypothesis(box,hypArea1)\r
+print ret\r
+\r
+batchmode_smesh.SetAlgorithms( idmesh, idreg );\r
+batchmode_smesh.SetHypothesis( idmesh, idseg );\r
+batchmode_smesh.SetAlgorithms( idmesh, idmef );\r
+batchmode_smesh.SetHypothesis( idmesh, idarea1 );\r
+\r
+# ---- compute box\r
+\r
+print "-------------------------- compute box"\r
+ret=smesh.Compute(mesh,box)\r
+print ret\r
+log=mesh.GetLog(0); # no erase trace\r
+for linelog in log:\r
+ print linelog\r
+\r
+\r
+#=======================================================\r
+# add SuperVision component\r
+#=======================================================\r
+\r
+from batchmode_SuperV import *\r
+import os\r
+dir= os.getenv("SALOME_ROOT_DIR")\r
+if dir == None:\r
+ raise RuntimeError, "SALOME_ROOT_DIR is not defined"\r
+xmlfile = dir +"/../SALOME_ROOT/SuperVisionTest/resources/GraphEssai.xml"\r
+print "--------------\n"+xmlfile+"\n--------------\n"\r
+\r
+myGraph = Graph ( xmlfile )\r
+\r
+# This DataFlow is "valid" : no loop, correct links between Nodes etc...\r
+print myGraph.IsValid()\r
+\r
+# Get Nodes\r
+myGraph.PrintNodes()\r
+Add,Sub,Mul,Div = myGraph.Nodes()\r
+\r
+# Load Datas\r
+Addx = Add.Input("x",3.)\r
+Addy = Add.Input("y",4.5)\r
+Subx = Sub.Input("x",1.5)\r
+\r
+# Get Output Port\r
+Addz = Add.Port('z')\r
+Subz = Sub.Port('z')\r
+Mulz = Mul.Port('z')\r
+Divz = Div.Port('z')\r
+\r
+# This DataFlow is "executable" : all pending Ports are defined with Datas\r
+print myGraph.IsExecutable()\r
+\r
+# Starts only execution of that DataFlow and gets control immediatly\r
+print myGraph.Run()\r
+\r
+# That DataFlow is running ==> 0 (false)\r
+print myGraph.IsDone()\r
+\r
+# Events of execution :\r
+aStatus,aNode,anEvent,aState = myGraph.Event()\r
+while aStatus :\r
+ print aNode.Thread(),aNode.SubGraph(),aNode.Name(),anEvent,aState\r
+ aStatus,aNode,anEvent,aState = myGraph.Event()\r
+print myGraph.IsDone()\r
+\r
+# Wait for Completion (but it is already done after event loop ...)\r
+print "Done : ",myGraph.DoneW()\r
+\r
+# Get result\r
+print "Result : ",Divz.ToString()\r
+\r
+# Intermediate results :\r
+print "Intermediate Result Add\z : ",Addz.ToString()\r
+print "Intermediate Result Sub\z : ",Subz.ToString()\r
+print "Intermediate Result Mul\z : ",Mulz.ToString()\r
+\r
+print " "\r
+#print "Type : print myGraph.IsDone()"\r
+#print " If execution is finished ==> 1 (true)"\r
+res=myGraph.IsDone()\r
+if res != 1:\r
+ raise RuntimeError, "myGraph.Run() is not done"\r
+\r
+print " "\r
+print "Type : print Divz.ToString()"\r
+print " You will get the result"\r
+Divz.ToString()\r
+\r
+print " "\r
+print "Type : myGraph.PrintPorts()"\r
+print " to see input and output values of the graph"\r
+myGraph.PrintPorts()\r
+\r
+print " "\r
+print "Type : Add.PrintPorts()"\r
+Add.PrintPorts()\r
+\r
+print "Type : Sub.PrintPorts()"\r
+Sub.PrintPorts()\r
+\r
+print "Type : Mul.PrintPorts()"\r
+Mul.PrintPorts()\r
+\r
+print "Type : Div.PrintPorts()"\r
+print " to see input and output values of nodes"\r
+Div.PrintPorts()\r
+\r
+# Export will create newsupervisionexample.xml and the corresponding .py file\r
+tmpdir=os.getenv("TmpDir")\r
+if tmpdir is None:\r
+ tmpdir="/tmp"\r
+file = tmpdir + "/newsupervisionexample"\r
+print "--------------\n"+file+"\n--------------\n"\r
+myGraph.Export(file)\r
+\r
+ior = batchmode_geompy.orb.object_to_string(myGraph.G)\r
+addStudy(ior)\r
+\r
+GraphName = myGraph.Name()\r
+print "Befor save ",\r
+nodes = myGraph.Nodes()\r
+length_bs = len(nodes)\r
+print "ListOfNodes length = ", length_bs\r
+names=[]\r
+for node in nodes:\r
+ names.append(node.Name())\r
+print names\r
+\r
+\r
+#=================================\r
+# save / restore study \r
+#=================================\r
+str= os.getenv("TmpDir")\r
+if str == None: \r
+ str = "/tmp"\r
+file = str+"/test.hdf"\r
+\r
+\r
+#==================================================\r
+#1. SaveAs\r
+#==================================================\r
+print " ------- We will save to", file, "-----------"\r
+\r
+batchmode_geompy.myStudyManager.SaveAs(file, batchmode_geompy.myStudy)\r
+batchmode_geompy.myStudyManager.Close(batchmode_geompy.myStudy)\r
+\r
+#rename the file and try to reread it again\r
+\r
+os.mkdir(str + "/test_dir")\r
+\r
+#2.==================================================\r
+print " ------- We rename the file as " + str + "/test_dir/test_new.hdf"\r
+os.rename(file, str+"/test_dir/test_new.hdf")\r
+\r
+#==================================================\r
+#3. Open\r
+#==================================================\r
+print " ------- We try to open " + str + "/test_dir/test_new.hdf"\r
+\r
+try:\r
+ openedStudy=batchmode_geompy.myStudyManager.Open(str+"/test_dir/test_new.hdf")\r
+except Exception:\r
+ raise RuntimeError, "Can't open saved study!"\r
+\r
+if openedStudy == None:\r
+ raise RuntimeError, "Can't open saved study!"\r
+\r
+father = openedStudy.FindComponent("GEOM")\r
+if father is None:\r
+ raise RuntimeError, "GEOM component is not found! Wrong study is opened." \r
+\r
+\r
+#=================================\r
+# find AttributeReal\r
+#=================================\r
+\r
+res,A=father.FindAttribute("AttributeReal")\r
+if res == 0 or A == None:\r
+ raise RuntimeError, "Error: not found AttributeReal"\r
+\r
+A = A._narrow(SALOMEDS.AttributeReal)\r
+if A.Value() != 0.0001:\r
+ raise RuntimeError, "Error : wrong value of AttributeReal"\r
+\r
+#==================================================\r
+# find box\r
+#==================================================\r
+box = openedStudy.FindObject("box")\r
+if box is None :\r
+ raise RuntimeError, "box was not found! Wrong study is opened."\r
+\r
+edge=openedStudy.FindObject("face_edge")\r
+if edge is None :\r
+ raise RuntimeError, "face_edge was not found! Wrong study is opened."\r
+\r
+\r
+father = openedStudy.FindComponent("MESH")\r
+if father is None:\r
+ raise RuntimeError, "MESH component is not found! Wrong study is opened." \r
+\r
+hp=openedStudy.FindObject("Meshbox")\r
+if hp is None:\r
+ raise RuntimeError, "Meshbox object was not found! Wrong study is opened."\r
+\r
+hp = openedStudy.FindObject("Algorithms Definition")\r
+if hp is None:\r
+ raise RuntimeError, "Algorithms Definition object was not found! Wrong study is opened."\r
+\r
+hp = openedStudy.FindObject("MEFISTO_2D")\r
+if hp is None:\r
+ raise RuntimeError, "MEFISTO_2D object was not found! Wrong study is opened."\r
+\r
+hp = openedStudy.FindObject("Hypothesis Definition")\r
+if hp is None:\r
+ raise RuntimeError, "Algoriths Definition was not found! Wrong study is opened."\r
+\r
+#==================================================\r
+# Find Supervisor\r
+#==================================================\r
+father = openedStudy.FindComponent("SUPERV")\r
+if father is None: \r
+ raise RuntimeError, "SUPERV component is not found! Wrong study is opened." \r
+\r
+SuperV = lcc.FindOrLoadComponent("SuperVisionContainer","Supervision")\r
+Builder = openedStudy.NewBuilder()\r
+Builder.LoadWith(father, SuperV)\r
+import SALOMEDS\r
+\r
+aChildIterator = openedStudy.NewChildIterator(father)\r
+\r
+#while aChildIterator.More():\r
+anSObject = aChildIterator.Value()\r
+#print "iterate: ", anSObject.GetID()\r
+res, anAttr=anSObject.FindAttribute("AttributeIOR")\r
+if res :\r
+ anAttr=anAttr._narrow(SALOMEDS.AttributeIOR)\r
+ ior = anAttr.Value()\r
+ Graph=SuperV.getGraph(ior)\r
+ ListOfNodes=Graph.Nodes()\r
+ length_as= len(ListOfNodes)\r
+ print "ListOfNodes length = ", length_as\r
+ if length_as != length_bs:\r
+ raise RuntimeErrror, "defferent length of nodes after study open"\r
+#aChildIterator.Next()\r
+\r
+Names = []\r
+for node in ListOfNodes:\r
+ Names.append(node.Name())\r
+names.sort()\r
+Names.sort()\r
+if names != Names :\r
+ raise RuntimeError, "List of dataflow nodes after save differs from one befor save operation"\r
+\r
+#==================================================\r
+#4. Save\r
+#==================================================\r
+batchmode_geompy.myStudyManager.Save(openedStudy)\r
+batchmode_geompy.myStudyManager.Close(openedStudy)\r
+#==================================================\r
+#5. Open\r
+#==================================================\r
+try:\r
+ openedStudy = batchmode_geompy.myStudyManager.Open(str+"/test_dir/test_new.hdf")\r
+except Exception:\r
+ raise RuntimeError, "Can't open saved study!"\r
+\r
+\r
+\r
+if openedStudy == None:\r
+ raise RuntimeError, "Can't open saved study!"\r
+\r
+father = openedStudy.FindComponent("GEOM")\r
+if father is None:\r
+ raise RuntimeError, "Geom component is not found! Wrong study is opened." \r
+\r
+\r
+#find AttributeReal\r
+res,A=father.FindAttribute("AttributeReal")\r
+if res == 0 or A == None:\r
+ raise RuntimeError, "Error: not found AttributeReal"\r
+\r
+A = A._narrow(SALOMEDS.AttributeReal)\r
+if A.Value() != 0.0001:\r
+ raise RuntimeError, "Error : wrong value of AttributeReal"\r
+#==================================================\r
+# find box\r
+#==================================================\r
+box = openedStudy.FindObject("box")\r
+if box is None :\r
+ raise RuntimeError, "box was not found! Wrong study is opened."\r
+\r
+edge=openedStudy.FindObject("face_edge")\r
+if edge is None :\r
+ raise RuntimeError, "face_edge was not found! Wrong study is opened."\r
+\r
+\r
+father = openedStudy.FindComponent("MESH")\r
+if father is None:\r
+ raise RuntimeError, "MESH component is not found! Wrong study is opened." \r
+\r
+hp=openedStudy.FindObject("Meshbox")\r
+if hp is None:\r
+ raise RuntimeError, "Meshbox object was not found! Wrong study is opened."\r
+\r
+hp = openedStudy.FindObject("Algorithms Definition")\r
+if hp is None:\r
+ raise RuntimeError, "Algorithms Definition object was not found! Wrong study is opened."\r
+\r
+hp = openedStudy.FindObject("MEFISTO_2D")\r
+if hp is None:\r
+ raise RuntimeError, "MEFISTO_2D object was not found! Wrong study is opened."\r
+\r
+hp = openedStudy.FindObject("Hypothesis Definition")\r
+if hp is None:\r
+ raise RuntimeError, "Algoriths Definition was not found! Wrong study is opened."\r
+\r
+#==================================================\r
+# Find Supervisor\r
+#==================================================\r
+father = openedStudy.FindComponent("SUPERV")\r
+if father is None:\r
+ raise RuntimeError, "SUPERV component is not found! Wrong study is opened." \r
+\r
+SuperV = lcc.FindOrLoadComponent("SuperVisionContainer","Supervision")\r
+Builder = openedStudy.NewBuilder()\r
+Builder.LoadWith(father, SuperV)\r
+import SALOMEDS\r
+\r
+aChildIterator = openedStudy.NewChildIterator(father)\r
+\r
+#while aChildIterator.More():\r
+anSObject = aChildIterator.Value()\r
+\r
+res, anAttr=anSObject.FindAttribute("AttributeIOR")\r
+if res :\r
+ anAttr=anAttr._narrow(SALOMEDS.AttributeIOR)\r
+ ior = anAttr.Value()\r
+ Graph=SuperV.getGraph(ior)\r
+ ListOfNodes=Graph.Nodes()\r
+ length_as= len(ListOfNodes)\r
+ print "ListOfNodes length = ", length_as\r
+ if length_as != length_bs:\r
+ raise RuntimeErrror, "defferent length of nodes after study open"\r
+#aChildIterator.Next()\r
+\r
+Names = []\r
+for node in ListOfNodes:\r
+ Names.append(node.Name())\r
+names.sort()\r
+Names.sort()\r
+if names != Names :\r
+ raise RuntimeError, "List of dataflow nodes after save differs from one befor save operation"\r
+</PRE>
\ No newline at end of file
--- /dev/null
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"><HTML>\r
+<HEAD>\r
+<!-- hennerik CVSweb $Revision$ -->\r
+<TITLE>Example</TITLE></HEAD>\r
+<BODY BGCOLOR="#eeeeee">\r
+<HR noshade><PRE>#%AttributeInteger interface(creation/saving/restoring)%\r
+#%Methods : FindOrCreateAttribute , Value, SaveAs, SetValue, FindComponent, FindAttribute, Open%\r
+\r
+# create AttributeInteger \r
+#=================================\r
+A = batchmode_geompy.myBuilder.FindOrCreateAttribute(batchmode_geompy.father, "AttributeInteger")\r
+if A == None :\r
+ raise RuntimeError, "Can't create AttributeInteger attribute"\r
+A = A._narrow(SALOMEDS.AttributeInteger)\r
+A.SetValue(1000000)\r
+\r
+if A.Value() != 1000000:\r
+ raise RuntimeError, "Error : wrong value of AttributeInteger"\r
+\r
+# save and restore the study\r
+#=================================\r
+str= os.getenv("TmpDir")\r
+if str == None:\r
+ str = "/tmp"\r
+# ... save ...\r
+batchmode_geompy.myStudyManager.SaveAs(str+"/test.hdf", batchmode_geompy.myStudy)\r
+# ... open ...\r
+openedStudy= batchmode_geompy.myStudyManager.Open(str+"/test.hdf");\r
+\r
+if openedStudy == None:\r
+ raise RuntimeError, "Can't open saved study!"\r
+\r
+\r
+father = openedStudy.FindComponent("GEOM")\r
+if father is None:\r
+ raise RuntimeError, "Geom component is not found! Wrong study is opened." \r
+\r
+# find AttributeInteger\r
+#================================\r
+res,A=father.FindAttribute("AttributeInteger")\r
+if res == 0 or A == None:\r
+ raise RuntimeError, "Error: not found AttributeInteger"\r
+A = A._narrow(SALOMEDS.AttributeInteger)\r
+if A.Value() != 1000000:\r
+ raise RuntimeError, "Error : wrong value of AttributeInteger after study restoring"\r
+</PRE>
\ No newline at end of file
--- /dev/null
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"><HTML>\r
+<HEAD>\r
+<!-- hennerik CVSweb $Revision$ -->\r
+<TITLE>Exemple</TITLE></HEAD>\r
+<BODY BGCOLOR="#eeeeee">\r
+<HR noshade><PRE>\r
+#^SALOMEDS methods : FindOrCreateAttribute, SaveAs, FindComponent, FindAttribute, NewCommand, GetProperties, Open, CommitCommand, NewBuilder^\r
+#^Attribute methods : SetLocked, IsLocked, GetCreationMode, SetCreationDate, IsModified, GetUserName, Value, SetUserName, SetValue, GetCreationDate^\r
+\r
+batchmode_geompy.myBuilder._set_UndoLimit(20)\r
+\r
+#--------------------------------------------------------------------------\r
+# create AttributeReal \r
+#===============================================\r
+A = batchmode_geompy.myBuilder.FindOrCreateAttribute(batchmode_geompy.father, "AttributeReal")\r
+if A == None :\r
+ raise RuntimeError, "Can't create AttributeReal attribute"\r
+A = A._narrow(SALOMEDS.AttributeReal)\r
+A.SetValue(0.0001)\r
+if A.Value() != 0.0001:\r
+ raise RuntimeError, "Error : wrong value of AttributeReal"\r
+\r
+# create AttributeStudyProperties\r
+#================================================\r
+A = batchmode_geompy.myStudy.GetProperties()\r
+if A == None :\r
+ raise RuntimeError, "Can't create AttributeStudyProperties attribute"\r
+A = A._narrow(SALOMEDS.AttributeStudyProperties)\r
+\r
+batchmode_geompy.myBuilder.NewCommand();\r
+print "A.GetUserName()= ", A.GetUserName()\r
+res,mm,hh,dd,mnth,yy=A.GetCreationDate()\r
+print "A.GetCreationDate() = ", mm,hh,dd,mnth,yy\r
+print "A.GetCreationMode() = ", A.GetCreationMode()\r
+print "A.IsModified() = ", A.IsModified()\r
+print "A.IsLocked() = ", A.IsLocked()\r
+if A.IsLocked() == 0 :\r
+ A.SetUserName("tester"); print 'A.SetUserName("tester"), A.GetUserName() = ', A.GetUserName()\r
+ A.SetCreationDate(11,11,11,11,2002); print 'A.SetCreationDate(11,11,11,11,2002), A.GetCreationDate() =', A.GetCreationDate()\r
+ print "A.IsModified() = ", A.IsModified()\r
+A.SetLocked(1)\r
+\r
+#check the transaction result \r
+batchmode_geompy.myBuilder.CommitCommand()\r
+if A.GetUserName() != "tester":\r
+ print 'Control after transaction close : A.GetUserName() = ', A.GetUserName()\r
+ raise RuntimeError, "Field 'UserName' was not modified but had to!"\r
+\r
+# try to make some changes wrapped by transaction \r
+#================================================\r
+batchmode_geompy.myBuilder.NewCommand()\r
+A = batchmode_geompy.myBuilder.FindOrCreateAttribute(batchmode_geompy.father, "AttributeInteger")\r
+\r
+if A == None :\r
+ raise RuntimeError, "Can't create AttributeInteger attribute"\r
+A = A._narrow(SALOMEDS.AttributeInteger)\r
+A.SetValue(1000000)\r
+\r
+exception_was = None\r
+try : batchmode_geompy.myBuilder.CommitCommand()\r
+except Exception: exception_was = 1\r
+\r
+if exception_was is None:\r
+ raise RuntimeError, "Study was locked for changes but CommitCommand did not generate an exception !"\r
+\r
+# save / restore study \r
+\r
+#================================================\r
+str= os.getenv("TmpDir")\r
+if str == None:\r
+ str = "/tmp"\r
+file = str+"/test.hdf"\r
+\r
+print " ------- We will save to", file, "-----------"\r
+\r
+batchmode_geompy.myStudyManager.SaveAs(file, batchmode_geompy.myStudy)\r
+\r
+\r
+#--------------------------------------------------------------------------#\r
+#--------------------------- Open file ------------------------------------# \r
+#--------------------------------------------------------------------------#\r
+\r
+print" -------------- Open " + file + "-------------- " \r
+\r
+openedStudy = batchmode_geompy.myStudyManager.Open(file)\r
+if openedStudy == None:\r
+ raise RuntimeError, "Can't open saved study!"\r
+\r
+father = openedStudy.FindComponent("GEOM")\r
+if father is None:\r
+ raise RuntimeError, "Geom component is not found! Wrong study is opened." \r
+\r
+\r
+#1. find AttributeReal\r
+#================================================\r
+\r
+res,A=father.FindAttribute("AttributeReal")\r
+if res == 0 or A == None:\r
+ raise RuntimeError, "Error: not found AttributeReal"\r
+\r
+A = A._narrow(SALOMEDS.AttributeReal)\r
+if A.Value() != 0.0001:\r
+ raise RuntimeError, "Error : wrong value of AttributeReal"\r
+ \r
+\r
+#2. find AttributeStudyProperties\r
+#=================================================\r
+A=openedStudy.GetProperties()\r
+if res == 0 or A == None:\r
+ raise RuntimeError, "Error: not found AttributeStudyProperties"\r
+\r
+A = A._narrow(SALOMEDS.AttributeStudyProperties)\r
+if A.IsLocked() == 0 :\r
+ raise RuntimeError, "Error : AttributeStudyProperties must have Locked flag but have no!"\r
+\r
+#get the builder\r
+myBuilder = openedStudy.NewBuilder()\r
+\r
+#3. try to make some changes wrapped by transaction \r
+#==================================================\r
+exception_was = None\r
+try : \r
+ myBuilder.NewCommand()\r
+ A = myBuilder.FindOrCreateAttribute(father, "AttributeInteger")\r
+\r
+ if A == None :\r
+ raise RuntimeError, "Can't create AttributeInteger attribute"\r
+ A = A._narrow(SALOMEDS.AttributeInteger)\r
+ A.SetValue(1000000)\r
+ myBuilder.CommitCommand()\r
+except Exception: exception_was = 1\r
+\r
+if exception_was is None:\r
+ raise RuntimeError, "Study was locked for changes but CommitCommand did not generate an exception !"\r
+\r
+\r
+myBuilder.NewCommand()\r
+A=openedStudy.GetProperties()\r
+A = A._narrow(SALOMEDS.AttributeStudyProperties)\r
+A.SetLocked(0)\r
+myBuilder.CommitCommand()\r
+\r
+#4.\r
+myBuilder.NewCommand()\r
+A.SetLocked(0);\r
+print "A.GetUserName()= ", A.GetUserName()\r
+print "A.GetCreationDate() = ", A.GetCreationDate()\r
+print "A.GetCreationMode() = ", A.GetCreationMode()\r
+print "A.IsModified() = ", A.IsModified()\r
+myBuilder.CommitCommand()\r
+\r
+#5.\r
+myBuilder.NewCommand()\r
+A.SetUserName("tester1")\r
+myBuilder.CommitCommand()\r
+print "A.GetUserName()= ", A.GetUserName()\r
+\r
+#remove the document file\r
+os.remove(file)\r
+</PRE>
\ No newline at end of file
--- /dev/null
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"><HTML>\r
+<HEAD>\r
+<!-- hennerik CVSweb $Revision$ -->\r
+<TITLE>Exemple</TITLE></HEAD>\r
+<BODY BGCOLOR="#eeeeee">\r
+<HR noshade><PRE>\r
+#^SALOMEDS methods : FindOrCreateAttribute, SaveAs, FindComponent, FindAttribute, Open^\r
+#^Attribute methods: GetValue, GetNbColumns, AddColumn, SetRowTitles, PutValue, GetColumn, GetColumnTitles, GetTitle, SetRow, GetRowTitles, SetColumnTitles, SetColumn, GetRow, GetNbRows, SetColumnTitle, AddRow, SetTitle, SetRowTitle^\r
+\r
+# create AttributeReal \r
+#=======================================================================================================\r
+A = batchmode_geompy.myBuilder.FindOrCreateAttribute(batchmode_geompy.father, "AttributeTableOfInteger")\r
+if A == None :\r
+ raise RuntimeError, "Can't create AttributeTableOfInteger attribute"\r
+A = A._narrow(SALOMEDS.AttributeTableOfInteger)\r
+a=[1,2]\r
+\r
+b=[3,4]\r
+\r
+# 2x2\r
+# --- rows ---\r
+A.AddRow(a)\r
+A.AddRow(b)\r
+a=[34,14]\r
+A.SetRow(1,a)\r
+\r
+# 3x3\r
+#\r
+b=[54,56]\r
+A.AddRow(b)\r
+\r
+# --- columns ---\r
+a=[76,25,12]\r
+\r
+A.AddColumn(a)\r
+a=[836,3425,342]\r
+A.SetColumn(3,a)\r
+\r
+# change attribute values\r
+print "A.GetValue(2,2) = ", A.GetValue(2,2)\r
+print "A.PutValue(2,2,625323)"\r
+A.PutValue(625323,2,2)\r
+print "A.GetValue(2,2) = ", A.GetValue(2,2)\r
+\r
+#set Titles\r
+\r
+A.SetTitle("TEST")\r
+\r
+A.SetRowTitle(1,"FR")\r
+A.SetRowTitle(2,"SR")\r
+A.SetRowTitle(3,"TR")\r
+\r
+A.SetColumnTitle(1,"FC")\r
+A.SetColumnTitle(2,"SC")\r
+A.SetColumnTitle(3,"TC")\r
+\r
+\r
+#check the table\r
+print "Common title : ",A.GetTitle()\r
+print "Rows titles : ", A.GetRowTitles()\r
+rnb = A.GetNbRows()\r
+for i in range(1, rnb):\r
+ b=A.GetRow(i)\r
+ print b\r
+\r
+cnb = A.GetNbColumns()\r
+print "Columns title : ", A.GetColumnTitles()\r
+for i in range(1, cnb):\r
+ b=A.GetColumn(i)\r
+ print b\r
+\r
+# set titles\r
+#titles=["11","12","13"]\r
+#A.SetRowTitles(titles)\r
+#titles=["21","22","23"]\r
+#A.SetRowTitles(2,titles)\r
+#titles=["31","32","33"]\r
+#A.SetRowTitles(3,titles)\r
+\r
+#--------------------------------------------------------------------------#\r
+# ----------------------- save the study ----------------------------------#\r
+#--------------------------------------------------------------------------#\r
+str= os.getenv("TmpDir")\r
+if str == None:\r
+ str = "/tmp"\r
+file = str+"/test.hdf"\r
+\r
+print " ------- We will save to", file, "-----------"\r
+\r
+batchmode_geompy.myStudyManager.SaveAs(file, batchmode_geompy.myStudy)\r
+\r
+#--------------------------------------------------------------------------#\r
+#---------------------------- Open file -----------------------------------# \r
+#--------------------------------------------------------------------------#\r
+\r
+print" -------------- Open " + file + "-------------- " \r
+\r
+openedStudy=batchmode_geompy.myStudyManager.Open(file)\r
+if openedStudy == None:\r
+ raise RuntimeError, "Can't open saved study!"\r
+\r
+father = openedStudy.FindComponent("GEOM")\r
+if father is None:\r
+ raise RuntimeError, "Geom component is not found! Wrong study is opened." \r
+\r
+# --- check attribute ---\r
+\r
+res,A=father.FindAttribute("AttributeTableOfInteger")\r
+if res == 0 or A == None:\r
+ raise RuntimeError, "Error: not found AttributeTableOfInteger"\r
+\r
+A = A._narrow(SALOMEDS.AttributeTableOfInteger)\r
+\r
+#check the table\r
+print "Common title : ",A.GetTitle()\r
+print "Rows titles : ", A.GetRowTitles()\r
+rnb = A.GetNbRows()\r
+for i in range(1, rnb):\r
+ b=A.GetRow(i)\r
+ print b\r
+\r
+cnb = A.GetNbColumns()\r
+print "Columns title : ", A.GetColumnTitles()\r
+for i in range(1, cnb):\r
+ b=A.GetColumn(i)\r
+ print b\r
+\r
+titles=["ff","ss","tt"]\r
+A.SetRowTitles(titles)\r
+print "Rows titles : ", A.GetRowTitles()\r
+\r
+titles=["ww","zz","cc"]\r
+A.SetColumnTitles(titles)\r
+print "Column titles : ", A.GetColumnTitles()\r
+\r
+</PRE>
\ No newline at end of file
--- /dev/null
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"><HTML>\r
+<HEAD>\r
+<!-- hennerik CVSweb $Revision$ -->\r
+<TITLE>Exemple</TITLE></HEAD>\r
+<BODY BGCOLOR="#eeeeee">\r
+<HR noshade><PRE>\r
+#^ SALOMEDS methods : FindOrCreateAttribute, SaveAs, FindComponent, FindAttribute, Open^\r
+#^ Attribute methods : GetValue, GetNbColumns, AddColumn, SetRowTitles, PutValue, GetColumn, GetColumnTitles, GetTitle, SetRow, GetRowTitles, SetColumnTitles, SetColumn, GetRow, GetNbRows, SetColumnTitle, AddRow, SetTitle, SetRowTitle^\r
+\r
+# create AttributeReal \r
+#===============================================\r
+A = batchmode_geompy.myBuilder.FindOrCreateAttribute(batchmode_geompy.father, "AttributeTableOfReal")\r
+if A == None :\r
+ raise RuntimeError, "Can't create AttributeTableOfReal attribute"\r
+A = A._narrow(SALOMEDS.AttributeTableOfReal)\r
+a=[1,2]\r
+\r
+b=[3,4]\r
+\r
+# 2x2\r
+# --- rows ---\r
+A.AddRow(a)\r
+A.AddRow(b)\r
+a=[34,14]\r
+A.SetRow(1,a)\r
+\r
+# 3x3\r
+#\r
+b=[54,56]\r
+A.AddRow(b)\r
+\r
+# --- columns ---\r
+a=[76,25,12]\r
+\r
+A.AddColumn(a)\r
+a=[836,3425,342]\r
+A.SetColumn(3,a)\r
+\r
+# change attribute values\r
+print "A.GetValue(2,2) = ", A.GetValue(2,2)\r
+print "A.PutValue(2,2,625323)"\r
+A.PutValue(625323,2,2)\r
+print "A.GetValue(2,2) = ", A.GetValue(2,2)\r
+\r
+#set Titles\r
+\r
+A.SetTitle("TEST")\r
+\r
+A.SetRowTitle(1,"FR")\r
+A.SetRowTitle(2,"SR")\r
+A.SetRowTitle(3,"TR")\r
+\r
+A.SetColumnTitle(1,"FC")\r
+A.SetColumnTitle(2,"SC")\r
+A.SetColumnTitle(3,"TC")\r
+\r
+\r
+#check the table\r
+print "Common title : ",A.GetTitle()\r
+print "Rows titles : ", A.GetRowTitles()\r
+rnb = A.GetNbRows() + 1\r
+for i in range(1, rnb):\r
+ b=A.GetRow(i)\r
+ print b\r
+\r
+cnb = A.GetNbColumns() + 1\r
+print "Columns title : ", A.GetColumnTitles()\r
+for i in range(1, cnb):\r
+ b=A.GetColumn(i)\r
+ print b\r
+\r
+# set titles\r
+#titles=["11","12","13"]\r
+#A.SetRowTitles(titles)\r
+#titles=["21","22","23"]\r
+#A.SetRowTitles(2,titles)\r
+#titles=["31","32","33"]\r
+#A.SetRowTitles(3,titles)\r
+\r
+#--------------------------------------------------------------------------#\r
+#------------------------ save the study ----------------------------------#\r
+#--------------------------------------------------------------------------#\r
+import os\r
+str= os.getenv("TmpDir")\r
+if str == None:\r
+ str = "/tmp"\r
+file = str+"/test.hdf"\r
+\r
+print " ------- We will save to", file, "-----------"\r
+\r
+batchmode_geompy.myStudyManager.SaveAs(file, batchmode_geompy.myStudy)\r
+\r
+#--------------------------------------------------------------------------#\r
+#---------------------------- Open file -----------------------------------# \r
+#--------------------------------------------------------------------------#\r
+\r
+print" -------------- Open " + file + "-------------- " \r
+\r
+openedStudy = batchmode_geompy.myStudyManager.Open(file)\r
+if openedStudy == None:\r
+ raise RuntimeError, "Can't open saved study!"\r
+\r
+father = openedStudy.FindComponent("GEOM")\r
+if father is None:\r
+ raise RuntimeError, "Geom component is not found! Wrong study is opened." \r
+\r
+# --- check attribute ---\r
+\r
+res,A=father.FindAttribute("AttributeTableOfReal")\r
+if res == 0 or A == None:\r
+ raise RuntimeError, "Error: not found AttributeTableOfReal"\r
+\r
+A = A._narrow(SALOMEDS.AttributeTableOfReal)\r
+\r
+#check the table\r
+print "Common title : ",A.GetTitle()\r
+print "Rows titles : ", A.GetRowTitles()\r
+rnb = A.GetNbRows() + 1\r
+for i in range(1, rnb):\r
+ b=A.GetRow(i)\r
+ print b\r
+\r
+cnb = A.GetNbColumns() + 1\r
+print "Columns title : ", A.GetColumnTitles()\r
+for i in range(1, cnb):\r
+ b=A.GetColumn(i)\r
+ print b\r
+\r
+titles=["ff","ss","tt"]\r
+A.SetRowTitles(titles)\r
+print "Rows titles : ", A.GetRowTitles()\r
+\r
+titles=["ww","zz","cc"]\r
+A.SetColumnTitles(titles)\r
+print "Column titles : ", A.GetColumnTitles()\r
+\r
+</PRE>
\ No newline at end of file
--- /dev/null
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"><HTML>\r
+<HEAD>\r
+<!-- hennerik CVSweb $Revision$ -->\r
+<TITLE>Exemple</TITLE></HEAD>\r
+<BODY BGCOLOR="#eeeeee">\r
+<HR noshade><PRE>\r
+import batchmode_salome\r
+#import SALOMEDS\r
+\r
+aStudy = batchmode_salome.myStudy \r
+\r
+#Add new component 'User data'\r
+aBuilder = aStudy.NewBuilder()\r
+aComponent = aBuilder.NewComponent("User data")\r
+anAttr = aBuilder.FindOrCreateAttribute(aComponent, "AttributeName")\r
+anAttrName = anAttr._narrow(SALOMEDS.AttributeName) \r
+anAttrName.SetValue("User data")\r
+\r
+\r
+#Add a new case 'Case1' to the component 'User data'\r
+aBuilder.AddDirectory("/User data/Case1")\r
+\r
+#Set a study context to '/User data/Case1'\r
+aStudy.SetContext("/User data/Case1")\r
+\r
+#Print the current study context\r
+print aStudy.GetContext()\r
+\r
+#Add a sub directory 'aSubCase' to 'Case1' (under the current context)\r
+aBuilder.AddDirectory("aSubCase")\r
+\r
+\r
+#Add a new case 'Case2' to component 'User data'\r
+aBuilder.AddDirectory("/User data/Case2")\r
+</PRE>
\ No newline at end of file
--- /dev/null
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"><HTML>\r
+<HEAD>\r
+<!-- hennerik CVSweb $Revision$ -->\r
+<TITLE>Example</TITLE></HEAD>\r
+<BODY BGCOLOR="#eeeeee">\r
+<HR noshade><PRE>#%AttributeSequenceOfReal interface(creations/saving/restoring)%\r
+#% AttributeSequenceOfReal : ChangeValue, Add, Value, Remove, Length%\r
+#% SALOMEDS methods : FindOrCreateAttribute, SaveAs, FindComponent, FindAttribute, Open%\r
+\r
+# create AttributeSequenceOfReal \r
+#=================================\r
+A = batchmode_geompy.myBuilder.FindOrCreateAttribute(batchmode_geompy.father, "AttributeSequenceOfReal")\r
+if A == None :\r
+ raise RuntimeError, "Can't create AttributeSequenceOfReal attribute"\r
+A = A._narrow(SALOMEDS.AttributeSequenceOfReal)\r
+if A == None :\r
+ raise RuntimeError, "_narrow returns None instead of AttributeSequenceOfReal pointer"\r
+\r
+A.Add(0.0293)\r
+A.Add(625.1e+2)\r
+A.Add(0.928e+100)\r
+A.Add(83.287)\r
+\r
+print "initial values ",A.Value(1), A.Value(2), A.Value(3), A.Value(4)\r
+A.Remove(3)\r
+print "after remove ", A.Value(1), A.Value(2), A.Value(3)\r
+A.ChangeValue(2,76.265)\r
+print "after second item change", A.Value(1), A.Value(2), A.Value(3)\r
+\r
+if A.Length() != 3:\r
+ print "Error : wrong length of SequenceOfReal"\r
+if A.Value(1) != 0.0293 or A.Value(2) != 76.265 or A.Value(3) != 83.287:\r
+ print "Error : wrong value of AttributeSequenceOfReal"\r
+\r
+# save / restore study \r
+#=================================\r
+str= os.getenv("TmpDir")\r
+if str == None:\r
+ str = "/tmp"\r
+file = str+"/test.hdf"\r
+\r
+batchmode_geompy.myStudyManager.SaveAs(file, batchmode_geompy.myStudy)\r
+openedStudy=batchmode_geompy.myStudyManager.Open(file);\r
+\r
+if openedStudy == None:\r
+ raise RuntimeError, "Can't open saved study!"\r
+\r
+\r
+father = openedStudy.FindComponent("GEOM")\r
+if father is None:\r
+ raise RuntimeError, "Geom component is not found! Wrong study is opened." \r
+\r
+\r
+# find AttributeSequenceOfReal\r
+#=================================\r
+\r
+res,A=father.FindAttribute("AttributeSequenceOfReal")\r
+if res == 0 or A == None:\r
+ raise RuntimeError, "Error: not found AttributeSequenceOfReal"\r
+\r
+A = A._narrow(SALOMEDS.AttributeSequenceOfReal)\r
+\r
+if A.Length() != 3:\r
+ print "Error : wrong length of SequenceOfReal"\r
+if A.Value(1) != 0.0293 or A.Value(2) != 76.265 or A.Value(3) != 83.287:\r
+ print "Error : wrong value of AttributeSequenceOfReal"\r
+print "after restoring ", A.Value(1), A.Value(2), A.Value(3)\r
+</PRE>
\ No newline at end of file
--- /dev/null
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"><HTML>\r
+<HEAD>\r
+<!-- hennerik CVSweb $Revision$ -->\r
+<TITLE>Example</TITLE></HEAD>\r
+<BODY BGCOLOR="#eeeeee">\r
+<HR noshade><PRE>#%AttributeSequenceOfInteger interface(creations/saving/restoring)%\r
+#%SALOMEDS methods : FindOrCreateAttribute FindComponent FindAttribute Open Add SaveAs%\r
+#%AttributeSequenceOfInteger methods : Value, Remove, Length%\r
+\r
+# create AttributeSequenceOfInteger \r
+#==========================================\r
+A = batchmode_geompy.myBuilder.FindOrCreateAttribute(batchmode_geompy.father, "AttributeSequenceOfInteger")\r
+if A == None :\r
+ raise RuntimeError, "Can't create AttributeSequenceOfInteger attribute"\r
+A = A._narrow(SALOMEDS.AttributeSequenceOfInteger)\r
+if A == None :\r
+ raise RuntimeError, "Can't create AttributeSequenceOfInteger attribute"\r
+\r
+A.Add(100)\r
+A.Add(300)\r
+A.Add(500)\r
+A.Add(400)\r
+A.Add(700)\r
+\r
+A.Remove(3)\r
+A.ChangeValue(4,500)\r
+\r
+\r
+if A.Length() != 4:\r
+ print "Wrong length of SequenceOfInteger"\r
+if A.Value(1) != 100 or A.Value(2) != 300 or A.Value(3) != 400 or A.Value(4) != 700:\r
+ print "Wrong value of AttributeSequenceOfInteger"\r
+\r
+\r
+# save / restore study \r
+#=================================\r
+str= os.getenv("TmpDir")\r
+if str == None:\r
+ str = "/tmp"\r
+file = str+"/test.hdf"\r
+batchmode_geompy.myStudyManager.SaveAs(file, batchmode_geompy.myStudy)\r
+openedStudy=batchmode_geompy.myStudyManager.Open(file);\r
+\r
+if openedStudy == None:\r
+ raise RuntimeError, "Can't open saved study!"\r
+\r
+\r
+father = openedStudy.FindComponent("GEOM")\r
+if father is None:\r
+ raise RuntimeError, "Geom component is not found! Wrong study is opened." \r
+\r
+\r
+# find AttributeSequenceOfInteger\r
+#======================================\r
+\r
+res,A=father.FindAttribute("AttributeSequenceOfInteger")\r
+if res == 0 or A == None:\r
+ raise RuntimeError, "Error: not found AttributeSequenceOfInteger"\r
+\r
+A = A._narrow(SALOMEDS.AttributeSequenceOfInteger)\r
+\r
+if A.Length() != 4:\r
+ print "Wrong length of SequenceOfInteger"\r
+if A.Value(1) != 100 or A.Value(2) != 300 or A.Value(3) != 400 or A.Value(4) != 700:\r
+ print "Wrong value of AttributeSequenceOfInteger"\r
+</PRE>
\ No newline at end of file
--- /dev/null
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"><HTML>\r
+<HEAD>\r
+<!-- hennerik CVSweb $Revision$ -->\r
+<TITLE>Example</TITLE></HEAD>\r
+<BODY BGCOLOR="#eeeeee">\r
+<HR noshade><PRE>#%AttributeName interface(creations/saving/restoring)%\r
+#%SALOMEDS methods : FindOrCreateAttribute, SaveAs, FindComponent FindAttribute Open%\r
+#%Attribute methods : SetValue, Value%\r
+\r
+# create AttributeName \r
+#===========================================================\r
+A = batchmode_geompy.myBuilder.FindOrCreateAttribute(batchmode_geompy.father, "AttributeName")\r
+if A == None :\r
+ raise RuntimeError, "Can't create AttributeName attribute"\r
+A = A._narrow(SALOMEDS.AttributeName)\r
+\r
+if A == None :\r
+ raise RuntimeError, "Can't create AttributeName attribute"\r
+A.SetValue("AttributesTesting")\r
+\r
+if A.Value() != "AttributesTesting":\r
+ print "Wrong value of AttributeName"\r
+\r
+\r
+# save / restore study \r
+#=================================\r
+str= os.getenv("TmpDir")\r
+if str == None:\r
+ str = "/tmp"\r
+file = str+"/test.hdf"\r
+\r
+batchmode_geompy.myStudyManager.SaveAs(file, batchmode_geompy.myStudy)\r
+openedStudy = batchmode_geompy.myStudyManager.Open(file);\r
+\r
+if openedStudy == None:\r
+ raise RuntimeError, "Can't open saved study!"\r
+\r
+\r
+father = openedStudy.FindComponent("GEOM")\r
+if father is None:\r
+ raise RuntimeError, "Geom component is not found! Wrong study is opened." \r
+\r
+\r
+# find AttributeName\r
+#======================================\r
+\r
+res,A=father.FindAttribute("AttributeName")\r
+if res == 0 or A == None:\r
+ raise RuntimeError, "Error: not found AttributeName"\r
+\r
+A = A._narrow(SALOMEDS.AttributeName)\r
+\r
+if A == None :\r
+ raise RuntimeError, "Can't create AttributeName attribute"\r
+\r
+if A.Value() != "AttributesTesting":\r
+ print "Wrong value of AttributeName"\r
+</PRE>
\ No newline at end of file
--- /dev/null
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"><HTML>\r
+<HEAD>\r
+<!-- hennerik CVSweb $Revision$ -->\r
+<TITLE>Example</TITLE></HEAD>\r
+<BODY BGCOLOR="#eeeeee">\r
+<HR noshade><PRE>#%AttributeComment interface(creations/saving/restoring)%\r
+#%SALOMEDS methods : FindOrCreateAttribute, SaveAs FindComponent FindAttribute Open%\r
+#%Attribute methods : Value, SetValue%\r
+\r
+# create AttributeComment \r
+#===========================================================\r
+A = batchmode_geompy.myBuilder.FindOrCreateAttribute(batchmode_geompy.father, "AttributeComment")\r
+if A == None :\r
+ raise RuntimeError, "Can't create AttributeComment attribute"\r
+A = A._narrow(SALOMEDS.AttributeComment)\r
+\r
+if A == None :\r
+ raise RuntimeError, "Can't create AttributeComment attribute"\r
+\r
+A.SetValue("GEOM")\r
+\r
+\r
+# save / restore study \r
+#============================================================\r
+str= os.getenv("TmpDir")\r
+if str == None:\r
+ str = "/tmp"\r
+file = str+"/test.hdf"\r
+\r
+batchmode_geompy.myStudyManager.SaveAs(file, batchmode_geompy.myStudy)\r
+openedStudy = batchmode_geompy.myStudyManager.Open(file);\r
+\r
+if openedStudy == None:\r
+ raise RuntimeError, "Can't open saved study!"\r
+\r
+father = openedStudy.FindComponent("GEOM")\r
+if father is None:\r
+ raise RuntimeError, "Geom component is not found! Wrong study is opened." \r
+\r
+\r
+# find AttributeComment\r
+#============================================================\r
+\r
+res,A=father.FindAttribute("AttributeComment")\r
+if res == 0 or A == None:\r
+ raise RuntimeError, "Error: not found AttributeComment"\r
+\r
+A = A._narrow(SALOMEDS.AttributeComment)\r
+\r
+if A == None :\r
+ raise RuntimeError, "Can't create AttributeComment attribute"\r
+\r
+if A.Value() != "GEOM":\r
+ "Error: wrong value of AttributeComment"\r
+\r
+</PRE>
\ No newline at end of file
--- /dev/null
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"><HTML>\r
+<HEAD>\r
+<!-- hennerik CVSweb $Revision$ -->\r
+<TITLE>Example</TITLE></HEAD>\r
+<BODY BGCOLOR="#eeeeee">\r
+<HR noshade><PRE>#%AttributePersistentRef interface(creations/saving/restoring)%\r
+#%SALOMEDS methods : FindOrCreateAttribute, SaveAs, FindComponent FindAttribute Open%\r
+#%Attribute methods : SetValue, Value%\r
+\r
+# create AttributePersistentRef \r
+#===========================================================\r
+A = batchmode_geompy.myBuilder.FindOrCreateAttribute(batchmode_geompy.father, "AttributePersistentRef")\r
+if A == None :\r
+ raise RuntimeError, "Can't create AttributePersistentRef attribute"\r
+A = A._narrow(SALOMEDS.AttributePersistentRef)\r
+\r
+if A == None :\r
+ raise RuntimeError, "Can't create AttributePersistentRef attribute"\r
+\r
+A.SetValue("/tmp/test;1")\r
+\r
+# save / restore study \r
+#============================================================\r
+str= os.getenv("TmpDir")\r
+if str == None:\r
+ str = "/tmp"\r
+file = str+"/test.hdf"\r
+\r
+batchmode_geompy.myStudyManager.SaveAs(file, batchmode_geompy.myStudy)\r
+openedStudy = batchmode_geompy.myStudyManager.Open(file);\r
+\r
+if openedStudy == None:\r
+ raise RuntimeError, "Can't open saved study!"\r
+\r
+father = openedStudy.FindComponent("GEOM")\r
+if father is None:\r
+ raise RuntimeError, "Geom component is not found! Wrong study is opened." \r
+\r
+\r
+# find AttributePersistentRef\r
+#============================================================\r
+\r
+res,A=father.FindAttribute("AttributePersistentRef")\r
+if res == 0 or A == None:\r
+ raise RuntimeError, "Error: not found AttributePersistentRef"\r
+\r
+A = A._narrow(SALOMEDS.AttributePersistentRef)\r
+\r
+if A == None :\r
+ raise RuntimeError, "Can't create AttributePersistentRef attribute"\r
+\r
+if A.Value() != "/tmp/test;1":\r
+ "Error: wrong value of AttributePersistentRef"\r
+\r
+</PRE>
\ No newline at end of file
--- /dev/null
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"><HTML>\r
+<HEAD>\r
+<!-- hennerik CVSweb $Revision$ -->\r
+<TITLE>Example</TITLE></HEAD>\r
+<BODY BGCOLOR="#eeeeee">\r
+<HR noshade><PRE>#%AttributeDrawable interface(creations/saving/restoring)%\r
+#%SALOMEDS methods : FindOrCreateAttribute, SaveAs, FindComponent, FindAttribute, Open%\r
+#%Attribute methods : SetDrawable, IsDrawable% \r
+#--------------------------------------------------------------------------\r
+\r
+from batchmode_geompy import *\r
+import os\r
+\r
+#--------------------------------------------------------------------------\r
+# create AttributeDrawable \r
+#===========================================================\r
+A = batchmode_geompy.myBuilder.FindOrCreateAttribute(batchmode_geompy.father, "AttributeDrawable")\r
+if A == None :\r
+ raise RuntimeError, "Can't create AttributeDrawable attribute"\r
+A = A._narrow(SALOMEDS.AttributeDrawable)\r
+\r
+if A == None :\r
+ raise RuntimeError, "Can't create AttributeDrawable attribute"\r
+\r
+A.SetDrawable(1)\r
+\r
+if A.IsDrawable() == 0:\r
+ "Error: wrong value of AttributeDrawable"\r
+\r
+\r
+# save / restore study \r
+#============================================================\r
+str= os.getenv("TmpDir")\r
+if str == None:\r
+ str = "/tmp"\r
+file = str+"/test.hdf"\r
+\r
+batchmode_geompy.myStudyManager.SaveAs(file, batchmode_geompy.myStudy)\r
+openedStudy=batchmode_geompy.myStudyManager.Open(file);\r
+\r
+if openedStudy == None:\r
+ raise RuntimeError, "Can't open saved study!"\r
+\r
+father = openedStudy.FindComponent("GEOM")\r
+if father is None:\r
+ raise RuntimeError, "Geom component is not found! Wrong study is opened." \r
+\r
+\r
+# find AttributeDrawable\r
+#============================================================\r
+\r
+res,A=father.FindAttribute("AttributeDrawable")\r
+if res == 0 or A == None:\r
+ raise RuntimeError, "Error: not found AttributeDrawable"\r
+\r
+A = A._narrow(SALOMEDS.AttributeDrawable)\r
+\r
+if A == None :\r
+ raise RuntimeError, "Can't create AttributeDrawable attribute"\r
+\r
+if A.IsDrawable() == 0:\r
+ "Error: wrong value of AttributeDrawable"\r
+\r
+</PRE>
\ No newline at end of file
--- /dev/null
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"><HTML>\r
+<HEAD>\r
+<!-- hennerik CVSweb $Revision$ -->\r
+<TITLE>Example</TITLE></HEAD>\r
+<BODY BGCOLOR="#eeeeee">\r
+<HR noshade><PRE>#%AttributeSelectable interface(creations/saving/restoring)%\r
+#%SALOMEDS methods: FindOrCreateAttribute, SaveAs, FindComponent, FindAttribute, Open%\r
+#%Attribute methods: SetSelectable, IsSelectable%\r
+\r
+# create AttributeSelectable \r
+#===========================================================\r
+A = batchmode_geompy.myBuilder.FindOrCreateAttribute(batchmode_geompy.father, "AttributeSelectable")\r
+if A == None :\r
+ raise RuntimeError, "Can't create AttributeSelectable attribute"\r
+A = A._narrow(SALOMEDS.AttributeSelectable)\r
+\r
+if A == None :\r
+ raise RuntimeError, "Can't create AttributeSelectable attribute"\r
+\r
+A.SetSelectable(1)\r
+\r
+if A.IsSelectable() == 0:\r
+ "Error: wrong value of AttributeSelectable"\r
+\r
+\r
+# save / restore study \r
+#============================================================\r
+str= os.getenv("TmpDir")\r
+if str == None:\r
+ str = "/tmp"\r
+file = str+"/test.hdf"\r
+\r
+batchmode_geompy.myStudyManager.SaveAs(file, batchmode_geompy.myStudy)\r
+openedStudy = batchmode_geompy.myStudyManager.Open(file);\r
+\r
+if openedStudy == None:\r
+ raise RuntimeError, "Can't open saved study!"\r
+\r
+father = openedStudy.FindComponent("GEOM")\r
+if father is None:\r
+ raise RuntimeError, "Geom component is not found! Wrong study is opened." \r
+\r
+\r
+# find AttributeSelectable\r
+#============================================================\r
+\r
+res,A=father.FindAttribute("AttributeSelectable")\r
+if res == 0 or A == None:\r
+ raise RuntimeError, "Error: not found AttributeSelectable"\r
+\r
+A = A._narrow(SALOMEDS.AttributeSelectable)\r
+\r
+if A == None :\r
+ raise RuntimeError, "Can't create AttributeSelectable attribute"\r
+\r
+if A.IsSelectable() == 0:\r
+ "Error: wrong value of AttributeSelectable"\r
+\r
+</PRE>
\ No newline at end of file
--- /dev/null
+<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
+ <meta name="GENERATOR" content="Mozilla/4.73 [en] (WinNT; I) [Netscape]">
+ <title>Main Page</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+</head>
+<body>
+
+<center><table WIDTH="96%" >
+<tr>
+<td><a href="http://www.opencascade.com"><img src="sources/logocorp.gif" BORDER=0 height=46 width=122></a></td>
+
+
+<td>
+<div align=right><a href="http://www.opencascade.org/SALOME/"><img src="sources/application.gif" BORDER=0 height=46 width=108></a></div>
+</td>
+</tr>
+</table></center>
+
+
+</body>
+</html>
--- /dev/null
+H1 { text-align: center; }
+CAPTION { font-weight: bold }
+A.qindex {}
+A.qindexRef {}
+A.el { text-decoration: none; font-weight: bold }
+A.elRef { font-weight: bold }
+A.code { text-decoration: none; font-weight: normal; color: #4444ee }
+A.codeRef { font-weight: normal; color: #4444ee }
+A:hover { text-decoration: none; background-color: lightblue }
+DL.el { margin-left: -1cm }
+DIV.fragment { width: 100%; border: none; background-color: #CCCCCC }
+DIV.ah { background-color: #CCCCCC; font-weight: bold; color: #ffffff; margin-bottom: 3px; margin-top: 3px }
+TD.md { background-color: lightblue; font-weight: bold; }
+TD.mdname1 { background-color: lightblue; font-weight: bold; color: #602020; }
+TD.mdname { background-color: lightblue; font-weight: bold; color: #602020; width: 600px; }
+DIV.groupHeader { margin-left: 16px; margin-top: 12px; margin-bottom: 6px; font-weight: bold }
+DIV.groupText { margin-left: 16px; font-style: italic; font-size: smaller }
+BODY { background: url(sources/bg_salome.gif) }
+TD.indexkey {
+ background-color: #CCCCCC;
+ font-weight: bold;
+ padding-right : 10px;
+ padding-top : 2px;
+ padding-left : 10px;
+ padding-bottom : 2px;
+ margin-left : 0px;
+ margin-right : 0px;
+ margin-top : 2px;
+ margin-bottom : 2px
+}
+TD.indexvalue {
+ background-color: #CCCCCC;
+ font-style: italic;
+ padding-right : 10px;
+ padding-top : 2px;
+ padding-left : 10px;
+ padding-bottom : 2px;
+ margin-left : 0px;
+ margin-right : 0px;
+ margin-top : 2px;
+ margin-bottom : 2px
+}
+span.keyword { color: #008000 }
+span.keywordtype { color: #604020 }
+span.keywordflow { color: #e08000 }
+span.comment { color: #800000 }
+span.preprocessor { color: #806020 }
+span.stringliteral { color: #002080 }
+span.charliteral { color: #008080 }
--- /dev/null
+<!DOCTYPE doctype PUBLIC "-//w3c//dtd html 4.0 transitional//en">
+<html>
+<head>
+
+ <meta http-equiv="Content-Type"
+ content="text/html; charset=iso-8859-1">
+
+ <meta name="GENERATOR"
+ content="Mozilla/4.73 [en] (WinNT; I) [Netscape]">
+ <title>Main Page</title>
+
+ <link href="doxygen.css" rel="stylesheet" type="text/css">
+</head>
+ <body>
+
+<center>
+<table width="96%">
+ <tbody>
+ <tr>
+ <td><a href="http://www.opencascade.com"><img
+ src="sources/logocorp.gif" border="0" height="46" width="122">
+ </a></td>
+ <td>
+ <div align="right"><a href="http://www.opencascade.org/SALOME/"><img
+ src="sources/application.gif" border="0" height="46" width="108">
+ </a></div>
+ </td>
+ </tr>
+
+ </tbody>
+</table>
+</center>
+
+<h1><a name="page2">Examples</a> </h1>
+ <small><i><big><b>Package SALOME</b></big></i></small><b><i>_ModuleCatalog</i></b><br>
+<small><br>
+ <big>interface <a href="#module_catalog">SALOME_ModuleCatalog::ModuleCatalog</a></big><br>
+<br>
+<i><big><b>Package SALOME<br>
+<br>
+ </b></big></i></small>interface<a href="#Session"> SALOME::Session</a><br>
+<br>
+<small><i><big><b>Package Engines<br>
+ </b></big></i><i><big><b> </b></big></i></small><br>
+ interface <a href="#container">Engines::Container</a><small><br>
+</small><small><br>
+<i><big><b> <br>
+ </b></big></i></small><br>
+<br>
+<div align="center"> <u><font
+ face="Helvetica, Arial, sans-serif"><big><big><b><small><big><a
+ name="module_catalog"></a>SALOME_ModuleCatalog::ModuleCatalog interface</big></small></b></big></big></font></u>
+<br>
+</div>
+<br>
+<div align="center"><big><big><u><b><font
+ face="Helvetica, Arial, sans-serif"><br>
+</font></b></u></big></big>
+<div align="left"><br>
+<big><b><a class="el"
+ href="interfaceSALOME__ModuleCatalog_1_1Acomponent.html">Acomponent</a>
+GetComponent (in string <i>componentname</i>)</b></big><br>
+<br>
+See the <a href="#load_com_ex">example</a> below<br>
+<br>
+</div>
+<big><big><u><b><font face="Helvetica, Arial, sans-serif"><br>
+</font></b><small><font face="Helvetica, Arial, sans-serif"><big><b><a
+ name="Session"></a>SALOME::Session interface</b></big></font></small></u></big></big><br>
+<div align="left"><br>
+<br>
+<big><b>GetInterface ()</b><b>, StopSession () raises (GUIActive, RunningStudies)</b></big><br>
+<br>
+<u><i>Stop session and restart GUI application: </i></u><br>
+<br>
+mySession.StopSession()<br>
+<br>
+mySession.GetInterface()<br>
+<br>
+<br>
+<div align="center"><u><big><big><font
+ face="Helvetica, Arial, sans-serif"><b><a name="container"></a>Engines::Container
+interface</b></font></big></big></u><br>
+<br>
+<br>
+<div align="left"><big><b><a class="el"
+ href="interfaceEngines_1_1Component.html">Component</a>
+load_impl (in string <i>nameToRegister</i>, in string <i>componentName</i>)</b></big><br>
+<br>
+<i><u><a name="load_com_ex"></a>Load component with defined component name:</u></i><br>
+<br>
+compinfo = module_catalog.GetComponent(componentName)<br>
+<br>
+ try:<br>
+ machineName = theComputer # name of machine<br>
+ path = compoinfo.GetPathPrefix(machineName) + "/"<br>
+ except SALOME_ModuleCatalog.NotFound, ex:<br>
+ MESSAGE( "machine " + machineName + " not found in Module
+Catalog" )<br>
+ MESSAGE( "trying localhost" )<br>
+ try:<br>
+ path = compoinfo.GetPathPrefix("localhost") + "/"<br>
+ except SALOME_ModuleCatalog.NotFound, ex:<br>
+ path = ""<br>
+<br>
+implementation = path + "lib" + componentName + "Engine.so"<br>
+MESSAGE( "Trying to load " + implementation )<br>
+<br>
+ try:<br>
+<div align="left"> component = container.load_impl(componentName,
+implementation)<i> # Loads into the container a new component, registers
+it and starts it's CORBA servant. </i><br>
+</div>
+ MESSAGE( "component " + component._get_instanceName()
++ " launched !" )<br>
+ return component<br>
+except:<br>
+ MESSAGE( "component " + componentName + " NOT launched
+!" )<br>
+<br>
+<br>
+</div>
+<br>
+</div>
+<br>
+</div>
+<br>
+</div>
+
+<br>
+<br>
+<br>
+</body>
+</html>
--- /dev/null
+<!DOCTYPE doctype PUBLIC "-//w3c//dtd html 4.0 transitional//en">\r
+<html>\r
+<head>\r
+ \r
+ <meta http-equiv="Content-Type"\r
+ content="text/html; charset=iso-8859-1">\r
+ \r
+ <meta name="GENERATOR"\r
+ content="Mozilla/4.73 [en] (WinNT; I) [Netscape]">\r
+ <title>Main Page</title>\r
+ \r
+ <link href="doxygen.css" rel="stylesheet" type="text/css">\r
+</head>\r
+ <body>\r
+ \r
+<center>\r
+<table width="96%">\r
+ <tbody>\r
+ <tr>\r
+ <td><a href="http://www.opencascade.com"><img\r
+ src="sources/logocorp.gif" border="0" height="46" width="122">\r
+ </a></td>\r
+ <td> \r
+ <div align="right"><a href="http://www.opencascade.org/SALOME/"><img\r
+ src="sources/application.gif" border="0" height="46" width="108">\r
+ </a></div>\r
+ </td>\r
+ </tr>\r
+ \r
+ </tbody>\r
+</table>\r
+</center>\r
+ \r
+<h1><a name="page2">Examples</a> </h1>\r
+ <font color="#3333ff">//There is a CXX example of LifeCycleCORBA using<br>\r
+</font><br>\r
+#include CORBA_CLIENT_HEADER(TestComponent)<br>\r
+#include "SALOME_NamingService.hxx"<br>\r
+#include "SALOME_LifeCycleCORBA.hxx"<br>\r
+<br>\r
+int main (int argc, char * argv[]){<br>\r
+ try {<br>\r
+<font color="#3333ff"> // Initializing omniORB<br>\r
+</font> CORBA::ORB_var orb = CORBA::ORB_init(argc,\r
+argv);<br>\r
+ <br>\r
+<font color="#3333ff"> // Obtain a reference\r
+to the root POA<br>\r
+</font> CORBA::Object_var obj = orb->resolve_initial_references("RootPOA")\r
+;<br>\r
+ PortableServer::POA_var poa = PortableServer::POA::_narrow(obj)\r
+;<br>\r
+ <br>\r
+ SALOME_NamingService _NS(orb) ;<br>\r
+<br>\r
+ SALOME_LifeCycleCORBA _LCC(&_NS) ;<br>\r
+<br>\r
+ Engines::Component_var myComponent = _LCC.FindOrLoad_Component("FactoryServerPy","TestComponentPy");<br>\r
+ if(!CORBA::is_nil(myComponent)){<br>\r
+ Engines::TestComponent_var\r
+myConcreateComponent = TestComponent::_narrow(myComponent);<br>\r
+<font color="#3333ff"> //do something\r
+what you like with the interface<br>\r
+ ...<br>\r
+</font> return 0;<br>\r
+ }<br>\r
+ }<br>\r
+ catch(CORBA::COMM_FAILURE& ex){<br>\r
+ cout<<"Caught system exception COMM_FAILURE\r
+-- unable to contact the object.\n";<br>\r
+ }catch(CORBA::SystemException&){<br>\r
+ cout<<"Caught a CORBA::SystemException.\n";<br>\r
+ }catch(CORBA::Exception&){<br>\r
+ cout<<"Caught CORBA::Exception.\n";<br>\r
+ }catch(...){<br>\r
+ cout<<"Caught unknown exception.\n";<br>\r
+ }<br>\r
+ return 1;<br>\r
+}<br>\r
+<br>\r
+<font color="#3333ff">#The example may be rewritten on Python like this:<br>\r
+</font><br>\r
+from omniORB import CORBA<br>\r
+from SALOME_TestComponent import *<br>\r
+from SALOME_NamingServicePy import *<br>\r
+from LifeCycleCORBA import *<br>\r
+<br>\r
+try:<br>\r
+ orb = CORBA.ORB_init(sys.argv,CORBA.ORB_ID)<br>\r
+ _NS = SALOME_NamingService(orb)<br>\r
+ _LCC = SALOME_LifeCycleCORBA(orb)<br>\r
+<br>\r
+ myComponent = _LCC.FindOrLoadComponent("FactoryServerPy","TestComponentPy");<br>\r
+ myConcreatComponent = myComponent._narrow(TestComponent)<br>\r
+ if myConcreatComponent is not None :<font\r
+ color="#3333ff"><br>\r
+ //do something what you like with the\r
+interface<br>\r
+ ...<br>\r
+ </font> return 0<br>\r
+ }<br>\r
+except CosNaming.NamingContext.NotFound, e :<br>\r
+ print "Caught exception: Naming Service can't found Logger"<br>\r
+except CORBA.COMM_FAILURE, e:<br>\r
+ print "Caught CORBA::SystemException CommFailure"<br>\r
+except CORBA.SystemException, e:<br>\r
+ print "Caught CORBA::SystemException."<br>\r
+except CORBA.Exception, e:<br>\r
+ print "Caught CORBA::Exception."<br>\r
+except Exception, e:<br>\r
+ print "Caught unknown exception."<br>\r
+ <br>\r
+<br>\r
+<br>\r
+</body>\r
+</html>\r
--- /dev/null
+<!DOCTYPE doctype PUBLIC "-//w3c//dtd html 4.0 transitional//en">
+<html>
+<head>
+
+ <meta http-equiv="Content-Type"
+ content="text/html; charset=iso-8859-1">
+
+ <meta name="GENERATOR"
+ content="Mozilla/4.73 [en] (WinNT; I) [Netscape]">
+ <title>Main Page</title>
+
+ <link href="doxygen.css" rel="stylesheet" type="text/css">
+</head>
+ <body>
+
+<center>
+<table width="96%">
+ <tbody>
+ <tr>
+ <td><a href="http://www.opencascade.com"><img
+ src="sources/logocorp.gif" border="0" height="46" width="122">
+ </a></td>
+ <td>
+ <div align="right"><a href="http://www.opencascade.org/SALOME/"><img
+ src="sources/application.gif" border="0" height="46" width="108">
+ </a></div>
+ </td>
+ </tr>
+
+ </tbody>
+</table>
+</center>
+
+<h1><a name="page2">Examples</a> </h1>
+ <font color="#3333ff">#There is a python example of using SALOME_NamingService<br>
+</font><br>
+from omniORB import CORBA<br>
+from time import sleep<br>
+from LifeCycleCORBA import *<br>
+from SALOME_NamingServicePy import *<br>
+<br>
+<font color="#3333ff"># initialise the ORB<br>
+</font>orb = CORBA.ORB_init([''], CORBA.ORB_ID)<br>
+<br>
+<font color="#3333ff"># create an LifeCycleCORBA instance<br>
+</font>myLifeCycleCORBA = LifeCycleCORBA(orb)<br>
+<br>
+<font color="#3333ff">#create a naming service instance<br>
+</font>naming_service = SALOME_NamingServicePy_i(orb)<br>
+<br>
+mySession = myNamingService.Resolve("/Kernel/Session")<br>
+mySession.GetInterface()<br>
+sleep(10)<br>
+myLocalVisu = myLifeCycleCORBA.FindOrLoadComponent("FactoryServer", "Visu")<br>
+<br>
+<br>
+<font color="#3333ff">//There is some part of a code written by C++<br>
+</font><br>
+SALOME_NamingService aNamingService(orb);<br>
+CORBA::Object_ptr anObject = aNamingService.Resolve("/Kernel/Session");<br>
+SALOME::Session_var aSession = SALOME::Session::_narrow(anObject);<br>
+Engines::Component_var aComponent = aSession->GetVisuGen();<br>
+myVisuGen = VISU::VISU_Gen::_narrow(aComponent);<br>
+<br>
+</body>
+</html>
--- /dev/null
+<!DOCTYPE doctype PUBLIC "-//w3c//dtd html 4.0 transitional//en">\r
+<html>\r
+<head>\r
+ \r
+ <meta http-equiv="Content-Type"\r
+ content="text/html; charset=iso-8859-1">\r
+ \r
+ <meta name="GENERATOR"\r
+ content="Mozilla/4.73 [en] (WinNT; I) [Netscape]">\r
+ <title>Main Page</title>\r
+ \r
+ <link href="doxygen.css" rel="stylesheet" type="text/css">\r
+</head>\r
+ <body>\r
+ \r
+<center> \r
+<table width="96%">\r
+ <tbody>\r
+ <tr>\r
+ <td><a href="http://www.opencascade.com"><img src="sources/ogocorp.gif"\r
+ border="0" height="46" width="122">\r
+ </a></td>\r
+ <td> \r
+ <div align="right"><a href="http://www.opencascade.org/SALOME/"><img\r
+ src="sources/application.gif" border="0" height="46" width="108">\r
+ </a></div>\r
+ </td>\r
+ </tr>\r
+ \r
+ </tbody> \r
+</table>\r
+ </center>\r
+ \r
+<h1><a name="page2">Examples</a> </h1>\r
+ <br>\r
+ <br>\r
+ \r
+<div align="justify"> <big><b><i> <small>Interfaces:</small></i></b></big><br>\r
+ <br>\r
+ <a href="#SALOMEDS::Study_impl">SALOMEDS::Study</a><br>\r
+ <a href="#SALOMEDS::StudyBuilder_impl">SALOMEDS::StudyBuilder</a><br>\r
+ <a href="#SALOMEDS::StudyManager_impl">SALOMEDS::StudyManager</a><br>\r
+ <a href="#SALOMEDS::SObject_impl">SALOMEDS::SObject</a><br>\r
+ <a href="#SALOMEDS::SComponent_impl">SALOMEDS::SComponent</a><br>\r
+ <a href="#SALOMEDS::SComponentIterator_impl">SALOMEDS::SComponentIterator</a><br>\r
+ <a href="#SALOMEDS::ChildIterator_impl">SALOMEDS::ChildIterator<br>\r
+ </a> <a href="#SALOMEDS::AttributeComment_impl"> SALOMEDS::AttributeComment</a><br>\r
+ <br>\r
+ </div>\r
+ <br>\r
+ <br>\r
+ <br>\r
+ \r
+<div align="center"> <small><small><u><big><big><a\r
+ name="SALOMEDS::Study_impl"></a><font color="#000000"\r
+ face="Helvetica, Arial, sans-serif"><big><big><b>SALOMEDS::Study interface</b></big></big></font></big></big></u></small></small><br>\r
+ <br>\r
+ \r
+<div align="left"> <big><br>\r
+ </big></div>\r
+ <big><br>\r
+ </big> \r
+<div align="left"><b><big><a class="el"\r
+ href="interfaceSALOMEDS_1_1SComponent.html">SComponent</a> FindComponent(\r
+in string <i>aComponentName </i>)</big></b><br>\r
+ <i><br>\r
+ <u>Find GEOMETRY component in the opened study by its name:</u></i><br>\r
+ <br>\r
+ str= os.getenv("TmpDir")<br>\r
+ if str == None:<br>\r
+ str = "/tmp"<br>\r
+ file = str+"/test.hdf"<br>\r
+ <br>\r
+ openedStudy=batchmode_geompy.myStudyManager.Open(file)<br>\r
+ <br>\r
+ father = openedStudy.FindComponent("GEOM")<br>\r
+ if father is None:<br>\r
+ raise RuntimeError, "Geom\r
+ component is not found! Wrong study is opened." <br>\r
+ <br>\r
+ <br>\r
+ </div>\r
+ \r
+<div align="left"><b><big><a class="el"\r
+ href="interfaceSALOMEDS_1_1SObject.html">SObject</a> FindObject ( in string\r
+<em>anObjectName </em>)</big></b><br>\r
+ <br>\r
+ <u><i>Find the SObject of the box by its NameAttribute "box":</i></u><br>\r
+ </div>\r
+ \r
+<div align="left"><br>\r
+ </div>\r
+ \r
+<div align="left">box = openedStudy.FindObject("box")<br>\r
+ if box is None :<br>\r
+ raise RuntimeError, "box was not found! Wrong\r
+study is opened."<br>\r
+ <br>\r
+ <br>\r
+ <small><big><big><a class="el"\r
+ href="interfaceSALOMEDS_1_1SObject.html">SObject</a></big></big><b><big><big> FindObjectID\r
+ ( in</big> <big><a class="el" href="namespaceSALOMEDS.html#a1">ID</a> </big><em><big>aObjectID\r
+)</big><br>\r
+ #result: "/User data/Case1". <br>\r
+ </em><big><em></em></big><big><em></em></big></big></b></small><u><i>Find\r
+ the SObject of the box by its ID </i>"</u><u>0:1:1:2"<i>:</i></u><br>\r
+ <br>\r
+ </div>\r
+ \r
+<div align="left">box =openedStudy.FindObjectID("0:1:1:2")<br>\r
+ </div>\r
+ \r
+<div align="left">if box is None :<br>\r
+ raise RuntimeError, "box was not found! Wrong \r
+ID is used."<br>\r
+ <br>\r
+ <br>\r
+ <small><big><big><a class="el"\r
+ href="interfaceSALOMEDS_1_1SObject.html">SObject</a></big></big></small><big><b> FindObjectIOR\r
+ ( in <a class="el" href="namespaceSALOMEDS.html#a1">ID</a> <em>aObjectIOR</em>\r
+)</b></big><br>\r
+ <br>\r
+ <u><i>Find the SObject </i></u><u><i>of the result on imported MED file \r
+by it's IOR:</i></u><br>\r
+ <br>\r
+ theResult = myVisu.ImportFile(medFile)<br>\r
+ aSObj = myStudy.FindObjectIOR(theResult.GetID())<br>\r
+ <br>\r
+ <br>\r
+ <big><b><a class="el" href="interfaceSALOMEDS_1_1SObject.html">SObject</a>\r
+ FindObjectByPath ( in string <i>thePath</i> )</b></big><br>\r
+ <br>\r
+ <u><i>Find SObject by path to it:</i></u><br>\r
+ <i><br>\r
+ # create new auxiliary componen</i>t<br>\r
+ aComponent = myStudyBuilder.NewComponent("Virtual Component")<br>\r
+ <br>\r
+ # create auxiliary subtree<br>\r
+ aPath = "/Virtual Component/Case1"<br>\r
+ myStudyBuilder.AddDirectory(aPath)<br>\r
+ <br>\r
+ aSObj = myStudy.FindObjectByPath(aPath)<br>\r
+ <br>\r
+ <br>\r
+ <big><b>void SetContext ( in string <i>thePath</i>)</b> </big><b><big><big>/</big>\r
+ string GetContext ()</big></b><br>\r
+ <br>\r
+ <u><i>Set context of the study to the created case and get it for printing:</i></u><br>\r
+ <br>\r
+ aComponent = myStudyBuilder.NewComponent("User data")<br>\r
+ anAttr = aBuilder.FindOrCreateAttribute(aComponent, "AttributeName")<br>\r
+ anAttrName = anAttr._narrow(SALOMEDS.AttributeName) <br>\r
+ anAttrName.SetValue("User data")<br>\r
+ <br>\r
+ #Add a new case 'Case1' to the component 'User data'<br>\r
+ aBuilder.AddDirectory("/User data/Case1")<br>\r
+ <br>\r
+ #Set a study context to '/User data/Case1'<br>\r
+ aStudy.SetContext("/User data/Case1")<br>\r
+ <br>\r
+ #Print the current study context<br>\r
+ print aStudy.GetContext()<br>\r
+ <u><small><br>\r
+ </small><i>#result: "/User data/Case1".</i></u><br>\r
+ <br>\r
+ <br>\r
+ <big><b><a class="el" href="interfaceSALOMEDS_1_1ChildIterator.html">ChildIterator</a>\r
+ NewChildIterator ( in <a class="el"\r
+ href="interfaceSALOMEDS_1_1SObject.html">SObject</a> aSO ) </b></big><br>\r
+ <br>\r
+ <u><i>Import med file and print all mesh names that this file includes\r
+(mesh is a child of the result of imported file):</i></u><br>\r
+ <br>\r
+ <i># define file name</i><br>\r
+ aFileName = datadir + "fra.med"<br>\r
+ <br>\r
+ <i># import file in visu module and get result</i><br>\r
+ theVisu = batchmode_visu.myVisu<br>\r
+ aResult = theVisu.ImportFile(aFileName)<br>\r
+ if aResult is None : raise RuntimeError, "Error"<br>\r
+ else : print "OK"<br>\r
+ <br>\r
+ <i># get current study and its' SObject </i> \r
+ <br>\r
+ myLocalStudy = theVisu.GetCurrentStudy()<br>\r
+ aSObj = myLocalStudy.FindObjectIOR(aResult.GetID())<br>\r
+ if aSObj is None : raise RuntimeError, "Error"<br>\r
+ else : print "OK"<br>\r
+ <br>\r
+ <i># create iterator by SObject of the current study</i><br>\r
+ aMeshIter = myLocalStudy.NewChildIterator(aSObj);<br>\r
+ <br>\r
+ <i># iterating in the current study (with the help of created iterator) \r
+to find all mesh names</i> <br>\r
+ while aMeshIter.More() :<br>\r
+ aMeshSObj = aMeshIter.Value()<br>\r
+ aMeshIter.Next()<br>\r
+ anAttr = aMeshSObj.FindAttribute("AttributeName")[1]<br>\r
+ if anAttr is None :<br>\r
+ aMeshSObj\r
+ = aMeshIter.Value()<br>\r
+ aMeshIter.Next()<br>\r
+ anAttr\r
+ = aMeshSObj.FindAttribute("AttributeName")[1]<br>\r
+ anAttr = anAttr._narrow(SALOMEDS.AttributeName);<br>\r
+ aMeshName = anAttr.Value()<br>\r
+ print " ", aMeshName<br>\r
+ <br>\r
+ <br>\r
+ <big><b><a class="el"\r
+ href="interfaceSALOMEDS_1_1SComponentIterator.html">SComponentIterator</a> \r
+NewComponentIterator ()</b></big><br>\r
+ <br>\r
+ <u><i>Find the number an names of all components in the study:</i></u><br>\r
+ <br>\r
+ aCompItr = myStudy.NewComponentIterator()<br>\r
+ <br>\r
+ compNb = 0<br>\r
+ while aCompItr.More():<br>\r
+ aComp = aCompItr.Value()<br>\r
+ aName = aComp.ComponentDataType()<br>\r
+ print "Component name = ", aName<br>\r
+ compNb += 1<br>\r
+ aCompItr.Next()<br>\r
+ <br>\r
+ <br>\r
+ <big><b><a class="el" href="interfaceSALOMEDS_1_1StudyBuilder.html">StudyBuilder</a> \r
+NewBuilder ()</b></big><br>\r
+ </div>\r
+ </div>\r
+ <br>\r
+ <i><u>Create a new StudyBuilder (uses to add or modify an object in the\r
+study ):</u></i><br>\r
+ <br>\r
+ myBuilder = myStudy.NewBuilder() <br>\r
+ <br>\r
+ <br>\r
+ <big><b><a class="el"\r
+ href="interfaceSALOMEDS_1_1AttributeStudyProperties.html">AttributeStudyProperties</a> \r
+GetProperties ()</b></big><br>\r
+ <br>\r
+ <i><u>Get the attribute, which contains the properties of the study, and \r
+change properties of the study </u></i><u>by changing it</u>: <br>\r
+ <br>\r
+ aProperties = myStudy.GetProperties()<br>\r
+ if aProperties == None :<br>\r
+ raise RuntimeError, "Can't create AttributeStudyProperties \r
+attribute"<br>\r
+ aProperties = aProperties._narrow(SALOMEDS.AttributeStudyProperties)<br>\r
+ <br>\r
+ A = aProperties<br>\r
+ <br>\r
+ <i># print stydy properties</i><br>\r
+ print "A.GetUserName()= ", A.GetUserName()<br>\r
+ res,mm,hh,dd,mnth,yy=A.GetCreationDate()<br>\r
+ print "A.GetCreationDate() = ", mm,hh,dd,mnth,yy<br>\r
+ print "A.GetCreationMode() = ", A.GetCreationMode()<br>\r
+ print "A.IsModified() = ", A.IsModified()<br>\r
+ print "A.IsLocked() = ", A.IsLocked()<br>\r
+ <br>\r
+ <i># change the properties of the study</i><br>\r
+ if A.IsLocked() == 0 :<br>\r
+ A.SetUserName("tester"); print 'A.SetUserName("tester"), \r
+A.GetUserName() = ', A.GetUserName()<br>\r
+ A.SetCreationDate(11,11,11,11,2002); print 'A.SetCreationDate(11,11,11,11,2002), \r
+A.GetCreationDate() =', A.GetCreationDate()<br>\r
+ print "A.IsModified() = ", A.IsModified()<br>\r
+ A.SetLocked(1)<br>\r
+ <br>\r
+ <br>\r
+ <big><b>boolean IsModified ()</b></big><br>\r
+ <br>\r
+ <u><i>Find if study is modified:</i></u><br>\r
+ <br>\r
+ IsModified = myStudy.IsModified()<br>\r
+ <br>\r
+ if IsModified == 1:<br>\r
+ print "The study is modified and not saved"<br>\r
+ <br>\r
+ <br>\r
+ <big><b>boolean IsEmpty ()</b></big><br>\r
+ <br>\r
+ <u><i>Find if study is empty:</i></u><br>\r
+ <br>\r
+ IsEmpty = myStudy.IsEmpty()<br>\r
+ <br>\r
+ if IsEmpty == 1:<br>\r
+ print "The study is empty"<br>\r
+ <br>\r
+ <br>\r
+ <br>\r
+ <br>\r
+ \r
+<div align="center"><small><small><u><big><big><a\r
+ name="SALOMEDS::StudyBuilder_impl"></a><font color="#000000"\r
+ face="Helvetica, Arial, sans-serif"><big><big><b>SALOMEDS::StudyBuilder\r
+interface</b></big></big></font></big></big></u></small></small><br>\r
+ </div>\r
+ <br>\r
+ <br>\r
+ <br>\r
+ <big><b><a class="el" href="interfaceSALOMEDS_1_1SComponent.html">SComponent</a> \r
+NewComponent ( in string <i>ComponentDataType</i> )</b></big><br>\r
+ <br>\r
+ <u><i>Create Geometry SComponent:</i></u><br>\r
+ <br>\r
+ myBuilder = myStudy.NewBuilder()<br>\r
+ father = myBuilder.NewComponent("GEOM")<br>\r
+ <br>\r
+ <big><b><br>\r
+ void DefineComponentInstance ( in <a class="el"\r
+ href="interfaceSALOMEDS_1_1SComponent.html">SComponent</a> <i>aComponent</i>,\r
+in Object <i>ComponentIOR</i> )</b></big><br>\r
+ <br>\r
+ <u><i>Define the instance to the created geometry component:</i></u><br>\r
+ <br>\r
+ <i># find geom component</i><br>\r
+ myLCC = batchmode_salome.lcc<br>\r
+ geom = myLCC.FindOrLoadComponent("FactoryServer", "Geometry")<br>\r
+ geom = geom._narrow(GEOM.GEOM_Gen)<br>\r
+ geom.GetCurrentStudy(myStudyId)<br>\r
+ <br>\r
+ myBuilder = myStudy.NewBuilder()<br>\r
+ <br>\r
+ father = myBuilder.NewComponent("GEOM")<br>\r
+ myBuilder.DefineComponentInstance(father,geom)<br>\r
+ <br>\r
+ <br>\r
+ <big><b><a class="el" href="interfaceSALOMEDS_1_1SObject.html">SObject</a> \r
+NewObject ( in <a class="el"\r
+ href="interfaceSALOMEDS_1_1SObject.html">SObject</a> <i>theFatherObject</i>\r
+)</b></big><br>\r
+ <br>\r
+ <u><i>Create box and add it to study:</i></u><br>\r
+ <br>\r
+ from batchmode_geompy import *<br>\r
+ <br>\r
+ <i># create a box</i><br>\r
+ box = geom.MakeBox(0,0,0,100,100,150)<br>\r
+ <br>\r
+ ior = orb.object_to_string(box)<br>\r
+ box._set_Name(ior) <br>\r
+ <br>\r
+ <i># create Geometry SComponent</i><br>\r
+ father = myBuilder.NewComponent("GEOM")<br>\r
+ A1 = myBuilder.FindOrCreateAttribute(father, "AttributeName");<br>\r
+ FName = A1._narrow(SALOMEDS.AttributeName)<br>\r
+ FName.SetValue("Geometry")<br>\r
+ myBuilder.DefineComponentInstance(father,geom)<br>\r
+ <br>\r
+ <i># add box to Study</i><br>\r
+ myBuilder.NewCommand()<br>\r
+ newObj = myBuilder.NewObject(father)<br>\r
+ A1 = myBuilder.FindOrCreateAttribute(newObj, "AttributeIOR");<br>\r
+ ObjIOR = A1._narrow(SALOMEDS.AttributeIOR)<br>\r
+ ObjIOR.SetValue(ior)<br>\r
+ A2 = myBuilder.FindOrCreateAttribute(newObj, "AttributeName");<br>\r
+ ObjName = A2._narrow(SALOMEDS.AttributeName)<br>\r
+ ObjName.SetValue("Common_operation")<br>\r
+ id = newObj.GetID()<br>\r
+ box._set_StudyShapeId(id)<br>\r
+ myBuilder.CommitCommand()<br>\r
+ <br>\r
+ <br>\r
+ <b><big>void RemoveObject ( in <a class="el"\r
+ href="interfaceSALOMEDS_1_1SObject.html">SObject</a> <i>anObject</i> )</big></b><br>\r
+ <br>\r
+ <u><i># Remove CutPlanes SObject from the StudyBuilder (delete cutplanes):</i></u><br>\r
+ <br>\r
+ SObj=myStudy.FindObjectIOR(cutplanes.GetID())<br>\r
+ myBuilder = newStudy.NewBuilder()<br>\r
+ myBuilder.RemoveObject(SObj)<br>\r
+ <br>\r
+ <b><big><br>\r
+ void LoadWith ( in <a class="el"\r
+ href="interfaceSALOMEDS_1_1SComponent.html">SComponent</a><i> sco</i>, in\r
+<a class="el" href="interfaceSALOMEDS_1_1Driver.html">Driver</a> <i>Engine</i>\r
+) raises (<a class="el" href="exceptionSALOME_1_1SALOME__Exception.html">SALOME::SALOME_Exception</a>)</big></b><br>\r
+ <br>\r
+ <i><u># Load Visu component:</u></i><br>\r
+ <br>\r
+ myBuilder = openedStudy.NewBuilder()<br>\r
+ SCom=openedStudy.FindComponent("VISU")<br>\r
+ myBuilder.LoadWith(SCom ,myVisu)<br>\r
+ <br>\r
+ <br>\r
+ <big><b><a class="el" href="interfaceSALOMEDS_1_1GenericAttribute.html">GenericAttribute</a> \r
+FindOrCreateAttribute ( in <a class="el"\r
+ href="interfaceSALOMEDS_1_1SObject.html">SObject</a> <i>anObject</i>, \r
+in string <i>aTypeOfAttribute</i>)</b></big><br>\r
+ <br>\r
+ <u><i>Create AttributeName attribute for created component an set value\r
+to it:</i></u><br>\r
+ <br>\r
+ myBuilder = myStudy.NewBuilder()<br>\r
+ aComponent = myBuilder.NewComponent("User data")<br>\r
+ <br>\r
+ anAttr = myBuilder.FindOrCreateAttribute(aComponent, "AttributeName")<br>\r
+ <br>\r
+ anAttrName = anAttr._narrow(SALOMEDS.AttributeName) <br>\r
+ anAttrName.SetValue("User data")<br>\r
+ <br>\r
+ <br>\r
+ <big><b>boolean FindAttribute ( in <a class="el"\r
+ href="interfaceSALOMEDS_1_1SObject.html">SObject</a> <i>anObject,</i> out<i> </i><a\r
+ class="el" href="interfaceSALOMEDS_1_1GenericAttribute.html">GenericAttribute</a><i> \r
+anAttribute</i>, in string <i>aTypeOfAttribute</i> )</b></big><br>\r
+ <big><b><br>\r
+ </b></big><i><u>Find AttributeName attribute of the field and print the\r
+field name:</u></i><br>\r
+ <br>\r
+ aFieldSObj = myStudy.FindObject("Head, -")<br>\r
+ <br>\r
+ myStudyBuilder.FindAttribute( aFieldSObj, anAttr, "AttributeName")<br>\r
+ if res == 0:<br>\r
+ raise RuntimeError, "Error: Attribute not \r
+found"<br>\r
+ <br>\r
+ anAttr = anAttr._narrow(SALOMEDS.AttributeName);<br>\r
+ aFieldName = anAttr.Value()<br>\r
+ print " ", aFieldName<br>\r
+ <br>\r
+ <br>\r
+ <b><big>void RemoveAttribute ( in <a class="el"\r
+ href="interfaceSALOMEDS_1_1SObject.html">SObject</a> <i>anObject</i>, in\r
+string <i>aTypeOfAttribute</i> )</big></b><br>\r
+ <big><b><br>\r
+ </b><u><i><small>Remove AttributeSelectable attribute of the field SObject:</small></i></u><br>\r
+ <b><br>\r
+ </b></big>aFieldSObj = myStudy.FindObject("Head, -")<br>\r
+ <br>\r
+ myStudyBuilder.RemoveAttribute( aFieldSObj, "AttributeSelectable")<br>\r
+ <big><b><br>\r
+ <br>\r
+ </b><b>void Addreference ( in <big> <small><a class="el"\r
+ href="interfaceSALOMEDS_1_1SObject.html">SObject</a></small></big><small> \r
+</small><i>anObject</i>, in </b><b> <a class="el"\r
+ href="interfaceSALOMEDS_1_1SObject.html">SObject</a> <i>theReferencedObject</i>\r
+)</b></big><br>\r
+ <br>\r
+ <u><i>Create a reference between created SObject and the existing field:</i></u><br>\r
+ <br>\r
+ aFieldSObj = myStudy.FindObject("Head, -")<br>\r
+ aNewSObj = myBuilder.NewObject(myVisu)<br>\r
+ <br>\r
+ myBuilder.Addreference(aFieldSObj, aNewSObj)<br>\r
+ <big><b><br>\r
+ <br>\r
+ </b></big><big><small><i><u><a name="NewCommand_ex"></a></u></i></small></big><big><small><b><big>void \r
+NewCommand ()<br>\r
+ <br>\r
+ </big></b><i><u>Create new command wich containes actions for changing the \r
+properties of the study:</u></i><b><big><br>\r
+ <br>\r
+ </big></b></small></big>A = myStudy.GetProperties()<br>\r
+ A = aProperties._narrow(SALOMEDS.AttributeStudyProperties)<br>\r
+ <br>\r
+ myBuilder = myStudy.NewBuilder()<br>\r
+ <br>\r
+ myBuilder.NewCommand() <i> # creates a new command</i><br>\r
+ <br>\r
+ <i># change the properties of the study</i><br>\r
+ if A.IsLocked() == 0 :<br>\r
+ A.SetUserName("tester"); print 'A.SetUserName("tester"), \r
+A.GetUserName() = ', A.GetUserName()<br>\r
+ A.SetCreationDate(11,11,11,11,2002); print 'A.SetCreationDate(11,11,11,11,2002), \r
+A.GetCreationDate() =', A.GetCreationDate()<br>\r
+ print "A.IsModified() = ", A.IsModified()<br>\r
+ A.SetLocked(1)<br>\r
+ <big><small><br>\r
+ </small></big>myBuilder.CommitCommand() <i># commits all actions declared \r
+within the created command</i><big><br>\r
+ <b><br>\r
+ <br>\r
+ void CommitCommand()<br>\r
+ </b><small><br>\r
+ </small><i><small>See the end of the <a href="#NewCommand_ex">previous example</a></small></i><b><br>\r
+ <br>\r
+ <br>\r
+ void AbortCommand ()</b></big><br>\r
+ <br>\r
+ <big><small><i><u>Create new command wich containes actions for changing \r
+the properties of the study, cancel all declared actions:</u></i></small></big><br>\r
+ <br>\r
+ A = myStudy.GetProperties()<br>\r
+ A = aProperties._narrow(SALOMEDS.AttributeStudyProperties)<br>\r
+ <br>\r
+ myBuilder = myStudy.NewBuilder()<br>\r
+ <br>\r
+ myBuilder.NewCommand() <i> # creates a new command</i><br>\r
+ <br>\r
+ <i># change the properties of the study</i><br>\r
+ if A.IsLocked() == 0 :<br>\r
+ A.SetUserName("tester"); print 'A.SetUserName("tester"), \r
+A.GetUserName() = ', A.GetUserName()<br>\r
+ A.SetCreationDate(11,11,11,11,2002); print 'A.SetCreationDate(11,11,11,11,2002), \r
+A.GetCreationDate() =', A.GetCreationDate()<br>\r
+ print "A.IsModified() = ", A.IsModified()<br>\r
+ A.SetLocked(1)<br>\r
+ <big><small><br>\r
+ </small></big>myBuilder.AbortCommand() <i># abort all actions declared\r
+within the created command</i><br>\r
+ <br>\r
+ <br>\r
+ <big><b>void Undo () raises (<a class="el"\r
+ href="exceptionSALOMEDS_1_1StudyBuilder_1_1LockProtection.html">LockProtection</a>)</b><b> \r
+<small>, </small></b></big><br>\r
+ <big><b>void Redo ()</b></big> <big><b>raises (<a class="el"\r
+ href="exceptionSALOMEDS_1_1StudyBuilder_1_1LockProtection.html">LockProtection</a>)</b></big><br>\r
+ <br>\r
+ <big><small><i><u>Create new command wich containes actions for changing \r
+the properties of the study, <br>\r
+ cancel all declared actions and then redo it with the help of undo/redo\r
+mechanism:</u></i></small></big><br>\r
+ <br>\r
+ A = myStudy.GetProperties()<br>\r
+ A = aProperties._narrow(SALOMEDS.AttributeStudyProperties)<br>\r
+ <br>\r
+ myBuilder = myStudy.NewBuilder()<br>\r
+ <br>\r
+ myBuilder.NewCommand() <i> # creates a new command</i><br>\r
+ <br>\r
+ <i># change the properties of the study</i><br>\r
+ if A.IsLocked() == 0 :<br>\r
+ A.SetUserName("tester"); print 'A.SetUserName("tester"), \r
+A.GetUserName() = ', A.GetUserName()<br>\r
+ A.SetCreationDate(11,11,11,11,2002); print 'A.SetCreationDate(11,11,11,11,2002), \r
+A.GetCreationDate() =', A.GetCreationDate()<br>\r
+ print "A.IsModified() = ", A.IsModified()<br>\r
+ A.SetLocked(1)<br>\r
+ <big><small><br>\r
+ </small></big>myBuilder.CommitCommand() <i># commits all actions declared \r
+within the created command</i><br>\r
+ <big><small><br>\r
+ </small></big>myBuilder.Undo() <i># cancels all actions of the command<br>\r
+ <br>\r
+ </i>myBuilder.Redo() <i># redoes all actions of the command</i><br>\r
+ <i><br>\r
+ <br>\r
+ <br>\r
+ </i> \r
+<div align="center"><small><small><u><big><big><a\r
+ name="SALOMEDS::StudyManager_impl"></a><font color="#000000"\r
+ face="Helvetica, Arial, sans-serif"><big><big><b>SALOMEDS::StudyManager\r
+interface</b></big></big></font></big></big></u></small></small><br>\r
+ </div>\r
+ <i><br>\r
+ <br>\r
+ <br>\r
+ </i><big><b><a class="el" href="interfaceSALOMEDS_1_1Study.html">Study</a> \r
+NewStudy ( in string <i>study_name</i> )</b></big><br>\r
+ <i><br>\r
+ <u>Create the study with the name "Test_Study":</u></i><br>\r
+ <br>\r
+ myNewStudy = myStudyManager.NewStudy("Test_Study")<br>\r
+ <br>\r
+ <br>\r
+ <big><b><a class="el" href="interfaceSALOMEDS_1_1Study.html">Study</a> Open\r
+( in </b></big><a class="el" href="namespaceSALOMEDS.html#a0">URL</a><big><b> \r
+<i>aStudyUrl</i> ) raises </b></big>(<a class="el"\r
+ href="exceptionSALOME_1_1SALOME__Exception.html">SALOME::SALOME_Exception</a>)<br>\r
+ <br>\r
+ <i><u>Open the study saved in the HDF file:</u></i><br>\r
+ <br>\r
+ file = 'saved_study.hdf'<br>\r
+ <br>\r
+ openedStudy=myStudyManager.Open(file)<br>\r
+ <br>\r
+ if openedStudy == None:<br>\r
+ raise RuntimeError, "Can't open saved study!"<br>\r
+ <br>\r
+ <br>\r
+ <big><b>void Save (in <a class="el"\r
+ href="interfaceSALOMEDS_1_1Study.html">Study</a> <i>aStudy</i>, in boolean\r
+<i>theMultifile</i> )</b></big><big><b><br>\r
+ <br>\r
+ </b><small><u><i>Open study, import med file into it and save with the old \r
+path and filename:</i></u></small><b><br>\r
+ <br>\r
+ </b></big>file = "saved_study.hdf"<br>\r
+ myMedFile ="medfile.med"<br>\r
+ <br>\r
+ openedStudy=myStudyManager.Open(file)<br>\r
+ <br>\r
+ myVisu.SetCurrentStudy(openedStudy)<br>\r
+ myResult = myVisu.ImportFile(myMedFile)<br>\r
+ <br>\r
+ myStudyManager.Save(openedStudy, 0)<br>\r
+ <br>\r
+ <big><b><br>\r
+ void SaveAs ( in <small><a class="el" href="namespaceSALOMEDS.html#a0">URL</a></small> \r
+<i>aUrl</i>, in <small> <a class="el"\r
+ href="interfaceSALOMEDS_1_1Study.html">Study</a> </small><i>aStudy</i>,\r
+ <small><em></em></small></b></big><big><b>in boolean <i>theMultifile\r
+</i>)</b><br>\r
+ <br>\r
+ <small><u><i>Open study from the file and resave it in several files (using \r
+Multifile option while saving)</i></u></small><br>\r
+ <br>\r
+ </big>file = "saved_study.hdf"<br>\r
+ newfile = "resaved_study.hdf"<br>\r
+ <br>\r
+ openedStudy=myStudyManager.Open(file)<br>\r
+ myStudyManager.SaveAs(newfile, openedStudy, 1)<br>\r
+ <big><br>\r
+ <br>\r
+ void Close ( in <a class="el"\r
+ href="interfaceSALOMEDS_1_1Study.html">Study</a> aStudy )</big><br>\r
+ <br>\r
+ <u><i>Close just opened study:</i></u><br>\r
+ <br>\r
+ file = "saved_study.hdf"<br>\r
+ <br>\r
+ openedStudy=myStudyManager.Open(file)<br>\r
+ myStudyManager.Close(openedStudy)<br>\r
+ <br>\r
+ <br>\r
+ <br>\r
+ \r
+<div align="center"><small><small><u><big><big><a\r
+ name="SALOMEDS::SObject_impl"></a><font color="#000000"\r
+ face="Helvetica, Arial, sans-serif"><big><big><b>SALOMEDS::SObject interface</b></big></big></font></big></big></u></small></small><br>\r
+ </div>\r
+ <br>\r
+ <br>\r
+ <br>\r
+ <big><b><a class="el" href="namespaceSALOMEDS.html#a1">ID</a> GetID ()</b></big><br>\r
+ <br>\r
+ <u><i>Create new SObject and get its ID:</i></u><br>\r
+ <br>\r
+ mySObj = myBuilder.NewObject(myFather)<br>\r
+ <br>\r
+ myID = mySObj.GetID()<br>\r
+ <br>\r
+ <br>\r
+ <big><b><a class="el" href="interfaceSALOMEDS_1_1SComponent.html">SComponent</a> \r
+GetFatherComponent ()</b></big><br>\r
+ <br>\r
+ <u><i>Get father component of the SObject:</i></u><br>\r
+ <br>\r
+ myFather = mySObj.GetFatherComponent();<br>\r
+ <br>\r
+ <br>\r
+ <big><b>boolean FindAttribute ( out <a class="el"\r
+ href="interfaceSALOMEDS_1_1GenericAttribute.html">GenericAttribute</a> <i>anAttribute</i>,\r
+in string <i>aTypeOfAttribute </i>)</b></big><br>\r
+ <br>\r
+ <u><i>Find the AttributeName attribute of the field:</i></u><br>\r
+ <br>\r
+ aFieldSObj = myStudy.FindObject("Head, -")<br>\r
+ <br>\r
+ res = aFieldSObj.FindAttribute( anAttr, "AttributeName")<br>\r
+ if res == 0:<br>\r
+ raise RuntimeError, "Error: Attribute not \r
+found"<br>\r
+ <br>\r
+ <br>\r
+ <big><b><a class="el" href="namespaceSALOMEDS.html#a9">ListOfAttributes</a> \r
+GetAllAttributes ()</b></big><br>\r
+ <br>\r
+ <i><u>Get list of all attributes of the SObject, find the number of attributes:</u></i><br>\r
+ <br>\r
+ attrs = mySObj.GetAllAttributes()<br>\r
+ aLen = len(attrs) <i># number of attributes</i><br>\r
+ <br>\r
+ <br>\r
+ <br>\r
+ <br>\r
+ \r
+<div align="center"><small><small><u><big><big><a\r
+ name="SALOMEDS::SComponent_impl"></a><font color="#000000"\r
+ face="Helvetica, Arial, sans-serif"><big><big><b>SALOMEDS::SComponent interface</b></big></big></font></big></big></u></small></small><br>\r
+ </div>\r
+ <br>\r
+ <br>\r
+ <br>\r
+ <big><b>string ComponentDataType ()</b></big><br>\r
+ <br>\r
+ <i><u><a name="ComponentIterator_ex"></a>Print names of all components wich \r
+the study contains:</u></i><br>\r
+ <br>\r
+ aCompItr = myStudy.NewComponentIterator() <br>\r
+ <br>\r
+ while aCompItr.More():<br>\r
+ aComp = aCompItr.Value()<br>\r
+ aName = aComp.ComponentDataType()<br>\r
+ print "Component name = ", aName<br>\r
+ aCompItr.Next()<br>\r
+ <br>\r
+ <br>\r
+ <i><b>Other methods are inherited.</b></i><br>\r
+ <br>\r
+ <br>\r
+ <br>\r
+ <br>\r
+ \r
+<div align="center"><small><small><u><big><big><a\r
+ name="SALOMEDS::SComponentIterator_impl"></a><font color="#000000"\r
+ face="Helvetica, Arial, sans-serif"><big><big><b>SALOMEDS::SComponentIterator\r
+ interface</b></big></big></font></big></big></u></small></small><br>\r
+ </div>\r
+ <br>\r
+ <br>\r
+ <br>\r
+ <big><b>boolean More (), </b><b>void Next (), </b></big><big><b><a\r
+ class="el" href="interfaceSALOMEDS_1_1SComponent.html">SComponent</a> Value\r
+()</b></big><br>\r
+ <br>\r
+ <big><i><small>See <a href="examples_Study.html#ComponentIterator_ex">another \r
+example</a></small></i></big><br>\r
+ <br>\r
+ <br>\r
+ <br>\r
+ \r
+<div align="center"><small><small><u><big><big><a\r
+ name="SALOMEDS::ChildIterator_impl"></a><font color="#000000"\r
+ face="Helvetica, Arial, sans-serif"><big><big><b>SALOMEDS::ChildIterator\r
+ interface</b></big></big></font></big></big></u></small></small><br>\r
+ </div>\r
+ <br>\r
+ <br>\r
+ <br>\r
+ <big><b>boolean More () , void Next (), <a class="el"\r
+ href="interfaceSALOMEDS_1_1SObject.html">SObject</a> Value ()</b></big><br>\r
+ <br>\r
+ <u><i>Print all mesh names of imported MED file with the help of ChildIterator:</i></u><br>\r
+ <br>\r
+ aResult = myVisu.ImportFile("MedFile.med")<br>\r
+ <br>\r
+ myStudy = theVisu.GetCurrentStudy()<br>\r
+ aSObj = myLocalStudy.FindObjectIOR(aResult.GetID())<br>\r
+ <br>\r
+ aMeshIter = myLocalStudy.NewChildIterator(aSObj); <i> # creating new \r
+child iterator</i><br>\r
+ <br>\r
+ while aMeshIter.More() : \r
+ \r
+ <i># check if one more\r
+child level exists. </i><br>\r
+ aMeshSObj = aMeshIter.Value() \r
+ \r
+ # <i>returns the SObject corresponding \r
+to the current object found by the iterator. </i> <br>\r
+ aMeshIter.Next() <i> \r
+ \r
+ \r
+ # passes the iterator to the next level. </i><br>\r
+ anAttr = aMeshSObj.FindAttribute("AttributeName")[1]<br>\r
+ if anAttr is None :<br>\r
+ \r
+aMeshSObj = aMeshIter.Value()<br>\r
+ \r
+ aMeshIter.Next()<br>\r
+ \r
+anAttr = aMeshSObj.FindAttribute("AttributeName")[1]<br>\r
+ anAttr = anAttr._narrow(SALOMEDS.AttributeName);<br>\r
+ aMeshName = anAttr.Value()<br>\r
+ print " ", aMeshName<br>\r
+ <br>\r
+ <br>\r
+ <br>\r
+ \r
+<div align="center"><small><small><u><big><big><a\r
+ name="SALOMEDS::AttributeComment_impl"\r
+ href="#SALOMEDS::AttributeComment_impl"></a><font color="#000000"\r
+ face="Helvetica, Arial, sans-serif"><big><big><b>SALOMEDS::AttributeComment\r
+ interface</b></big></big></font></big></big></u></small></small><br>\r
+ </div>\r
+ <br>\r
+ <br>\r
+ <big><b>string Value (), void SetValue ( in string <i>value </i>)</b></big><br>\r
+ <br>\r
+ <u><i>Find the AttributeComment attribute of the "Head" field in the study, \r
+print it, then change it to "My Comment" string:</i></u><br>\r
+ <br>\r
+ aFieldSObj = myStudy.FindObject("Head, -")<br>\r
+ anAttr = aFieldSObj.FindAttribute("AttributeComment")[1]<br>\r
+ \r
+anAttr = anAttr._narrow(SALOMEDS.AttributeComment);<br>\r
+ \r
+aFieldComment = anAttr.Value()<br>\r
+ <br>\r
+ print "AttributeComment", anAttr<br>\r
+ <br>\r
+ anAttr.SetValue ("My Comment")<br>\r
+ \r
+<pre></pre>\r
+ <br>\r
+</body>\r
+</html>\r
--- /dev/null
+<!doctype html public "-//w3c//dtd html 4.0 transitional//en">\r
+<html>\r
+<head>\r
+ <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">\r
+ <meta name="GENERATOR" content="Mozilla/4.73 [en] (WinNT; I) [Netscape]">\r
+ <title>Main Page</title>\r
+<link href="doxygen.css" rel="stylesheet" type="text/css">\r
+</head>\r
+<body>\r
+ \r
+<center><table WIDTH="96%" >\r
+<tr>\r
+<td><a href="http://www.opencascade.com"><img SRC="sources/logocorp.gif" BORDER=0 height=46 width=122></a></td>\r
+\r
+<td>\r
+<div align=right><a href="http://www.opencascade.org/SALOME/"><img SRC="sources/application.gif" BORDER=0 height=46 width=108></a></div>\r
+</td>\r
+</tr>\r
+</table></center>\r
+<a NAME="page1"></a>\r
+<h2>\r
+Mapping of IDL definitions to Python language.</h2>\r
+<a NAME="Intro"></a>\r
+<h2>\r
+Introduction</h2>\r
+SALOME is a distributed client/server application using the Common\r
+Object Request Broker Architecture (CORBA). CORBA architecture uses the\r
+Interface Definition Language (IDL), which specifies interfaces between\r
+CORBA objects. So with help of IDL CORBA's language independence is ensured\r
+. Because interfaces described in IDL can be mapped to the most of currently\r
+used programming languages, CORBA applications and components are thus\r
+independent of the language(s) used to implement them. In other words,\r
+a client written in C++ can communicate with a server written in Java,\r
+which in turn can communicate with another server written in COBOL, and\r
+so forth.\r
+<p>One important thing to remember about IDL is that it is not an implementation\r
+language. That is, applications can't be written in IDL. The sole purpose\r
+of IDL is to define interfaces; providing implementations for these interfaces\r
+is performed using some other language.\r
+<p>This page contains an abridged reference manual for mapping of IDL definitions\r
+to Python language. It will be useful for Python programmers who are not\r
+familiar with IDL language. All examples are taken from SALOME source\r
+files. The complete version of Python Language Mapping Specification can\r
+be found <a href="http://www.omg.org" target="top">here.</a>\r
+<br> \r
+<p><a NAME="contents"></a><b>CONTENTS:</b>\r
+<ul> \r
+<li>\r
+<a href="#subsection1">Using Scoped Names</a></li>\r
+\r
+<li>\r
+<a href="#subsection2">Mapping for Template and Array Types</a></li>\r
+\r
+<li>\r
+<a href="#subsection3">Mapping for Objects and Operations</a></li>\r
+\r
+<li>\r
+<a href="#subsection4">Narrowing Object References</a></li>\r
+\r
+<li>\r
+<a href="#subsection5">Mapping for Exceptions</a></li>\r
+\r
+<li>\r
+<a href="#subsection6">Mapping for Enumeration Types</a></li>\r
+\r
+<li>\r
+<a href="#subsection7">Mapping for Structured Types</a></li>\r
+</ul>\r
+<br>\r
+<a NAME="subsection1"></a>\r
+<h3>\r
+Using Scoped Names</h3>\r
+Python implements a module concept that is similar to the IDL scoping mechanisms,\r
+except that it does not allow for nested modules. In addition, Python requires\r
+each object to be implemented in a module; globally visible objects are\r
+not supported.\r
+<p>Because of these constraints, scoped names are translated into Python\r
+using the following rules:\r
+<p>\95 An IDL module mapped into a Python module. Modules containing modules\r
+are mapped to packages (i.e., directories with an <b>__init__</b> module\r
+containing all definitions excluding the nested modules). An implementation\r
+can chose to map toplevel definitions (including the module CORBA) to modules\r
+in an implementationdefined package, to allow concurrent installations\r
+of different CORBA runtime libraries. In that case, the implementation\r
+must provide additional modules so that toplevel modules can be used without\r
+importing them from a package.\r
+<p>\95 For all other scopes, a Python class is introduced that contains all\r
+the definitions inside this scope.\r
+<p>\95 Other global definitions (except modules) appear in a module whose\r
+name is implementation dependent. Implementations are encouraged to use\r
+the name of the IDL file when defining the name of that module.\r
+<p>For instance,\r
+<div class="fragment">\r
+<pre>module SALOMEDS {\r
+ interface StudyManager {\r
+ void Close(in Study aStudy);\r
+ };\r
+};</pre>\r
+</div>\r
+would introduce a module SALOMEDS.py, which contains the following definitions:\r
+<div class="fragment">\r
+<pre># module SALOMEDS.py\r
+class StudyManager:\r
+ def _Close(self,aStudy):\r
+ pass #interfaces are discussed later</pre>\r
+</div>\r
+To avoid conflicts, IDL names that are also Python identifiers are prefixed\r
+with an underscore (\91_\92).\r
+<p><b><i><a href="#contents">Back to the contents</a></i></b><b><i></i></b>\r
+<p><a NAME="subsection2"></a>\r
+<h3>\r
+Mapping for Template and Array Types</h3>\r
+Both the bounded and the unbounded string type of IDL are mapped to the\r
+Python string type. Wide strings are represented by an implementation-defined\r
+type with the following properties:\r
+<p>\95 For the wide string X and the integer n, X[n] returns the nth character,\r
+which is a wide string of length 1.\r
+<p>\95 len(X) returns the number of characters of wide string X.\r
+<p>\95 CORBA.wstr(c) returns a wide character with the code point c in an\r
+implementation-defined encoding.\r
+<p>\95 X+Y returns the concatenation of wide strings X and Y.\r
+<p>\95 CORBA.word(CORBA.wstr(c)) == c\r
+<p>The sequence template is mapped to sequence objects (e.g., tuples or\r
+lists). Applications should not assume that values of a sequence type are\r
+mutable. Sequences and arrays of octets and characters are mapped to the\r
+string type for efficiency reasons.\r
+<p>For example, given the IDL definitions\r
+<div class="fragment">\r
+<pre>module SALOMEDS {\r
+ typedef sequence <string> StringSeq;\r
+ \r
+ interface AttributeTableOfInteger : GenericAttribute {\r
+\r
+ void SetRowTitles(in StringSeq theTitles) raises(IncorrectArgumentLength);\r
+ };\r
+};</pre>\r
+</div>\r
+a client could invoke the operation\r
+<div class="fragment">\r
+<pre>print My_AttributeTableOfInteger.SetRowTitles(["X","F"])</pre>\r
+</div>\r
+Array types are mapped like sequence templates. The application in this\r
+example also expects an IncorrectArgumentLength exception if it passes\r
+sequences that violate the bounds constraint or arrays of wrong size.\r
+<p>Another example with arrays. The following IDL definition\r
+<div class="fragment">\r
+<pre>module SALOMEDS {\r
+ typedef sequence<GenericAttribute> ListOfAttributes;\r
+ interface SObject {\r
+ ListOfAttributes GetAllAttributes();\r
+ };\r
+};</pre>\r
+</div>\r
+is equal to\r
+<div class="fragment">\r
+<pre>import SALOMEDS\r
+\r
+attributes=[]\r
+ \r
+attributes = My_SObject.GetAllAttributes()\r
+\r
+length = len(attributes)\r
+\r
+print "Attributes number = ", length\r
+print attributes</pre>\r
+</div>\r
+<b><i><a href="#contents">Back to the contents</a></i></b>\r
+<p><a NAME="subsection3"></a>\r
+<h3>\r
+Mapping for Objects and Operations</h3>\r
+A CORBA object reference is represented as a Python object at run-time.\r
+This object provides all the operations that are available on the interface\r
+of the object. Although this specification does not mandate the use of\r
+classes for stub objects, the following discussion uses classes to indicate\r
+the interface.\r
+<p>The nil object is represented by <b>None</b>.\r
+<p>If an operation expects parameters of the IDL Object type, any Python\r
+object representing an object reference might be passed as actual argument.\r
+<p>If an operation expects a parameter of an abstract interface, either\r
+an object implementing that interface, or a value supporting this interface\r
+may be passed as actual argument. The semantics of abstract values then\r
+define whether the argument is passed by value or by reference.\r
+<p>Operations of an interface map to methods available on the object references.\r
+Parameters with a parameter attribute of <b>in</b> or <b>inout</b> are\r
+passed from left to right tothe method, skipping <b>out</b> parameters.\r
+The return value of a method depends on the number of <b>out</b> parameters\r
+and the return type. If the operation returns a value, this value forms\r
+the first <i>result value</i>. All <b>inout</b> or <b>out</b> parameters\r
+form consecutive <i>result values</i>. The method result depends then on\r
+the number of <i>result values</i>:\r
+<p>\95 If there is no <i>result value</i>, the method returns None.\r
+<p>\95 If there is exactly one <i>result value</i>, it is returned as a single\r
+value.\r
+<p>\95 If there is more than one <i>result value</i>, all of them are packed\r
+into a tuple, and this tuple is returned.\r
+<p>Assuming the IDL definition\r
+<div class="fragment">\r
+<pre>module SALOMEDS{\r
+ interface StudyBuilder{\r
+ boolean FindAttribute ( in SObject anObject, \r
+ out GenericAttribute anAttribute, \r
+ in string aTypeOfAttribute );\r
+ };\r
+};</pre>\r
+</div>\r
+a client could write\r
+<div class="fragment">\r
+<pre>from SALOMEDS import StudyBuilder;\r
+my_StudyBuilder=...\r
+ \r
+ res,A=my_StudyBuilder.FindAttribute(Sobj, "AttributeSequenceOfReal")</pre>\r
+</div>\r
+In this example <b>A</b> corresponds to the return value <b>anAttribute</b>\r
+and <b>res</b> to the <b>boolean</b> return value.\r
+<p>If an interface defines an <b>attribute name</b>, for example, the attribute\r
+is mapped into an operation <b>_get_name</b>. If the attribute is not <b>readonly</b>,\r
+there is an additional operation <b>_set_name</b>.\r
+<p>The IDL definition\r
+<div class="fragment">\r
+<pre>module SALOMEDS{\r
+ interface Study{\r
+ attribute string Name;\r
+ };\r
+};</pre>\r
+</div>\r
+is equal to the following\r
+<div class="fragment">\r
+<pre>from SALOMEDS import Study\r
+My_Study=...\r
+ Name=My_Study._get_name();\r
+ Name=My_Study._set_name();</pre>\r
+</div>\r
+<b><i><a href="#contents">Back to the contents</a></i></b><b><i><a href="#contents"></a></i></b>\r
+<p><a NAME="subsection4"></a>\r
+<h3>\r
+Narrowing Object References</h3>\r
+Python objects returned from CORBA operations or pseudo-operations (such\r
+as string_to_object) might have a dynamic type, which is more specific\r
+than the static type as defined in the operation signature.\r
+<p>Since there is no efficient and reliable way of automatically creating\r
+the most specific type, explicit narrowing is necessary. To narrow an object\r
+reference <b>A</b> to an interface class <b>AttributeSequenceOfReal</b>,\r
+the client can use the following operation\r
+<div class="fragment">\r
+<pre>A = A._narrow(SALOMEDS.AttributeSequenceOfReal)</pre>\r
+</div>\r
+<b><i><a href="#contents">Back to the contents</a></i></b><b><i><a href="#contents"></a></i></b>\r
+<p><a NAME="subsection5"></a>\r
+<h3>\r
+Mapping for Exceptions</h3>\r
+An IDL exception is translated into a Python class derived from CORBA.UserException.\r
+System exceptions are derived from CORBA.SystemException. Both base classes\r
+are derived from CORBA.Exception. The parameters of the exception are mapped\r
+in the same way as the fields of a struct definition. When raising an exception,\r
+a new instance of the class is created; the constructor expects the exception\r
+parameters. For example, the definition\r
+<div class="fragment">\r
+<pre>module SALOMEDS{\r
+ interface StudyBuilder{\r
+ exception LockProtection {};\r
+ void CommitCommand() raises(LockProtection);\r
+ };\r
+};</pre>\r
+</div>\r
+could be used caught as\r
+<div class="fragment">\r
+<pre>from SALOMEDS import StudyBuilder;\r
+my_StudyBuilder=...\r
+try:\r
+ my_StudyBuilder.CommitCommand();\r
+except StudyBuilder.LockProtection,value:\r
+ print "Error! Study is locked for modifications"</pre>\r
+</div>\r
+\r
+<p><br><b><i><a href="#contents">Back to the contents</a></i></b><b><i><a href="#contents"></a></i></b>\r
+<p><a NAME="subsection6"></a>\r
+<h3>\r
+Mapping for Enumeration Types</h3>\r
+An enumeration is mapped into a number of constant objects in the name\r
+space where the enumeration is defined. An application may only test for\r
+equivalence of two enumeration values, and not assume that they behave\r
+like numbers. For example, the definition\r
+<div class="fragment">\r
+<pre>module VISU {\r
+ interface PrsObject{\r
+ \r
+ enum PrsObjType{ TCURVE, TTABLE, TMESH, TCONTAINER,\r
+ TSCALARMAP, TISOSURFACE, TDEFORMEDSHAPE,\r
+ TCUTPLANES, TVECTORS };\r
+ };\r
+};</pre>\r
+</div>\r
+introduces the objects\r
+<div class="fragment">\r
+<pre>from VISU import PrsObject\r
+VISU.PrsObjType.TCURVE,VISU.PrsObjType.TTABLE,VISU.PrsObjType.TMESH,VISU.PrsObjType.TCONTAINER,\r
+VISU.PrsObjType.TSCALARMAP,VISU.PrsObjType.TISOSURFACE,VISU.PrsObjType.TDEFORMEDSHAPE,VISU.PrsObjType.TCUTPLANES,\r
+VISU.PrsObjType.TVECTORS</pre>\r
+</div>\r
+<b><i><a href="#contents">Back to the contents</a></i></b>\r
+<p><a NAME="subsection7"></a>\r
+<h3>\r
+Mapping for Structured Types</h3>\r
+An IDL struct definition is mapped into a Python class or type. For each\r
+field in the struct, there is a corresponding attribute in the class with\r
+the same name as the field. The constructor of the class expects the field\r
+values, from left to right. For example, the IDL definition\r
+<div class="fragment">\r
+<pre>struct SDate {\r
+ short Second;\r
+ short Minute;\r
+ short Hour;\r
+ short Day;\r
+ short Month;\r
+ short Year;\r
+ };</pre>\r
+</div>\r
+could be used in the Python statements\r
+<div class="fragment">\r
+<pre>Date=SDate(30, 12, 15, 26, 1, 79)\r
+print Date.Second,Date.Minute,Date.Hour,Date.Day,Date.Month,Date.Year</pre>\r
+</div>\r
+\r
+<address>\r
+<b><i><a href="#contents">Back to the contents</a></i></b></address>\r
+\r
+</body>\r
+<!-- Generated by Doxygen 1.2.14 -->\r
+</html>\r
--- /dev/null
+<!doctype html public "-//w3c//dtd html 4.0 transitional//en">\r
+<html>\r
+<head>\r
+ <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">\r
+ <meta name="GENERATOR" content="Mozilla/4.73 [en] (WinNT; I) [Netscape]">\r
+ <title>Main Page</title>\r
+<link href="doxygen.css" rel="stylesheet" type="text/css">\r
+</head>\r
+<body>\r
+ \r
+<center><table WIDTH="96%" >\r
+<tr>\r
+<td><a href="http://www.opencascade.com"><img src="sources/logocorp.gif" BORDER=0 height=46 width=122></a></td>\r
+\r
+\r
+<td>\r
+<div align=right><a href="http://www.opencascade.org/SALOME/"><img src="sources/application.gif" BORDER=0 height=46 width=108></a></div>\r
+</td>\r
+</tr>\r
+</table></center>\r
+\r
+\r
+<h1><a name="page2">General overview</a>\r
+</h1>\r
+<a name="cont"></a><h2>Table of contents </h2>\r
+<b><i>\r
+<ul>\r
+ <li><a href="#1">1. Introduction</a></li>\r
+ <li><a href="#2">2. Basic principles </a></li>\r
+ \r
+ <li><a href="#3">3. Services and features of the SALOME kernel module</a></li>\r
+ <ul>\r
+ <li><a href="#3_1">3.1 Session service</a></li>\r
+ <li><a href="#3_2">3.2 Registry service </a></li>\r
+ <li><a href="#3_3">3.3 Notification service </a></li>\r
+ <li><a href="#3_4">3.4 Module catalog service </a></li>\r
+ <li><a href="#3_5">3.5 Data type catalog </a></li>\r
+ <li><a href="#3_6">3.6 Resource catalog </a></li>\r
+ <li><a href="#3_7">3.7 Engine </a></li>\r
+ <ul>\r
+ <li><a href="#3_7_1">3.7.1 Component class </a></li>\r
+ <li><a href="#3_7_2">3.7.2 Container class </a></li>\r
+ </ul>\r
+ </ul>\r
+</ul>\r
+</i> </b> <br>\r
+<a name="1"></a><h2>1. Introduction</h2>\r
+<p>The kernel corresponds to the minimal set of services required for the use of SALOME components (Supervisor, IAPP). \r
+The kernel is also used by application software components (solver) and their container. \r
+The kernel is associated to a unique user who can launch only one kernel at once. \r
+The kernel is launched and destroyed by voluntary actions of the user. These functions are realized via the\r
+use of scripts.</p>\r
+<p>The list of the kernel services related to communication issues is:</p>\r
+<ul>\r
+ <li>The Naming service</li>\r
+ <li> The Session service </li>\r
+ <li>The Life Cycle service </li>\r
+ <li>The Registry service </li>\r
+ <li>The Notification service </li>\r
+</ul>\r
+<p>This list is enlarged with CORBA independent services :</p>\r
+\r
+<ul>\r
+ <li>The module catalog service </li>\r
+ <li>The Data Type Catalog service </li>\r
+ <li>The resource catalog service </li>\r
+</ul>\r
+<p> SALOME kernel module also encapsulates the Engine\r
+<i><a href="#cont">Back to the contents</a></i>\r
+<a name="2"></a><h2>2. Basic principles </h2>\r
+<p>The SALOME user's desktop is a process on a machine. This process includes:</p>\r
+<ul>\r
+ <li>A graphic interface (based on Qt), </li>\r
+ <li>A text interface (Python interpreter), </li>\r
+ <li>A 3D visualization window shared by components.</li>\r
+</ul>\r
+<p>SALOME Modules decompose into an interface (widgets GUI, text mode TUI, 3D visualization V3D) and\r
+an engine.</p>\r
+<p>The description of a module and its components is obtained by consulting the module catalog.</p>\r
+<p>The interface is dynamically loaded in the process of the SALOME user's desktop. The engine is a CORBA\r
+server launched either on the local machine or on the distant machine.</p>\r
+<p>The engine (CORBA server) is created by a factory (or container). \r
+This factory is also a CORBA server. Several containers can be present on a machine. \r
+Some containers are specialized for types of components requiring a specific management. \r
+For example, a specific container is required for components performing parallel calculations.\r
+The engine includes at least a dynamically linked library in the container process. \r
+This library is the implementation of the CORBA server associated to the engine. \r
+If the engine is built from a pre-existent executable code, the library is simply a wrapper of the encapsulated code. \r
+It launches the code in a separate process. Wherever possible, the code is included into the dynamic library.\r
+<p>The container is one of the kernel services. If one needs to create a container on a distant machine, one creates a process resuming a part of the kernel services. The kernel can create other containers on distant machines via the trader (rsh). All the containers and the kernel share the same CORBA naming service with which they register.</p>\r
+<p>The user reaches the functions of various SALOME'S components, either in graphic interactive mode (GUI) or in command mode ( TUI), via a Python interpreter.</p>\r
+<i><a href="#cont">Back to the contents</a></i>\r
+<a name="3"></a>\r
+<h2>3. Services and features of the SALOME kernel module </h2>\r
+<p>This section gives a brief overview of the services composing the kernel module. \r
+ The <a href="overview_Life_Cycle.html">Life Cycle</a> and <a href="overview_Naming.html">Naming</a> \r
+ services are described in separate chapters of this reference manual.</p>\r
+ \r
+<a name="3_1"></a><h3>3.1 Session service </h3>\r
+<p>SALOME session describes the period starting from the kernel creation and \r
+ ending with its destruction. During this period the user can connect the session \r
+ and disconnect from it without ending this session. One connection log could \r
+ be written. A priori, no information resulting from another (past) session can \r
+ be used by the current session. </p>\r
+ <p>Implementation of this service in SALOME application is provided by the class \r
+<a href="interfaceSALOME_1_1Session.html">Session</a> encapsulated in the package \r
+<a href="namespaceSALOME.html">SALOME</a>.</p> \r
+\r
+<a name="3_2"></a><h3>3.2 Registry service </h3>\r
+<p> The active component registry should contain:</p>\r
+\r
+<ul>\r
+ <li>The list of the active components</li>\r
+ <li>The list of the active containers during a SALOME session.</li>\r
+</ul>\r
+<p>It should allow the state of a session. It also should allow to know if session can be stopped.</p>\r
+<p>The API reference for this service is not included in the current version of the reference manual.</p>\r
+\r
+<a name="3_3"></a><h3>3.3 Notification service </h3>\r
+<p>The notification service is a kernel function which allows exchanging of events between CORBA objects.</p>\r
+<p>In comparison with traditional CORBA event service, SALOME notification service allows to:</p>\r
+<ul>\r
+ <li>Filter the events, </li>\r
+ <li>Structure the events,</li>\r
+ <li>Establish quality policies of services,</li>\r
+ <li>Subscribe to various event channels.</li>\r
+</ul>\r
+<p>The API reference for this service is not included in the current version of the reference \r
+ manual. </p>\r
+ \r
+<a name="3_4"></a><h3>3.4 Module catalog service </h3>\r
+<p>There are two module catalogs in SALOME application:</p>\r
+<ul>\r
+<li>General module catalog : This first catalog is common to all SALOME users once the the platform is installed (for example for a particular company or a service). This catalog will be managed by the integrator or the administrator of the platform,\r
+<li>Personal module catalog : A specific catalog for every user (possibly empty). This catalog should notably allow the developers to test a new component before integrating it into the general catalog.\r
+</ul>\r
+<p>The objective of these two module catalogs is to:</p>\r
+<ul>\r
+<li>List the available modules;\r
+<li>Allow the addition, the modification and the deletion of a module in catalogs;\r
+<li>Look for a module and\or a service fulfilling some given criteria (in catalogs);\r
+</ul>\r
+<p><p>Implementation of this service in SALOME application is provided by two classes \r
+<a href="interfaceSALOME__ModuleCatalog_1_1ModuleCatalog.html">ModuleCatalog</a>and <a href="interfaceSALOME__ModuleCatalog_1_1AComponent.html">AComponent</a> encapsulated in the package \r
+<a href="namespaceSALOME__ModuleCatalog.html">SALOME_ModuleCatalog</a>.</p> \r
+\r
+<a name="3_5"></a><h3>3.5 Data type catalog </h3>\r
+\r
+<p>The data exchanged between components services have definite types. During description of input, output, and \r
+configuration parameters of components in the module catalog, the\r
+definition of the parameters types is taken from data type catalog. During the editing of execution of \r
+graphs, it is necessary to check that the connections output-input parameters are of compatible\r
+types.</p>\r
+<p>The data types correspond to CORBA object classes, including attributes and access methods (defined by their IDL). \r
+These types can be created by specialization of generic data types.</p>\r
+<p>The purpose of the data type catalog is to:</p>\r
+<ul>\r
+<li>List the available data types in the catalog;\r
+<li>Browse the type hierarchy to check the compatibility of types (specialized output toward generic input);\r
+<li>Allow the addition, the modification and the deletion of a data type in the catalog;\r
+</ul>\r
+<p>The API reference for this service is not included in the current version of the reference \r
+ manual. </p>\r
+ <a name="3_6"></a><h3>3.6 Resource catalog</h3> \r
+ \r
+<p>This catalog describes machines, possible types of container on a machine, resources of machines... This catalog is used by the SALOME LifeCycle service.</p>\r
+<p>The API reference for this service is not included in the current version of the reference \r
+ manual. </p>\r
+ \r
+<a name="3_7"></a><h3>3.7 Engine</h3> \r
+<p>The engine represents a shared library which can be dynamically loaded by a container. The container can load this library, \r
+given an interface name and an implementation\r
+name. The container dynamically resolves an extern_C function in the library,\r
+which constructs the CORBA Engine servant object.</p>\r
+<p>The SALOME engine in\r
+ the current version of the application is implemented \r
+ as <b>Engines</b> package of interfaces. It encapsulates two classes: Component, Container.</p> \r
+<p>The API refernce for <b>Engines</b> package can be found <a href="namespaceEngines.html">here</a>. \r
+</p>\r
+<a name="3_7_1"></a><h4>3.7.1 Component class</h4> \r
+<p>This class is used for interaction between the container and the component and between the components inside the container. \r
+</p> \r
+<p>The API reference for this class can be found <a href="interfaceEngines_1_1Component.html">here</a>.</p>\r
+\r
+<a name="3_7_2"></a><h4>3.7.2 Container class</h4> \r
+<p>This class provides a set of methods which are necessary for definition of the process of loading and registration of new components in SALOME application.</p> \r
+<p>The API reference for this class can be found <a href="interfaceEngines_1_1Container.html">here</a>.</p>\r
+\r
+<i><a href="#cont">Back to the contents</a></i> \r
+</body>\r
+</html>\r
--- /dev/null
+<!doctype html public "-//w3c//dtd html 4.0 transitional//en">\r
+<html>\r
+<head>\r
+ <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">\r
+ <meta name="GENERATOR" content="Mozilla/4.73 [en] (WinNT; I) [Netscape]">\r
+ <title>Life Cycle service Description</title>\r
+\r
+<link href="doxygen.css" rel="stylesheet" type="text/css">\r
+\r
+</head>\r
+\r
+<body>\r
+ \r
+<center><table WIDTH="96%" >\r
+<tr>\r
+<td><a href="http://www.opencascade.com"><img src="sources/logocorp.gif" BORDER=0 height=46 width=122></a></td>\r
+\r
+\r
+<td>\r
+<div align=right><a href="http://www.opencascade.org/SALOME/"><img src="sources/application.gif" BORDER=0 height=46 width=108></a></div>\r
+</td>\r
+</tr>\r
+</table></center>\r
+\r
+\r
+<h1><a name="page2">Life Cycle service Description</a> </h1>\r
+<h2>Introduction</h2>\r
+<p> The objective of this document is to give the users of SALOME \r
+ application a brief overview of the Life Cycle service implemented in SALOME. \r
+ A complete version of the LifeCycle service specification edited by the Object Management Group, Inc.(OMG) can be found <a href="http://www.omg.org" target="top">here.</a> <a name="#cont"></a>\r
+ </p>\r
+<a name="cont"></a><h2>Table of contents </h2>\r
+<b><i><ul>\r
+ <li><a href="#1">1. Overview</a></li>\r
+\r
+\r
+ <li><a href="#2">2. SALOME Life Cycle service description</a></li>\r
+</ul>\r
+</i></b><br>\r
+\r
+<a name="1"></a><h2>1. Overview</h2>\r
+ \r
+<p>Life Cycle service defines services and conventions for creating, deleting, copying and moving objects. \r
+Because CORBA-based environments support distributed objects, the Life Cycle service defines conventions that allow clients to perform \r
+life cycle operations on objects in different locations. This overview describes the life cycle problem for distributed object systems. </p>\r
+<br>\r
+ \r
+\r
+<a name="2"></a><h2>2. SALOME Life Cycle service description</h2>\r
+<p>The SALOME Life Cycle service represents a partial implementation of the CORBA LifeCycle service. <p>\r
+<p>From general point of view, the SALOME Life Cycle service allows to <i>find</i> or <i>load</i> with the help of a given container a definte SALOME component with its further\r
+initialization and registration in the Naming service.</p>\r
+<p><b>Container</b> - it's a certain engine realizing the mechanism of loading a SALOME module.</p>\r
+ <p><b>Component</b> - it's a certain abstract shell wrapping SALOME modules, performing all operations concerned with their initialization and registration. </p>\r
+<p>From the point of view of the service user, the Life Cycle provides a set of functions allowing to :</p>\r
+<ul>\r
+<li>Locate a machine (more generally a container) by a logical set of required features (of both container and\r
+ machine);</li>\r
+<li>Load components on the obtained containers;</li>\r
+<li>Create a container;</li>\r
+<li>Obtain the container containing a given component;</li>\r
+<li>Treat the list of the active components;</li>\r
+<li>Treat the list of the available containers.</li>\r
+</ul>\r
+ \r
+\r
+\r
+<p>The SALOME Life Cycle is a CORBA server. This server at its initialization is registered with the naming service.</p>\r
+<p>The Life Cycle service is invoked to find a container and use it to load a\r
+component. It supplies, as parameters, the type of container and the machine features required for loading\r
+a given component.\r
+</p>\r
+<p>The Life Cycle service then returns a CORBA reference of a launched container.</p>\r
+<p>Containers are launched on demand depending on components to be loaded. The Life Cycle service manages loading of containers.</p>\r
+<p>When there is no launched container matching the request the Life Cycle service invokes loading of the correct type of container on a correct machine via a rsh type command.</p>\r
+<p>The Life Cycle service interrogates containers to have information about the dynamic state of the machine (load). It contains (and update) the state of the active containers.</p>\r
+<p>The Life Cycle service can implement a loading strategy for new containers on new machines, depending on the state of the already launched containers.</p>\r
+<p>The Life Cycle service can stop containers at the end of session on\r
+demand.</p>\r
+\r
+<p>In SALOME platform the Life Cycle service is implemented in <b>SALOME_Life CycleCORBA</b> class. The API refernce for the methods of this class\r
+can be found <a href="classSALOME__LifeCycleCORBA.html"> here</a>.</p>\r
+<i><a href="#cont">Back to the contents</a></i>\r
+<br>\r
+\r
+ \r
+<br>\r
+\r
+</body>\r
+</html>\r
--- /dev/null
+<!doctype html public "-//w3c//dtd html 4.0 transitional//en">\r
+<html>\r
+<head>\r
+ <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">\r
+ <meta name="GENERATOR" content="Mozilla/4.73 [en] (WinNT; I) [Netscape]">\r
+ <title>Naming Service Description</title>\r
+<link href="doxygen.css" rel="stylesheet" type="text/css">\r
+</head>\r
+<body>\r
+ \r
+<center><table WIDTH="96%" >\r
+<tr>\r
+<td><a href="http://www.opencascade.com"><img src="sources/logocorp.gif" BORDER=0 height=46 width=122></a></td>\r
+\r
+\r
+<td>\r
+<div align=right><a href="http://www.opencascade.org/SALOME/"><img src="sources/application.gif" BORDER=0 height=46 width=108></a></div>\r
+</td>\r
+</tr>\r
+</table></center>\r
+\r
+\r
+<h1><a name="page2">Naming Service Description </a></h1>\r
+<br>\r
+<h2>Introduction</h2>\r
+<p>This page contains an abridged version of the Naming Service specification \r
+ edited by the Object Management Group, Inc.(OMG). The objective of this document is to give the users of SALOME \r
+ application a brief overview of the Naming Service implemented in SALOME. \r
+ A complete version of this document can be found <a href="http://www.omg.org" target="top">here.</a> <a name="#cont"></a>\r
+ </p>\r
+ <br>\r
+<a name="cont"></a><h2>Table of contents </h2>\r
+<b><i>\r
+<ul>\r
+ <li><a href="#1">1. Overview</a></li>\r
+ <li><a href="#2">2. SALOME Naming Service </a></li>\r
+ <ul>\r
+ <li><a href="#2_1">2.1 Introduction </a></li>\r
+ <li><a href="#2_2">2.2 Definitions </a></li>\r
+ <li><a href="#2_3">2.3 Partition of SALOME name directory hierarchy </a></li>\r
+ <li><a href="#2_4">2.4 SALOME name directory persistence </a></li>\r
+ <li><a href="#2_5">2.5 SALOME naming service features </a></li>\r
+ </ul>\r
+ \r
+</ul>\r
+</i> </b> <br>\r
+\r
+<a name="1"></a><h2>1. Overview</h2>\r
+<p>This chapter presents the OMG Naming Service and explains how the Naming Service can be used to decouple clients and servers by\r
+providing an external reference exchange mechanism. The chapter also covers how to solve the bootstrapping problem for clients and\r
+servers by controlling their configuration. \r
+ </p>\r
+ \r
+<p>In practice, copying stringified references from a server to all its clients is clumsy and does not scale. The Naming Service provides a way\r
+for servers to advertise references under a name, and for clients to retrieve them. The advantages are: \r
+</p>\r
+<ul>\r
+ <li>Clients and servers can use meaningful names instead of having to deal with stringified references. </li>\r
+ <li> By changing a reference in the service without changing its name, you can transparently direct clients to a different object.</li> \r
+ <li> The Naming Service solves the bootstrapping problem because it provides a fixed point for clients and servers to rendezvous. </li>\r
+</ul>\r
+<p>The Naming Service is much like a white pages phone book. Given a name, it \r
+ returns an object reference. </p>\r
+ \r
+<p>The terminology used in description of NamigService is the following: </p>\r
+\r
+<ul>\r
+ <li>A name-to-IOR association is called by a name binding. </li>\r
+ <li>Each binding identifies exactly one object reference, but an object reference \r
+ may be bound more than once (have more than one name). </li>\r
+ <li><a name="graph"></a>A naming context is an object that contains name bindings. \r
+ The names within a context must be unique. Naming contexts can contain bindings \r
+ to other naming contexts, so naming contexts can form graphs. Binding contexts \r
+ in other contexts creates a <i>naming graph</i> \97 a directed graph with nodes \r
+ and labeled edges where the nodes are contexts. A naming graph allows more \r
+ complex names to reference an object. Given a context in a naming graph, a \r
+ sequence of names can reference an object. This sequence of names (called \r
+ a <i>compound name</i>) defines a path in the naming graph to navigate the \r
+ resolution process. Figure 1-1 shows an example of a naming graph. </li>\r
+ <li>Binding a name to a context means to add a name\96IOR pair to a context. </li>\r
+ <li>Resolving a name means to look for a name in a context and to obtain the \r
+ IOR bound under that name.</li>\r
+</ul>\r
+\r
+ \r
+<div align="center"><img src="ns_f3-1.jpg"> </div>\r
+<p align="center"><font size="-1"><i>Figure 1-1</i> A Naming Graph </font></p>\r
+ <i><a href="#cont">Back to the contents</a></i>\r
+ <br>\r
+ <a name="2"></a>\r
+<h2>2. SALOME Naming Service </h2>\r
+<a name="2_1"></a>\r
+<h3>2.1 Introduction</h3\r
+ \r
+>\r
+<p>The SALOME Naming Service is a kernel function which supplies a name directory \r
+ hierarchy for pointing out CORBA objects. This name directory hierarchy allows, \r
+ from symbolic names, to dynamically find the references of distributed SALOME \r
+ objects, without information about their location. SALOME objects which can \r
+ be reached via the naming service are:</p>\r
+ \r
+<ul>\r
+ <li>The kernel services</li>\r
+ <li>Containers\r
+ <li>SALOME components instances\r
+</ul>\r
+<p>The name directory hierarchy in SALOME represents a graph of directories containing \r
+ symbolic associations name-reference on objects. (It has been described in the \r
+ <a href="#graph">previous section</a>)</p>\r
+<a name="2_2"></a>\r
+<h3>2.2 Definitions</h3>\r
+<dl>\r
+<dt><i><b>Directory</b></i></dt> \r
+<dd>Context of names containing symbolic associations name-reference on objects.</dd><br><br>\r
+ <dt><i><b>"/"</b></i></dt>\r
+ <dd>Character used in SALOME to separate two names of a directory</dd><br><br>\r
+ <dt><i><b>Access path</b></i></dt> \r
+ <dd>List of names (separated by "/" character representing the path to be followed \r
+ in the graph to reach an association name-reference (the last name in the sequence).</dd>\r
+</dl> \r
+<blockquote><b>Note:</b>An object can be referenced by several symbolic names \r
+ in one or several directories.</blockquote>\r
+ <a name="2_3"></a>\r
+<h3>2.3 Partition of SALOME name directory hierarchy</h3>\r
+<p>The hierarchical organization of the SALOME name directory is not completely frozen .\r
+Because the framework allows the simultaneous opening of several studies, the following levels are determined:</p>\r
+<pre> \r
+ /Kernel\r
+ /Container/\r
+ /Component \r
+</pre>\r
+<a name="2_4"></a>\r
+<h3>2.4 SALOME name directory persistence</h3>\r
+<p>During a SALOME session, stopping a server in charge of the Naming Service \r
+ doesn't imply the loss of the contents of the SALOME name directory hierarchy. \r
+ A backup file is produced and can be used to restart the Naming Service. So, \r
+ one can recover the state of the SALOME name directory hierarchy at restart \r
+ time. During such breakdown, every call to any function of the Naming Service \r
+ invokes an exception of type <i>Unreachable service</i>.</p>\r
+<a name="2_5"></a>\r
+<h3>2.5 SALOME Naming Service features</h3>\r
+<p>Usage and administration of the name directory hierarchy is realized by means of the following functions:</p> \r
+<ul>\r
+ <li>Recording and recovering of the reference of an object </li>\r
+ <li>Searching for a symbolic name</li>\r
+ <li>Creating of a directory, reading and modifying of the current directory</li>\r
+ <li>Destructing of a symbolic name and a diredtory</li>\r
+</ul>\r
+<p>The access path used in these functions can be defined, either from the root, or from any\r
+directory of SALOME name directory hierarchy.</p> \r
+\r
+<p>In SALOME there is s standard interface of Naming Service, and any user can \r
+ use it for binding and finding objects. How to use it, it's possible to find \r
+ in any CORBA documentation. However in SALOME there is an additional layer which \r
+ hides calls to standard interface. </p>\r
+ <p>The precise API reference for these functions you can find <a href="classSALOME__Naming Service.html">here.</a> </p>\r
+<p>Here is a short list of public methods which are used for working with the SALOME Naming Service:</p>\r
+<dl>\r
+<dt><h4>Register</h4> </dt>\r
+<dd>Method which register object reference in the naming service with given name. It makes assignment between IOR and stringified name.\r
+Then it's possible to get object reference from name using "Resolve" method. </dd>\r
+<br><br>\r
+<dt><h4>Resolve</h4> </dt>\r
+ <dd>Try to obtain object reference from name. It's necessary before publishing \r
+ IOR in the Naming Service by Register method. </dd>\r
+<br><br>\r
+<dt><h4>Find</h4> </dt>\r
+ <dd>The purpose of this method is to research a name from the current directory \r
+ of the naming service. Then if there is occurrence the naming service changes \r
+ directory to go to the directory where last occurrence is found. </dd>\r
+<br><br>\r
+<dt><h4>CreateDirectory</h4> </dt>\r
+<dd>This method allows to create one or several directories in the current directory</dd>\r
+<br><br>\r
+<dt><h4>ChangeDirectory</h4> </dt>\r
+<dd>Moves the current directory. The current directory is moved to the root directory if the input parameter <i>Name</i> is "/".</dd>\r
+<br><br>\r
+<dt><h4>CurrentDirectory</h4> </dt>\r
+<dd>Method allowing to get the current directory.</dd>\r
+<br><br>\r
+<dt><h4>list</h4> </dt>\r
+<dd>Method allowing to list and print the whole context beginning from the current context.</dd> \r
+<br><br>\r
+<dt><h4>list_directory</h4> </dt>\r
+<dd>Method to get all contexts contained in the current directory.</dd> \r
+<br><br>\r
+<dt><h4>DestroyName</h4> </dt>\r
+<dd>Destroys a symbolic name-object reference association.</dd>\r
+<br><br>\r
+<dt><h4>DestroyDirectory</h4> </dt>\r
+<dd>Destroys an empty directory.</dd>\r
+</dl>\r
+\r
+<i><a href="#cont">Back to the contents</a></i>\r
+<br>\r
+</body>\r
+</html>\r
--- /dev/null
+<!doctype html public "-//w3c//dtd html 4.0 transitional//en">\r
+<html>\r
+<head>\r
+ <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">\r
+ <meta name="GENERATOR" content="Mozilla/4.73 [en] (WinNT; I) [Netscape]">\r
+ <title>Main Page</title>\r
+<link href="doxygen.css" rel="stylesheet" type="text/css">\r
+</head>\r
+<body>\r
+ \r
+<center><table WIDTH="96%" >\r
+<tr>\r
+<td><a href="http://www.opencascade.com"><img src="sources/logocorp.gif" BORDER=0 height=46 width=122></a></td>\r
+\r
+\r
+<td>\r
+<div align=right><a href="http://www.opencascade.org/SALOME/"><img src="sources/application.gif" BORDER=0 height=46 width=108></a></div>\r
+</td>\r
+</tr>\r
+</table></center>\r
+\r
+\r
+<h1><a name="page2">General overview</a>\r
+</h1>\r
+<br>\r
+<h2><a name="cont"></a>Table of contents</h2>\r
+<ul>\r
+ <li><i><b><a href="#1">1. Introduction</a></b></i></li>\r
+ <li><i><b><a href="#2">2. Representation of the study</a></b></i></li>\r
+ <ul>\r
+ <li><i><b><a href="#2_1">2.1 Study in transient format</a></b></i></li>\r
+ <li><i><b><a href="#2_2">2.2 Study in persistent format</a></b></i></li>\r
+ <li><i><b><a href="#2_3">2.3 Link between transient and persistent formats</a></b></i></li>\r
+ </ul>\r
+ <li><i><b><a href="#3">3. Services and features of the study</a></b></i></li>\r
+ <ul>\r
+ <li><i><b><a href="#3_1">3.1 Study class </a></b></i></li>\r
+ <li><i><b><a href="#3_2">3.2 StudyBuilder class </a></b></i></li>\r
+ <li><i><b><a href="#3_3">3.3 StudyManager class </a></b></i></li>\r
+ <li><i><b><a href="#3_4">3.4 SObject class </a></b></i></li>\r
+ <li><i><b><a href="#3_5">3.5 SComponent class </a></b></i></li>\r
+ <li><i><b><a href="#3_6">3.6 ChildIterator class </a></b></i></li>\r
+ <li><i><b><a href="#3_7">3.7 SComponentIterator </a></b></i></li>\r
+ <li><i><b><a href="#3_8">3.8 GenericAttribute class </a></b></i></li>\r
+ <li><i><b><a href="#3_9">3.9 UseCaseBuilder class </a></b></i></li>\r
+ <li><i><b><a href="#3_10">3.10 UseCaseIterator </a></b></i></li>\r
+ <li><i><b><a href="#3_12">3.11 Callback class </a></b></i></li>\r
+ <li><i><b><a href="#3_12">3.12 Driver class </a></b></i></li>\r
+ </ul>\r
+</ul> \r
+<h2><a name="1"></a>1. Introduction</h2>\r
+<p>In SALOME application the Study module is used for management (creation, saving \r
+ etc.) of studies. In the framework of the platform, a study represents a working \r
+ document allowing to manage the data produced by various components which are \r
+ integarted into SALOME.<br>\r
+</p>\r
+<h2><a name="2"></a>2. Representation of the study</h2>\r
+<p>The study represents a set of objects that we will call Study Objects or SObjects. \r
+ The study can be represented as a tree, every node of that tree containing a \r
+ SObject. SObjects in the study can be values or references towards data of calculation, \r
+ graphs of calculation, trees of construction of detail(room), results. Every \r
+ SOject of the study is characterised by a unique identifier in the study.</p>\r
+<p>The study allows to describe the following relations:</p>\r
+<ul>\r
+ <li>The link between the transient and persistent values of an SObject.</li>\r
+ <li>The relations between the SObjects produced by different components.</li>\r
+ <li>The relations between the SObjects produced by the same component.</li>\r
+ <li>The link between an object and its user name.</li>\r
+ <li>The access to the definition of the component which produce an object of \r
+ the study.</li>\r
+ <li>The access to instance of the component (if this one exists) which has produced \r
+ this SObject of the study.</li>\r
+</ul>\r
+\r
+<p>Every SObject in the study contains a set of attributes. These attributes represent \r
+ a set of definitions associated to that object, they can contain values or corba \r
+ references towards the data contained in the internal data structure of a component.</p>\r
+<p>As the structure of the study is tree-like it is possible to associate sub-objects \r
+ to objects.</p>\r
+<p>As particular object, the study contains Component Data which are labels associated to the component\r
+which produce data in the study. It is to this object that we can associate attributes containing ID which\r
+we shall allow to identify the type of the component and also its instance. Objects produced by a\r
+component will be sub-objects of the coresponding Data Component.</p>\r
+<p>For example Component Data GEOM will contain the data produced by the component \r
+ Geom.</p>\r
+<table width="100%" border="0">\r
+ <tr>\r
+ <td><img src="Study_Struct.gif"></td>\r
+ <td>GEOM contains the data produced by the component GEOM. The component MESH \r
+ contains a SObject Mesh_1 wich refers to the SObject identified \r
+ by ID4 corresponding to Geometrie_1.</td>\r
+ </tr>\r
+</table>\r
+<p>We distinguish two forms of the study, the study opened in a session SALOME and the study in the\r
+persistent format. These two formats are described in the following sections</p>\r
+<h3><a name="2_1"></a>2.1 Study in transient format</h3>\r
+<p>The representation of the study in memory will be based on the document OCAF (supplied by OCC).\r
+The document OCAF can be seen as a tree, every node of that tree is identified by <i>a tag</i> representing an integer value.</p>\r
+<p>The exploration of the tree from the root to a node supplies a sequence of tags which establishes a\r
+unique identifier <i>ID</i>. ID represents a character string containing the sequence of tags separated by\r
+one ':'.</p> \r
+<p>For example 0:1:12:4 </p>\r
+<p>To every node we can associate a set of attributes.</p>\r
+<p>The attributes which the study can contain can be of the following types:</p>\r
+<ul>\r
+<li>All standard attributes supplied by OCC (package TdataStd) which allow to define (integers,\r
+real, strings, identifiers, references etc.)</li>\r
+<li>Attributes which contain CORBA references.</li>\r
+<li>Attributes which contain the path HDF to reach the persistent datum. (Cf. the following chapter)</li>\r
+</ul>\r
+<p><b>Remark</b>: it is the study which takes care to build the attributes from the values which are passed to it, so\r
+an attribute is always in a study, and it knows the study object to which it is attached.</p>\r
+<p>Example of a Study Object as a set of various attributes.</p>\r
+<img src="SObject.gif"> \r
+<h3><a name="2_2"></a>2.2 Study in persistent format</h3>\r
+<p>To store a study HDF format is used, this tool allows to represent persistent data in the form of a tree.</p>\r
+<p>Under the root of the persistent document, you can find a set of nodes:</p>\r
+<ul>\r
+<li>The first node contains the skeleton of the study. The skeleton consists of the identifiers of the\r
+objects, as well as the references among them.</li>\r
+<li>There is also one node for every component which has produced data during this SALOME session. Under each of these\r
+node there are values of the data produced by this component.</li>\r
+</ul>\r
+<h3><a name="2_3"></a>2.3 Link between transient and persistent formats</h3>\r
+<p>It will be possible to complete the definition of one object in the study by associating to it an attribute\r
+<i>HDFPath</i> which will contain the path to the persistent data.</p>\r
+<img src="Link.gif"> \r
+<p><a href="#cont"><b><i>Back to the contents</i></b></a></p>\r
+<h2><a name="3"></a>3. Services and features of the study</h2>\r
+<p>The Study in SALOME application possess a wide functionality. This functionality is provided by a set of classes which are described\r
+below.\r
+<h3><a name="3_1"></a>3.1 Study class</h3>\r
+<p>The purpose of the Study class is to manage the data produced by various components \r
+ of SALOME platform. Most of the Study operations are handled by the <a href="#3_3">StudyManager</a> \r
+ and the <a href="#3_2">StudyBuilder</a>. What \r
+ is left in the Study class are elementary inquiries. A Study is explored by \r
+ a set of tools, mainly iterators , which are described further.</p> \r
+ <p>Nevertheless, the Study class contains a set of methods providing: </p>\r
+ \r
+<ul>\r
+ <li>management of study properties \r
+ <li> search for SObjects. \r
+ <li>search for SComponents\r
+ <li>creation of a new StudyBuilder, ComponentIterator, ChildIterator etc.\r
+</ul>\r
+<p>The API reference for this class can be found <a href="interfaceSALOMEDS_1_1Study.html">here</a>.</p>\r
+<h3><a name="3_2"></a>3.2 StudyBuilder class</h3>\r
+<p>StudyBuilder supplies basic services to edit the study. The edition of the study is made by the\r
+component. Every component will use the basic services of the StudyBuilder allowing to write and publish objects.</p>\r
+<p>StudyBulder provides the following functionality:</p>\r
+<ul>\r
+ <li>creation, modification or deletetion of SObjects in the study</li>\r
+ <li>creation or removal of SComponents </li>\r
+ <li>undo/redo functionality. For that purpose it supplies the methods NewCommand, \r
+ CommitCommand, AbortCommand. </li>\r
+</ul>\r
+<p>The API reference for this class can be found <a href="interfaceSALOMEDS_1_1StudyBuilder.html">here</a>.</p>\r
+<h3><a name="3_3"></a>3.3 StudyManager class</h3>\r
+<p>The purpose of the Manager is to manipulate Studies. Since SALOME is a multi-document \r
+ application during a working session you can operate as many stadies as you \r
+ wishes to create. </p>\r
+<p>For that purpose StudyManager provides the following functionality:</p>\r
+<ul>\r
+ <li>creation, opening, closing and saving studies</li>\r
+ <li>navigation through a set of studies present in the current working session</li>\r
+ <li> copy/paste of the objects in the study functionality.</li>\r
+</ul>\r
+<p>The API reference for this class can be found <a href="interfaceSALOMEDS_1_1StudyManager.html">here</a>.</p>\r
+<h3><a name="3_4"></a>3.4 SObject class</h3>\r
+<p>The objects in the study are built by the StudyBuilder. \r
+The SObject class provides methods for elementary inquiries, like getting an object ID or its attribuites. </p>\r
+<p>The API reference for this class can be found <a href="interfaceSALOMEDS_1_1SObject.html">here</a>.</p>\r
+<h3><a name="3_5"></a>3.5 SComponent class</h3>\r
+<p>The SComponent class establishes in the study a permanent assocition to the components \r
+integrated into SALOME platform. The SComponent interface is a specialization of the SObject\r
+ class. It inherits the most of its methods from the SObject class which are used for management of the SComponents.</p>\r
+<p>The API reference for this class can be found <a href="interfaceSALOMEDS_1_1SComponent.html">here</a>.</p>\r
+<h3><a name="3_6"></a>3.6 ChildIterator class</h3>\r
+<p>It is one of the tools destined for exploration of the study. This class contains a set of methods allowing to get \r
+the access to all identified objects which are sons of another identifiedobject.</p>\r
+<p>The API reference for this class can be found <a href="interfaceSALOMEDS_1_1ChildIterator.html">here</a>.</p>\r
+<h3><a name="3_7"></a>3.7 SComponentIterator</h3>\r
+<p>This is the second tool destined for exploration of the study. This interface contains the methods allowing to iterate over all SComponents in the list.\r
+ The search is started from the first SComponent in the list. </p>\r
+<p>The API reference for this class can be found <a href="interfaceSALOMEDS_1_1SComponentIterator.html">here</a>.</p> \r
+ \r
+<h3><a name="3_8"></a>3.8 GenericAttribute class </h3>\r
+ <p>GenericAttribute represents a base class for all attributes which can be assigned to the SObjects created in the study. All attribute classes \r
+ derive from this classe and inherit its methods. </p>\r
+ <p>The API reference for this class can be found <a href="interfaceSALOMEDS_1_1GenericAttribute.html">here</a>.</p> \r
+ \r
+<p>In SALOME application a SObject can possess the following attributes:</p>\r
+<table width="48%" border="0">\r
+ <tr>\r
+ <td width="44%" height="241"> \r
+ <ul>\r
+ <li><a href="interfaceSALOMEDS_1_1AttributeName.html">AttributeName</a></li>\r
+ <li><a href="interfaceSALOMEDS_1_1AttributeComment.html">AttributeComment</a></li>\r
+ <li><a href="interfaceSALOMEDS_1_1AttributeIOR.html">AttributeIOR</a></li>\r
+ <li><a href="interfaceSALOMEDS_1_1AttributeReal.html">AttributeReal</a></li>\r
+ <li><a href="interfaceSALOMEDS_1_1AttributeInteger.html">AttributeInteger</a></li>\r
+ <li><a href="interfaceSALOMEDS_1_1AttributeSequenceOfReal.html">AttributeSequenceOfReal</a></li>\r
+ <li><a href="interfaceSALOMEDS_1_1AttributeSequenceOfInteger.html">AttributeSequenceOfInteger</a></li>\r
+ <li><a href="interfaceSALOMEDS_1_1AttributePersistentRef.html">AttributePersistentRef</a></li>\r
+ <li><a href="interfaceSALOMEDS_1_1AttributeDrawable.html">AttributeDrawable</a></li>\r
+ <li><a href="interfaceSALOMEDS_1_1AttributeSelectable.html">AttributeSelectable</a></li>\r
+ <li><a href="interfaceSALOMEDS_1_1AttributeExpandable.html">AttributeExpandable</a></li>\r
+ <li><a href="interfaceSALOMEDS_1_1AttributeOpened.html">AttributeOpened</a></li>\r
+ </ul></td>\r
+ <td width="56%" height="241"> \r
+ <ul>\r
+ <li><a href="interfaceSALOMEDS_1_1AttributeTextColor.html">AttributeTextColor </a></li>\r
+ <li><a href="interfaceSALOMEDS_1_1AttributeTextHighlightColor.html">AttributeTextHighlightColor</a></li>\r
+ <li><a href="interfaceSALOMEDS_1_1AttributePixMap.html">AttributePixMap</a></li>\r
+ <li><a href="interfaceSALOMEDS_1_1AttributeTreeNode.html">AttributeTreeNode</a></li>\r
+ <li><a href="interfaceSALOMEDS_1_1AttributeLocalID.html">AttributeLocalID</a></li>\r
+ <li><a href="interfaceSALOMEDS_1_1AttributeUserID.html">AttributeUserID</a></li>\r
+ <li><a href="interfaceSALOMEDS_1_1AttributeTarget.html">AttributeTarget</a></li>\r
+ <li><a href="interfaceSALOMEDS_1_1AttributeTableOfInteger.html">AttributeTableOfInteger</a></li>\r
+ <li><a href="interfaceSALOMEDS_1_1AttributeTableOfReal.html">AttributeTableOfReal</a></li>\r
+ <li><a href="interfaceSALOMEDS_1_1AttributeTableOfString.html">AttributeTableOfString</a></li>\r
+ <li><a href="interfaceSALOMEDS_1_1AttributeStudyProperties.html">AttributeStudyProperties</a></li>\r
+ <li><a href="interfaceSALOMEDS_1_1AttributePythonObject.html">AttributePythonObject</a></li> \r
+ </ul></td>\r
+ </tr>\r
+</table>\r
+<h3><a name="3_9"></a>3.9 UseCaseBuilder class</h3>\r
+<p>UseCase in the study represents a user-defined subtree, containing all or some of the objects which currently exist \r
+in the study. The UseCaseBuilder class contains a set of methods used for management (creation, deletion etc) of this sub-tree in the study. </p>\r
+<p>The API reference for this class can be found <a href="interfaceSALOMEDS_1_1UseCaseBuilder.html">here</a>.</p>\r
+ \r
+<h3><a name="3_10"></a>3.10 UseCaseIterator</h3>\r
+ <p>This class represents an exploration tool for the UseCase. It contains a set of methods used for iteration over the objects in the UseCase.</p> \r
+ <p>The API reference for this class can be found <a href="interfaceSALOMEDS_1_1UseCaseIterator.html">here</a>.</p>\r
+ \r
+<h3><a name="3_11"></a>3.11 Callback class</h3>\r
+ <p>The StudyBuilder can be created with the method NewBuilder. While invocation of this method a new object of the class \r
+ Callback is created and this object is assigned to the newly created Builder as callback which should be called \r
+ when <i>adding</i> and <i>removing</i> the objects. </p>\r
+ <p>The API reference for this class can be found <a href="interfaceSALOMEDS_1_1Callback.html">here</a>.</p>\r
+ \r
+<h3><a name="3_12"></a>3.12 Driver class</h3>\r
+ \r
+<p>This class represents a common tool for all components integrated into SALOME \r
+ application, that allows them to communicate with the study. It contains a set \r
+ of methods which can be called by any component and which provide the following \r
+ functionality:\r
+<ul>\r
+ <li>publishing in the study of the objects created by a definite component </li>\r
+ <li>saving/loading of the data created by a definite component. These methods \r
+ are called by the StudyManager when loading/saving a study containing the \r
+ data created by a definite component.</li>\r
+ <li>transforming of the transient references into persistant references (or \r
+ vice versa) of the SObjects when saving (or loading) a study</li>\r
+ <li>copy/paste common functionality. These methods can be called by any component \r
+ in order to copy/paste its object created in the study</li>\r
+</ul>\r
+<p>The API reference for this class can be found <a href="interfaceSALOMEDS_1_1Driver.html">here</a>.</p>\r
+<p><a href="#cont"><b><i>Back to the contents</i></b></a></p>\r
+</body>\r
+</html>\r
--- /dev/null
+<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
+ <meta name="GENERATOR" content="Mozilla/4.73 [en] (WinNT; I) [Netscape]">
+ <title>Main Page</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+</head>
+<body>
+
+<center><table WIDTH="96%" >
+<tr>
+<td><a href="http://www.opencascade.com"><img src="sources/logocorp.gif" BORDER=0 height=46 width=122></a></td>
+
+
+<td>
+<div align=right><a href="http://www.opencascade.org/SALOME/"><img src="sources/application.gif" BORDER=0 height=46 width=108></a></div>
+</td>
+</tr>
+</table></center>
+
+
+</body>
+</html>
+<!-- Generated by Doxygen 1.3-rc2 -->
+<h1><a name="page2">Mapping of SALOME IDL definitions to Python language.</a>
+</h1><ul>
+<li><b>SALOME STUDY module</b><ul>
+<li><a href="HTML/SALOMEDS.html">Mapping of SALOMEDS functions</a></li><li><a href="HTML/SALOMEDS_Attributes.html">Mapping of SALOMEDS_Attributes functions</a></li></ul>
+</li><li><b>SAlOME KERNEL module</b><ul>
+<li><a href="HTML/SALOME_Session.html">Mapping of SALOME_Session functions</a></li><li><a href="HTML/SALOME_ModuleCatalog.html">Mapping of SALOME_ModuleCatalog functions</a></li><li><a href="HTML/SALOME_Exception.html">Mapping of SALOME_Exception functions</a></li><li><a href="HTML/SALOME_Component.html">Mapping of SALOME_Component functions</a></li></ul>
+</li></ul>
+</body>
+</html>
--- /dev/null
+foldersTree = gFld("<b>SALOME v.1.4.1 </b>", "", "")
+ insDoc(foldersTree, gLnk("Main Page", "", "main.html"))
+
+aux1 = insFld(foldersTree, gFld("TUI Reference Guide", ""))
+ aux2 = insFld(aux1, gFld("Modules", ""))
+ aux3 = insFld(aux2, gFld("SALOME STUDY module", ""))
+ insDoc(aux3, gLnk("Overview", "", "overview_Study.html"))
+ aux4 = insFld(aux3, gFld("Packages", ""))
+ insDoc(aux4, gLnk("SALOMEDS", "", "namespaceSALOMEDS.html"))
+ insDoc(aux3, gLnk("Examples", "", "examples_Study.html"))
+ aux3 = insFld(aux2, gFld("SALOME KERNEL module", ""))
+ insDoc(aux3, gLnk("Overview", "", "overview_Kernel.html"))
+ aux4 = insFld(aux3, gFld("Packages", ""))
+ insDoc(aux4, gLnk("SALOME_ModuleCatalog", "", "namespaceSALOME__ModuleCatalog.html"))
+ insDoc(aux4, gLnk("SALOME", "", "namespaceSALOME.html"))
+ insDoc(aux4, gLnk("Engines", "", "namespaceEngines.html"))
+ insDoc(aux3, gLnk("Examples", "", "examples_Kernel.html"))
+
+
+/*! Data structures
+*/
+ insDoc(aux1, gLnk("Data Structures", "", "annotated.html"))
+
+/*! insDoc(aux1, gLnk("SALOME_ModuleCatalog::Acomponent", "", "interfaceSALOME__ModuleCatalog_1_1Acomponent.html"))
+ insDoc(aux1, gLnk("SALOMEDS::AttributeComment", "", "interfaceSALOMEDS_1_1AttributeComment.html"))
+ insDoc(aux1, gLnk("SALOMEDS::AttributeDrawable", "", "interfaceSALOMEDS_1_1AttributeDrawable.html"))
+ insDoc(aux1, gLnk("SALOMEDS::AttributeExpandable", "", "interfaceSALOMEDS_1_1AttributeExpandable.html"))
+ insDoc(aux1, gLnk("SALOMEDS::AttributeInteger", "", "interfaceSALOMEDS_1_1AttributeInteger.html"))
+ insDoc(aux1, gLnk("SALOMEDS::AttributeIOR", "", "interfaceSALOMEDS_1_1AttributeIOR.html"))
+ insDoc(aux1, gLnk("SALOMEDS::AttributeLocalID", "", "interfaceSALOMEDS_1_1AttributeLocalID.html"))
+ insDoc(aux1, gLnk("SALOMEDS::AttributeName", "", "interfaceSALOMEDS_1_1AttributeName.html"))
+ insDoc(aux1, gLnk("SALOMEDS::AttributeOpened", "", "interfaceSALOMEDS_1_1AttributeOpened.html"))
+ insDoc(aux1, gLnk("SALOMEDS::AttributePersistentRef", "", "interfaceSALOMEDS_1_1AttributePersistentRef.html"))
+ insDoc(aux1, gLnk("SALOMEDS::AttributePixMap", "", "interfaceSALOMEDS_1_1AttributePixMap.html"))
+ insDoc(aux1, gLnk("SALOMEDS::AttributePythonObject", "", "interfaceSALOMEDS_1_1AttributePythonObject.html"))
+ insDoc(aux1, gLnk("SALOMEDS::AttributeReal", "", "interfaceSALOMEDS_1_1AttributeReal.html"))
+ insDoc(aux1, gLnk("SALOMEDS::AttributeSelectable", "", "interfaceSALOMEDS_1_1AttributeSelectable.html"))
+ insDoc(aux1, gLnk("SALOMEDS::AttributeSequenceOfInteger", "", "interfaceSALOMEDS_1_1AttributeSequenceOfInteger.html"))
+ insDoc(aux1, gLnk("SALOMEDS::AttributeSequenceOfReal", "", "interfaceSALOMEDS_1_1AttributeSequenceOfReal.html"))
+ insDoc(aux1, gLnk("SALOMEDS::AttributeStudyProperties", "", "interfaceSALOMEDS_1_1AttributeStudyProperties.html"))
+ insDoc(aux1, gLnk("SALOMEDS::AttributeTableOfInteger", "", "interfaceSALOMEDS_1_1AttributeTableOfInteger.html"))
+ insDoc(aux1, gLnk("SALOMEDS::AttributeTableOfInteger::IncorrectArgumentLength", "", "exceptionSALOMEDS_1_1AttributeTableOfInteger_1_1IncorrectArgumentLength.html"))
+ insDoc(aux1, gLnk("SALOMEDS::AttributeTableOfInteger::IncorrectIndex", "", "exceptionSALOMEDS_1_1AttributeTableOfInteger_1_1IncorrectIndex.html"))
+ insDoc(aux1, gLnk("SALOMEDS::AttributeTableOfReal", "", "interfaceSALOMEDS_1_1AttributeTableOfReal.html"))
+ insDoc(aux1, gLnk("SALOMEDS::AttributeTableOfReal::IncorrectArgumentLength", "", "exceptionSALOMEDS_1_1AttributeTableOfReal_1_1IncorrectArgumentLength.html"))
+ insDoc(aux1, gLnk("SALOMEDS::AttributeTableOfReal::IncorrectIndex", "", "exceptionSALOMEDS_1_1AttributeTableOfReal_1_1IncorrectIndex.html"))
+ insDoc(aux1, gLnk("SALOMEDS::AttributeTableOfString", "", "interfaceSALOMEDS_1_1AttributeTableOfString.html"))
+ insDoc(aux1, gLnk("SALOMEDS::AttributeTableOfString::IncorrectArgumentLength", "", "exceptionSALOMEDS_1_1AttributeTableOfString_1_1IncorrectArgumentLength.html"))
+ insDoc(aux1, gLnk("SALOMEDS::AttributeTableOfString::IncorrectIndex", "", "exceptionSALOMEDS_1_1AttributeTableOfString_1_1IncorrectIndex.html"))
+ insDoc(aux1, gLnk("SALOMEDS::AttributeTarget", "", "interfaceSALOMEDS_1_1AttributeTarget.html"))
+ insDoc(aux1, gLnk("SALOMEDS::AttributeTextColor", "", "interfaceSALOMEDS_1_1AttributeTextColor.html"))
+ insDoc(aux1, gLnk("SALOMEDS::AttributeTextHighlightColor", "", "interfaceSALOMEDS_1_1AttributeTextHighlightColor.html"))
+ insDoc(aux1, gLnk("SALOMEDS::AttributeTreeNode", "", "interfaceSALOMEDS_1_1AttributeTreeNode.html"))
+ insDoc(aux1, gLnk("SALOMEDS::AttributeUserID", "", "interfaceSALOMEDS_1_1AttributeUserID.html"))
+ insDoc(aux1, gLnk("SALOMEDS::Callback", "", "interfaceSALOMEDS_1_1Callback.html"))
+ insDoc(aux1, gLnk("SALOMEDS::ChildIterator", "", "interfaceSALOMEDS_1_1ChildIterator.html"))
+ insDoc(aux1, gLnk("SALOMEDS::Color", "", "structSALOMEDS_1_1Color.html"))
+ insDoc(aux1, gLnk("Engines::Component", "", "interfaceEngines_1_1Component.html"))
+ insDoc(aux1, gLnk("Engines::Container", "", "interfaceEngines_1_1Container.html"))
+ insDoc(aux1, gLnk("SALOME_ModuleCatalog::DefinitionInterface", "", "structSALOME__ModuleCatalog_1_1DefinitionInterface.html"))
+ insDoc(aux1, gLnk("SALOMEDS::Driver", "", "interfaceSALOMEDS_1_1Driver.html"))
+ insDoc(aux1, gLnk("SALOME::ExceptionStruct", "", "structSALOME_1_1ExceptionStruct.html"))
+ insDoc(aux1, gLnk("SALOMEDS::GenericAttribute", "", "interfaceSALOMEDS_1_1GenericAttribute.html"))
+ insDoc(aux1, gLnk("SALOMEDS::GenericAttribute::LockProtection", "", "exceptionSALOMEDS_1_1GenericAttribute_1_1LockProtection.html"))
+ insDoc(aux1, gLnk("SALOME_ModuleCatalog::IAPP_Affich", "", "structSALOME__ModuleCatalog_1_1IAPP__Affich.html"))
+ insDoc(aux1, gLnk("SALOME_ModuleCatalog::ModuleCatalog", "", "interfaceSALOME__ModuleCatalog_1_1ModuleCatalog.html"))
+ insDoc(aux1, gLnk("SALOME_ModuleCatalog::NotFound", "", "exceptionSALOME__ModuleCatalog_1_1NotFound.html"))
+ insDoc(aux1, gLnk("SALOMEDS::NotImplemented", "", "exceptionSALOMEDS_1_1NotImplemented.html"))
+ insDoc(aux1, gLnk("SALOME::SALOME_Exception", "", "exceptionSALOME_1_1SALOME__Exception.html"))
+ insDoc(aux1, gLnk("SALOMEDS::SComponent", "", "interfaceSALOMEDS_1_1SComponent.html"))
+ insDoc(aux1, gLnk("SALOMEDS::SComponentIterator", "", "interfaceSALOMEDS_1_1SComponentIterator.html"))
+ insDoc(aux1, gLnk("SALOME_ModuleCatalog::Service", "", "structSALOME__ModuleCatalog_1_1Service.html"))
+ insDoc(aux1, gLnk("SALOME_ModuleCatalog::ServicesParameter", "", "structSALOME__ModuleCatalog_1_1ServicesParameter.html"))
+ insDoc(aux1, gLnk("SALOME::Session", "", "interfaceSALOME_1_1Session.html"))
+ insDoc(aux1, gLnk("SALOME::Session::GUIActive", "", "exceptionSALOME_1_1Session_1_1GUIActive.html"))
+ insDoc(aux1, gLnk("SALOME::Session::RunningStudies", "", "exceptionSALOME_1_1Session_1_1RunningStudies.html"))
+ insDoc(aux1, gLnk("SALOMEDS::SObject", "", "interfaceSALOMEDS_1_1SObject.html"))
+ insDoc(aux1, gLnk("SALOME::StatSession", "", "structSALOME_1_1StatSession.html"))
+ insDoc(aux1, gLnk("SALOMEDS::Study", "", "interfaceSALOMEDS_1_1Study.html"))
+ insDoc(aux1, gLnk("SALOMEDS::Study::StudyCommentError", "", "exceptionSALOMEDS_1_1Study_1_1StudyCommentError.html"))
+ insDoc(aux1, gLnk("SALOMEDS::Study::StudyInvalidComponent", "", "exceptionSALOMEDS_1_1Study_1_1StudyInvalidComponent.html"))
+ insDoc(aux1, gLnk("SALOMEDS::Study::StudyInvalidContext", "", "exceptionSALOMEDS_1_1Study_1_1StudyInvalidContext.html"))
+ insDoc(aux1, gLnk("SALOMEDS::Study::StudyInvalidDirectory", "", "exceptionSALOMEDS_1_1Study_1_1StudyInvalidDirectory.html"))
+ insDoc(aux1, gLnk("SALOMEDS::Study::StudyNameAlreadyUsed", "", "exceptionSALOMEDS_1_1Study_1_1StudyNameAlreadyUsed.html"))
+ insDoc(aux1, gLnk("SALOMEDS::Study::StudyNameError", "", "exceptionSALOMEDS_1_1Study_1_1StudyNameError.html"))
+ insDoc(aux1, gLnk("SALOMEDS::Study::StudyObjectAlreadyExists", "", "exceptionSALOMEDS_1_1Study_1_1StudyObjectAlreadyExists.html"))
+ insDoc(aux1, gLnk("SALOMEDS::StudyBuilder", "", "interfaceSALOMEDS_1_1StudyBuilder.html"))
+ insDoc(aux1, gLnk("SALOMEDS::StudyBuilder::LockProtection", "", "exceptionSALOMEDS_1_1StudyBuilder_1_1LockProtection.html"))
+ insDoc(aux1, gLnk("SALOMEDS::StudyManager", "", "interfaceSALOMEDS_1_1StudyManager.html"))
+ insDoc(aux1, gLnk("SALOMEDS::UseCaseBuilder", "", "interfaceSALOMEDS_1_1UseCaseBuilder.html"))
+ insDoc(aux1, gLnk("SALOMEDS::UseCaseIterator", "", "interfaceSALOMEDS_1_1UseCaseIterator.html"))
+*/
+ insDoc(aux1, gLnk("Class Hierarchy", "", "hierarchy.html"))
+
+/*! insDoc(aux1, gLnk("SALOME_ModuleCatalog::Acomponent", "", "interfaceSALOME__ModuleCatalog_1_1Acomponent.html"))
+ insDoc(aux1, gLnk("SALOMEDS::AttributeTableOfInteger::IncorrectArgumentLength", "", "exceptionSALOMEDS_1_1AttributeTableOfInteger_1_1IncorrectArgumentLength.html"))
+ insDoc(aux1, gLnk("SALOMEDS::AttributeTableOfInteger::IncorrectIndex", "", "exceptionSALOMEDS_1_1AttributeTableOfInteger_1_1IncorrectIndex.html"))
+ insDoc(aux1, gLnk("SALOMEDS::AttributeTableOfReal::IncorrectArgumentLength", "", "exceptionSALOMEDS_1_1AttributeTableOfReal_1_1IncorrectArgumentLength.html"))
+ insDoc(aux1, gLnk("SALOMEDS::AttributeTableOfReal::IncorrectIndex", "", "exceptionSALOMEDS_1_1AttributeTableOfReal_1_1IncorrectIndex.html"))
+ insDoc(aux1, gLnk("SALOMEDS::AttributeTableOfString::IncorrectArgumentLength", "", "exceptionSALOMEDS_1_1AttributeTableOfString_1_1IncorrectArgumentLength.html"))
+ insDoc(aux1, gLnk("SALOMEDS::AttributeTableOfString::IncorrectIndex", "", "exceptionSALOMEDS_1_1AttributeTableOfString_1_1IncorrectIndex.html"))
+ insDoc(aux1, gLnk("SALOMEDS::Callback", "", "interfaceSALOMEDS_1_1Callback.html"))
+ insDoc(aux1, gLnk("SALOMEDS::ChildIterator", "", "interfaceSALOMEDS_1_1ChildIterator.html"))
+ insDoc(aux1, gLnk("SALOMEDS::Color", "", "structSALOMEDS_1_1Color.html"))
+ aux2 = insFld(aux1, gFld("Engines::Component", "", "interfaceEngines_1_1Component.html"))
+ insDoc(aux1, gLnk("Engines::Container", "", "interfaceEngines_1_1Container.html"))
+ insDoc(aux1, gLnk("SALOME_ModuleCatalog::DefinitionInterface", "", "structSALOME__ModuleCatalog_1_1DefinitionInterface.html"))
+ aux2 = insFld(aux1, gFld("SALOMEDS::Driver", "", "interfaceSALOMEDS_1_1Driver.html"))
+ insDoc(aux1, gLnk("SALOME::ExceptionStruct", "", "structSALOME_1_1ExceptionStruct.html"))
+ aux2 = insFld(aux1, gFld("SALOMEDS::GenericAttribute", "", "interfaceSALOMEDS_1_1GenericAttribute.html"))
+ insDoc(aux2, gLnk("SALOMEDS::AttributeComment", "", "interfaceSALOMEDS_1_1AttributeComment.html"))
+ insDoc(aux2, gLnk("SALOMEDS::AttributeDrawable", "", "interfaceSALOMEDS_1_1AttributeDrawable.html"))
+ insDoc(aux2, gLnk("SALOMEDS::AttributeExpandable", "", "interfaceSALOMEDS_1_1AttributeExpandable.html"))
+ insDoc(aux2, gLnk("SALOMEDS::AttributeInteger", "", "interfaceSALOMEDS_1_1AttributeInteger.html"))
+ insDoc(aux2, gLnk("SALOMEDS::AttributeIOR", "", "interfaceSALOMEDS_1_1AttributeIOR.html"))
+ insDoc(aux2, gLnk("SALOMEDS::AttributeLocalID", "", "interfaceSALOMEDS_1_1AttributeLocalID.html"))
+ insDoc(aux2, gLnk("SALOMEDS::AttributeName", "", "interfaceSALOMEDS_1_1AttributeName.html"))
+ insDoc(aux2, gLnk("SALOMEDS::AttributeOpened", "", "interfaceSALOMEDS_1_1AttributeOpened.html"))
+ insDoc(aux2, gLnk("SALOMEDS::AttributePersistentRef", "", "interfaceSALOMEDS_1_1AttributePersistentRef.html"))
+ insDoc(aux2, gLnk("SALOMEDS::AttributePixMap", "", "interfaceSALOMEDS_1_1AttributePixMap.html"))
+ insDoc(aux2, gLnk("SALOMEDS::AttributePythonObject", "", "interfaceSALOMEDS_1_1AttributePythonObject.html"))
+ insDoc(aux2, gLnk("SALOMEDS::AttributeReal", "", "interfaceSALOMEDS_1_1AttributeReal.html"))
+ insDoc(aux2, gLnk("SALOMEDS::AttributeSelectable", "", "interfaceSALOMEDS_1_1AttributeSelectable.html"))
+ insDoc(aux2, gLnk("SALOMEDS::AttributeSequenceOfInteger", "", "interfaceSALOMEDS_1_1AttributeSequenceOfInteger.html"))
+ insDoc(aux2, gLnk("SALOMEDS::AttributeSequenceOfReal", "", "interfaceSALOMEDS_1_1AttributeSequenceOfReal.html"))
+ insDoc(aux2, gLnk("SALOMEDS::AttributeStudyProperties", "", "interfaceSALOMEDS_1_1AttributeStudyProperties.html"))
+ insDoc(aux2, gLnk("SALOMEDS::AttributeTableOfInteger", "", "interfaceSALOMEDS_1_1AttributeTableOfInteger.html"))
+ insDoc(aux2, gLnk("SALOMEDS::AttributeTableOfReal", "", "interfaceSALOMEDS_1_1AttributeTableOfReal.html"))
+ insDoc(aux2, gLnk("SALOMEDS::AttributeTableOfString", "", "interfaceSALOMEDS_1_1AttributeTableOfString.html"))
+ insDoc(aux2, gLnk("SALOMEDS::AttributeTarget", "", "interfaceSALOMEDS_1_1AttributeTarget.html"))
+ insDoc(aux2, gLnk("SALOMEDS::AttributeTextColor", "", "interfaceSALOMEDS_1_1AttributeTextColor.html"))
+ insDoc(aux2, gLnk("SALOMEDS::AttributeTextHighlightColor", "", "interfaceSALOMEDS_1_1AttributeTextHighlightColor.html"))
+ insDoc(aux2, gLnk("SALOMEDS::AttributeTreeNode", "", "interfaceSALOMEDS_1_1AttributeTreeNode.html"))
+ insDoc(aux2, gLnk("SALOMEDS::AttributeUserID", "", "interfaceSALOMEDS_1_1AttributeUserID.html"))
+ insDoc(aux1, gLnk("SALOMEDS::GenericAttribute::LockProtection", "", "exceptionSALOMEDS_1_1GenericAttribute_1_1LockProtection.html"))
+ insDoc(aux1, gLnk("SALOME_ModuleCatalog::IAPP_Affich", "", "structSALOME__ModuleCatalog_1_1IAPP__Affich.html"))
+ insDoc(aux1, gLnk("SALOME_ModuleCatalog::ModuleCatalog", "", "interfaceSALOME__ModuleCatalog_1_1ModuleCatalog.html"))
+ insDoc(aux1, gLnk("SALOME_ModuleCatalog::NotFound", "", "exceptionSALOME__ModuleCatalog_1_1NotFound.html"))
+ insDoc(aux1, gLnk("SALOMEDS::NotImplemented", "", "exceptionSALOMEDS_1_1NotImplemented.html"))
+ insDoc(aux1, gLnk("SALOME::SALOME_Exception", "", "exceptionSALOME_1_1SALOME__Exception.html"))
+ insDoc(aux1, gLnk("SALOMEDS::SComponentIterator", "", "interfaceSALOMEDS_1_1SComponentIterator.html"))
+ insDoc(aux1, gLnk("SALOME_ModuleCatalog::Service", "", "structSALOME__ModuleCatalog_1_1Service.html"))
+ insDoc(aux1, gLnk("SALOME_ModuleCatalog::ServicesParameter", "", "structSALOME__ModuleCatalog_1_1ServicesParameter.html"))
+ insDoc(aux1, gLnk("SALOME::Session", "", "interfaceSALOME_1_1Session.html"))
+ insDoc(aux1, gLnk("SALOME::Session::GUIActive", "", "exceptionSALOME_1_1Session_1_1GUIActive.html"))
+ insDoc(aux1, gLnk("SALOME::Session::RunningStudies", "", "exceptionSALOME_1_1Session_1_1RunningStudies.html"))
+ aux2 = insFld(aux1, gFld("SALOMEDS::SObject", "", "interfaceSALOMEDS_1_1SObject.html"))
+ insDoc(aux2, gLnk("SALOMEDS::SComponent", "", "interfaceSALOMEDS_1_1SComponent.html"))
+ insDoc(aux1, gLnk("SALOME::StatSession", "", "structSALOME_1_1StatSession.html"))
+ insDoc(aux1, gLnk("SALOMEDS::Study", "", "interfaceSALOMEDS_1_1Study.html"))
+ insDoc(aux1, gLnk("SALOMEDS::Study::StudyCommentError", "", "exceptionSALOMEDS_1_1Study_1_1StudyCommentError.html"))
+ insDoc(aux1, gLnk("SALOMEDS::Study::StudyInvalidComponent", "", "exceptionSALOMEDS_1_1Study_1_1StudyInvalidComponent.html"))
+ insDoc(aux1, gLnk("SALOMEDS::Study::StudyInvalidContext", "", "exceptionSALOMEDS_1_1Study_1_1StudyInvalidContext.html"))
+ insDoc(aux1, gLnk("SALOMEDS::Study::StudyInvalidDirectory", "", "exceptionSALOMEDS_1_1Study_1_1StudyInvalidDirectory.html"))
+ insDoc(aux1, gLnk("SALOMEDS::Study::StudyNameAlreadyUsed", "", "exceptionSALOMEDS_1_1Study_1_1StudyNameAlreadyUsed.html"))
+ insDoc(aux1, gLnk("SALOMEDS::Study::StudyNameError", "", "exceptionSALOMEDS_1_1Study_1_1StudyNameError.html"))
+ insDoc(aux1, gLnk("SALOMEDS::Study::StudyObjectAlreadyExists", "", "exceptionSALOMEDS_1_1Study_1_1StudyObjectAlreadyExists.html"))
+ insDoc(aux1, gLnk("SALOMEDS::StudyBuilder", "", "interfaceSALOMEDS_1_1StudyBuilder.html"))
+ insDoc(aux1, gLnk("SALOMEDS::StudyBuilder::LockProtection", "", "exceptionSALOMEDS_1_1StudyBuilder_1_1LockProtection.html"))
+ insDoc(aux1, gLnk("SALOMEDS::StudyManager", "", "interfaceSALOMEDS_1_1StudyManager.html"))
+ insDoc(aux1, gLnk("SALOMEDS::UseCaseBuilder", "", "interfaceSALOMEDS_1_1UseCaseBuilder.html"))
+ insDoc(aux1, gLnk("SALOMEDS::UseCaseIterator", "", "interfaceSALOMEDS_1_1UseCaseIterator.html"))
+*/
+ insDoc(aux1, gLnk("Class methods list", "", "functions.html"))
+/*!
+aux1 = insFld(foldersTree, gFld("Namespace List", "", "namespaces.html"))
+ insDoc(aux1, gLnk("Engines", "", "namespaceEngines.html"))
+ insDoc(aux1, gLnk("SALOME", "", "namespaceSALOME.html"))
+ insDoc(aux1, gLnk("SALOME_ModuleCatalog", "", "namespaceSALOME__ModuleCatalog.html"))
+ insDoc(aux1, gLnk("SALOMEDS", "", "namespaceSALOMEDS.html"))
+*/
+ insDoc(aux1, gLnk("Namespace Members", "", "namespacemembers.html"))
+
+ insDoc(aux1, gLnk("File List", "", "files.html"))
+
+/*!
+ insDoc(aux1, gLnk("SALOME_Component.idl", "", "SALOME__Component_8idl.html"))
+ insDoc(aux1, gLnk("SALOME_Exception.idl", "", "SALOME__Exception_8idl.html"))
+ insDoc(aux1, gLnk("SALOME_ModuleCatalog.idl", "", "SALOME__ModuleCatalog_8idl.html"))
+ insDoc(aux1, gLnk("SALOME_Session.idl", "", "SALOME__Session_8idl.html"))
+ insDoc(aux1, gLnk("SALOMEDS.idl", "", "SALOMEDS_8idl.html"))
+ insDoc(aux1, gLnk("SALOMEDS_Attributes.idl", "", "SALOMEDS__Attributes_8idl.html"))
+*/
+
+aux1 = insFld(foldersTree, gFld("IDL/Python mapping", ""))
+ insDoc(aux1, gLnk("Mapping of IDL definitions to Python language", "", "mapping.html"))
+ insDoc(aux1, gLnk("Mapping of SALOME IDL definitions to Python language", "", "page2.html"))
+
+/*! insDoc(foldersTree, gLnk("Graphical Class Hierarchy", "", "inherits.html"))
+*/
+aux1 = insFld(foldersTree, gFld("Naming service", ""))
+ insDoc(aux1, gLnk("Naming Service Description ", "", "overview_Naming.html"))
+ insDoc(aux1, gLnk("Salome_NamingService Class Reference", "", "classSALOME__NamingService.html"))
+ insDoc(aux1, gLnk("Examples", "", "examples_Naming.html"))
+aux1 = insFld(foldersTree, gFld("Life Cycle", ""))
+ insDoc(aux1, gLnk("Life Cycle Service Description ", "", "overview_Life_Cycle.html"))
+ insDoc(aux1, gLnk("Salome_LifeCycleCorba Class Reference", "", "classSALOME__LifeCycleCORBA.html"))
+ insDoc(aux1, gLnk("Examples", "", "examples_Life_cycle.html"))
+
+
--- /dev/null
+//****************************************************************
+// You are free to copy the "Folder-Tree" script as long as you
+// keep this copyright notice:
+// Script found in: http://www.geocities.com/Paris/LeftBank/2178/
+// Author: Marcelino Alves Martins (martins@hks.com) December '97.
+//****************************************************************
+
+//Log of changes:
+// 17 Feb 98 - Fix initialization flashing problem with Netscape
+//
+// 27 Jan 98 - Root folder starts open; support for USETEXTLINKS;
+// make the ftien4 a js file
+//
+// DvH: Dec 2000 - Made some minor changes to support external
+// references
+
+// Definition of class Folder
+// *****************************************************************
+
+function Folder(folderDescription, tagName, hreference) //constructor
+{
+ //constant data
+ this.desc = folderDescription
+ this.tagName = tagName
+ this.hreference = hreference
+ this.id = -1
+ this.navObj = 0
+ this.iconImg = 0
+ this.nodeImg = 0
+ this.isLastNode = 0
+
+ //dynamic data
+ this.isOpen = true
+ this.iconSrc = "ftv2folderopen.png"
+ this.children = new Array
+ this.nChildren = 0
+
+ //methods
+ this.initialize = initializeFolder
+ this.setState = setStateFolder
+ this.addChild = addChild
+ this.createIndex = createEntryIndex
+ this.hide = hideFolder
+ this.display = display
+ this.renderOb = drawFolder
+ this.totalHeight = totalHeight
+ this.subEntries = folderSubEntries
+ this.outputLink = outputFolderLink
+}
+
+function setStateFolder(isOpen)
+{
+ var subEntries
+ var totalHeight
+ var fIt = 0
+ var i=0
+
+ if (isOpen == this.isOpen)
+ return
+
+ if (browserVersion == 2)
+ {
+ totalHeight = 0
+ for (i=0; i < this.nChildren; i++)
+ totalHeight = totalHeight + this.children[i].navObj.clip.height
+ subEntries = this.subEntries()
+ if (this.isOpen)
+ totalHeight = 0 - totalHeight
+ for (fIt = this.id + subEntries + 1; fIt < nEntries; fIt++)
+ indexOfEntries[fIt].navObj.moveBy(0, totalHeight)
+ }
+ this.isOpen = isOpen
+ propagateChangesInState(this)
+}
+
+function propagateChangesInState(folder)
+{
+ var i=0
+
+ if (folder.isOpen)
+ {
+ if (folder.nodeImg)
+ if (folder.isLastNode)
+ folder.nodeImg.src = "ftv2mlastnode.png"
+ else
+ folder.nodeImg.src = "ftv2mnode.png"
+ folder.iconImg.src = "ftv2folderopen.png"
+ for (i=0; i<folder.nChildren; i++)
+ folder.children[i].display()
+ }
+ else
+ {
+ if (folder.nodeImg)
+ if (folder.isLastNode)
+ folder.nodeImg.src = "ftv2plastnode.png"
+ else
+ folder.nodeImg.src = "ftv2pnode.png"
+ folder.iconImg.src = "ftv2folderclosed.png"
+ for (i=0; i<folder.nChildren; i++)
+ folder.children[i].hide()
+ }
+}
+
+function hideFolder()
+{
+ if (browserVersion == 1 || browserVersion == 3) {
+ if (this.navObj.style.display == "none")
+ return
+ this.navObj.style.display = "none"
+ } else {
+ if (this.navObj.visibility == "hidden")
+ return
+ this.navObj.visibility = "hidden"
+ }
+
+ this.setState(0)
+}
+
+function initializeFolder(level, lastNode, leftSide)
+{
+var j=0
+var i=0
+var numberOfFolders
+var numberOfDocs
+var nc
+
+ nc = this.nChildren
+
+ this.createIndex()
+
+ var auxEv = ""
+
+ if (browserVersion > 0)
+ auxEv = "<a href='javascript:clickOnNode("+this.id+")'>"
+ else
+ auxEv = "<a>"
+
+ if (level>0)
+ if (lastNode) //the last 'brother' in the children array
+ {
+ this.renderOb(leftSide + auxEv + "<img name='nodeIcon" + this.id + "' src='ftv2mlastnode.png' width=16 height=22 border=0></a>")
+// leftSide = leftSide + "<img src='ftv2blank.png' width=16 height=22>"
+ this.isLastNode = 1
+ }
+ else
+ {
+ this.renderOb(leftSide + auxEv + "<img name='nodeIcon" + this.id + "' src='ftv2mnode.png' width=16 height=22 border=0></a>")
+ leftSide = leftSide + "<img src='ftv2vertline.png' width=16 height=22>"
+ this.isLastNode = 0
+ }
+ else
+ this.renderOb("")
+
+ if (nc > 0)
+ {
+ level = level + 1
+ for (i=0 ; i < this.nChildren; i++)
+ {
+ if (i == this.nChildren-1)
+ this.children[i].initialize(level, 1, leftSide)
+ else
+ this.children[i].initialize(level, 0, leftSide)
+ }
+ }
+}
+
+function drawFolder(leftSide)
+{
+ if (browserVersion == 2) {
+ if (!doc.yPos)
+ doc.yPos=8
+ doc.write("<layer id='folder" + this.id + "' top=" + doc.yPos + " visibility=hidden>")
+ }
+ if (browserVersion == 3)
+ {
+ doc.write("<div id='folder" + this.id + "' style='visibility:hide;'>")
+ }
+
+ doc.write("\n<table ")
+ if (browserVersion == 1)
+ doc.write(" id='folder" + this.id + "' style='position:block;' ")
+ doc.write(" border=0 cellspacing=0 cellpadding=0>")
+ doc.write("\n<tr><td>")
+ doc.write(leftSide)
+ this.outputLink()
+ doc.write("<img name='folderIcon" + this.id + "' ")
+ doc.write("src='" + this.iconSrc+"' border=0></a>")
+ doc.write("</td>\n<td valign=middle nowrap>")
+ if (USETEXTLINKS)
+ {
+ this.outputLink()
+ doc.write(this.desc + "</a>")
+ }
+ else
+ doc.write(this.desc)
+
+/*!
+ if (this.tagName!="")
+ {
+ doc.write(" [external]")
+ }
+*/
+ doc.write("</td>")
+ doc.write("\n</table>\n")
+
+ if (browserVersion == 2) {
+ doc.write("</layer>")
+ }
+ if (browserVersion == 3) {
+ doc.write("</div>")
+ }
+
+ if (browserVersion == 1) {
+ this.navObj = doc.all["folder"+this.id]
+ this.iconImg = doc.all["folderIcon"+this.id]
+ this.nodeImg = doc.all["nodeIcon"+this.id]
+ } else if (browserVersion == 2) {
+ this.navObj = doc.layers["folder"+this.id]
+ this.iconImg = this.navObj.document.images["folderIcon"+this.id]
+ this.nodeImg = this.navObj.document.images["nodeIcon"+this.id]
+ doc.yPos=doc.yPos+this.navObj.clip.height
+ } else if (browserVersion == 3) {
+ this.navObj = doc.getElementById("folder"+this.id)
+ this.iconImg = doc.images.namedItem("folderIcon"+this.id)
+ this.nodeImg = doc.images.namedItem("nodeIcon"+this.id)
+ }
+}
+
+function outputFolderLink()
+{
+ if (this.hreference)
+ {
+ doc.write("<a ")
+ if (this.tagName)
+ {
+ doc.write("doxygen='" + this.tagName + "' ");
+ }
+ doc.write("href='" + this.hreference + "' TARGET=\"basefrm\" ")
+ if (browserVersion > 0)
+ doc.write("onClick='javascript:clickOnFolder("+this.id+")'")
+ doc.write(">")
+ }
+ else
+ doc.write("<a>")
+}
+
+function addChild(childNode)
+{
+ this.children[this.nChildren] = childNode
+ this.nChildren++
+ return childNode
+}
+
+function folderSubEntries()
+{
+ var i = 0
+ var se = this.nChildren
+
+ for (i=0; i < this.nChildren; i++){
+ if (this.children[i].children) //is a folder
+ se = se + this.children[i].subEntries()
+ }
+
+ return se
+}
+
+
+// Definition of class Item (a document or link inside a Folder)
+// *************************************************************
+
+function Item(itemDescription, tagName, itemLink) // Constructor
+{
+ // constant data
+ this.desc = itemDescription
+ this.tagName = tagName
+ this.link = itemLink
+ this.id = -1 //initialized in initalize()
+ this.navObj = 0 //initialized in render()
+ this.iconImg = 0 //initialized in render()
+ this.iconSrc = "ftv2doc.png"
+
+ // methods
+ this.initialize = initializeItem
+ this.createIndex = createEntryIndex
+ this.hide = hideItem
+ this.display = display
+ this.renderOb = drawItem
+ this.totalHeight = totalHeight
+}
+
+function hideItem()
+{
+ if (browserVersion == 1 || browserVersion == 3) {
+ if (this.navObj.style.display == "none")
+ return
+ this.navObj.style.display = "none"
+ } else {
+ if (this.navObj.visibility == "hidden")
+ return
+ this.navObj.visibility = "hidden"
+ }
+}
+
+function initializeItem(level, lastNode, leftSide)
+{
+ this.createIndex()
+
+ if (level>0)
+ if (lastNode) //the last 'brother' in the children array
+ {
+ this.renderOb(leftSide + "<img src='ftv2lastnode.png' width=16 height=22>")
+ leftSide = leftSide + "<img src='ftv2blank.png' width=16 height=22>"
+ }
+ else
+ {
+ this.renderOb(leftSide + "<img src='ftv2node.png' width=16 height=22>")
+ leftSide = leftSide + "<img src='ftv2vertline.png' width=16 height=22>"
+ }
+ else
+ this.renderOb("")
+}
+
+function drawItem(leftSide)
+{
+ if (browserVersion == 2)
+ doc.write("<layer id='item" + this.id + "' top=" + doc.yPos + " visibility=hidden>")
+ if (browserVersion == 3)
+ doc.write("<div id='item" + this.id + "' style='display:block;'>")
+
+ doc.write("\n<table ")
+ if (browserVersion == 1)
+ doc.write(" id='item" + this.id + "' style='position:block;' ")
+ doc.write(" border=0 cellspacing=0 cellpadding=0>\n")
+ doc.write("<tr><td>")
+ doc.write(leftSide)
+ if (this.link!="")
+ {
+ doc.write("<a href=" + this.link + ">")
+ }
+ doc.write("<img id='itemIcon"+this.id+"' ")
+ doc.write("src='"+this.iconSrc+"' border=0>")
+ if (this.link!="")
+ {
+ doc.write("</a>")
+ }
+ doc.write("</td>\n<td valign=middle nowrap>")
+ if (USETEXTLINKS && this.link!="")
+ doc.write("<a href=" + this.link + ">" + this.desc + "</a>")
+ else
+ doc.write(this.desc)
+/*!
+ if (this.tagName!="")
+ {
+ doc.write(" [external]");
+ }
+*/
+ doc.write("\n</table>\n")
+
+ if (browserVersion == 2)
+ doc.write("</layer>")
+ if (browserVersion == 3)
+ doc.write("</div>")
+
+ if (browserVersion == 1) {
+ this.navObj = doc.all["item"+this.id]
+ this.iconImg = doc.all["itemIcon"+this.id]
+ } else if (browserVersion == 2) {
+ this.navObj = doc.layers["item"+this.id]
+ this.iconImg = this.navObj.document.images["itemIcon"+this.id]
+ doc.yPos=doc.yPos+this.navObj.clip.height
+ } else if (browserVersion == 3) {
+ this.navObj = doc.getElementById("item"+this.id)
+ this.iconImg = doc.images.namedItem("itemIcon"+this.id)
+ }
+}
+
+
+// Methods common to both objects (pseudo-inheritance)
+// ********************************************************
+
+function display()
+{
+ if (browserVersion == 1 || browserVersion == 3)
+ this.navObj.style.display = "block"
+ else
+ this.navObj.visibility = "show"
+}
+
+function createEntryIndex()
+{
+ this.id = nEntries
+ indexOfEntries[nEntries] = this
+ nEntries++
+}
+
+// total height of subEntries open
+function totalHeight() //used with browserVersion == 2
+{
+ var h = this.navObj.clip.height
+ var i = 0
+
+ if (this.isOpen) //is a folder and _is_ open
+ for (i=0 ; i < this.nChildren; i++)
+ h = h + this.children[i].totalHeight()
+
+ return h
+}
+
+
+// Events
+// *********************************************************
+
+function clickOnFolder(folderId)
+{
+ var clicked = indexOfEntries[folderId]
+
+ if (!clicked.isOpen)
+ clickOnNode(folderId)
+
+ return
+
+ if (clicked.isSelected)
+ return
+}
+
+function clickOnNode(folderId)
+{
+ var clickedFolder = 0
+ var state = 0
+
+ clickedFolder = indexOfEntries[folderId]
+ state = clickedFolder.isOpen
+
+ clickedFolder.setState(!state) //open<->close
+}
+
+function initializeDocument()
+{
+ doc = document;
+ if (doc.all)
+ browserVersion = 1 //IE4
+ else
+ if (doc.layers)
+ browserVersion = 2 //NS4
+ else if(navigator.userAgent.toLowerCase().indexOf('gecko') != -1)
+ browserVersion = 3 //mozilla
+ else
+ browserVersion = 0 //other
+
+ foldersTree.initialize(0, 1, "")
+ foldersTree.display()
+
+ if (browserVersion > 0)
+ {
+ if(browserVersion != 3)
+ doc.write("<layer top="+indexOfEntries[nEntries-1].navObj.top+"> </layer>")
+
+ // close the whole tree
+ clickOnNode(0)
+ // open the root folder
+ clickOnNode(0)
+ }
+}
+
+// Auxiliary Functions for Folder-Treee backward compatibility
+// *********************************************************
+
+function gFld(description, tagName, hreference)
+{
+ folder = new Folder(description, tagName, hreference)
+ return folder
+}
+
+function gLnk(description, tagName, linkData)
+{
+ fullLink = ""
+
+ if (linkData!="")
+ {
+ fullLink = "'"+linkData+"' target=\"basefrm\""
+ }
+
+ linkItem = new Item(description, tagName, fullLink)
+ return linkItem
+}
+
+function insFld(parentFolder, childFolder)
+{
+ return parentFolder.addChild(childFolder)
+}
+
+function insDoc(parentFolder, document)
+{
+ parentFolder.addChild(document)
+}
+
+// Global variables
+// ****************
+
+USETEXTLINKS = 1
+indexOfEntries = new Array
+nEntries = 0
+doc = document
+browserVersion = 0
+selectedFolder=0
--- /dev/null
+# Copyright (C) 2003 CEA/DEN, EDF R&D
+#
+#
+#
+# File : Makefile.in
+# Author : Vasily Rusyaev (Open Cascade NN)
+# Module : doc
+# $Header:
+
+top_srcdir=@top_srcdir@
+top_builddir=../../..
+root_srcdir=@ROOT_SRCDIR@
+srcdir=@srcdir@
+VPATH=.:@srcdir@
+doxygen=@DOXYGEN@
+
+@COMMENCE@
+
+docs:
+ cp -fr $(srcdir)/KERNEL ./INPUT; \
+ cd INPUT; \
+ sed 's|../../../share/salome|$(root_srcdir)|' ./doxyfile > ./doxyfile1; \
+ mv -f doxyfile1 doxyfile; \
+ $(doxygen) ./doxyfile; \
+ cd ..; \
+ cp -fr $(srcdir)/KERNEL/sources/static/*.* ./KERNEL/
+ cp -fr $(srcdir)/KERNEL/sources/ KERNEL/
+ cp -fr $(srcdir)/KERNEL/HTML/ KERNEL/
+ rm -fr INPUT
+
+clean:
+ rm -fr KERNEL
+
+distclean: clean
+ rm -fr INPUT
+
+install:
+ $(INSTALL) -d $(docdir); \
+ mkdir -p $(docdir)/tui
+ cp -fr KERNEL $(docdir)/tui
+
+uninstall:
+ rm -fr $(docdir)/tui/KERNEL
--- /dev/null
+DBRep_DrawableShape
+
+CASCADE Topology V1, (c) Matra-Datavision
+Locations 0
+Curve2ds 27
+1 0 0 1 0
+1 0 10 1 0
+1 30 0 0 -1
+1 10 0 0 1
+1 0 30 1 0
+1 0 -20 1 0
+1 0 10 1 0
+1 0 0 0 -1
+1 10 0 0 1
+1 0 0 0 1
+1 0 0 1 0
+1 30 0 0 1
+1 0 0 1 0
+1 0 0 1 0
+1 0 0 1 0
+1 0 0 0 1
+1 0 20 1 0
+1 30 0 0 1
+1 0 20 1 0
+1 0 -20 1 0
+1 0 0 1 0
+1 0 0 -1 0
+1 0 0 -0.4472135954999579 -0.8944271909999159
+1 30 0 0 -1
+1 0 0 0 1
+1 0 0 0 -1
+1 0 0 0 1
+Curves 14
+1 10 0 0 0 0 1
+1 10 0 30 0 1 0
+1 0 0 30 0.4472135954999579 0.8944271909999159 0
+1 10 20 0 0 0 1
+1 10 0 0 -0 1 0
+1 0 0 0 1 0 -0
+1 0 0 30 1 0 -0
+1 0 0 0 0 0 1
+1 0 20 0 1 0 -0
+1 0 20 30 1 0 -0
+1 0 20 0 0 0 1
+1 0 0 0 -0.4472135954999579 -0.8944271909999159 0
+1 0 0 30 -0 1 0
+1 0 0 0 -0 1 0
+Polygon3D 0
+PolygonOnTriangulations 0
+Surfaces 7
+1 10 0 0 1 0 -0 0 0 1 0 -1 0
+1 0 0 0 -0 1 0 0 0 1 1 0 -0
+1 0 0 30 0 0 1 1 0 -0 -0 1 0
+1 0 0 0 0.8944271909999159 -0.4472135954999579 0 0.4472135954999579 0.8944271909999159 0 -0 0 1
+1 0 20 0 -0 1 0 0 0 1 1 0 -0
+1 0 0 0 0 0 1 1 0 -0 -0 1 0
+1 0 0 0 1 0 -0 0 0 1 0 -1 0
+Triangulations 0
+
+TShapes 38
+Ve
+1e-07
+10 0 30
+0 0
+
+0101101
+*
+Ve
+1e-07
+10 0 0
+0 0
+
+0101101
+*
+Ed
+ 1e-07 1 1 0
+1 1 0 0 30
+2 1 1 0 0 30
+2 2 2 0 0 30
+0
+
+0101000
+-38 0 +37 0 *
+Ve
+1e-07
+10 20 30
+22.3606797749979 1 3 0
+22.3606797749979 2 5 4 0
+0 0
+
+0101101
+*
+Ed
+ 1e-07 1 1 0
+1 2 0 0 20
+2 3 1 0 0 20
+2 4 3 0 0 20
+0
+
+0101000
+-35 0 +38 0 *
+Ve
+1e-07
+10 20 0
+0 0
+
+0101101
+*
+Ed
+ 1e-07 1 1 0
+1 4 0 0 30
+2 6 1 0 0 30
+2 7 5 0 0 30
+0
+
+0101000
+-35 0 +33 0 *
+Ed
+ 1e-07 1 1 0
+1 5 0 0 20
+2 8 1 0 0 20
+2 9 6 0 0 20
+0
+
+0101000
+-33 0 +37 0 *
+Wi
+
+0101000
+-36 0 -34 0 +32 0 +31 0 *
+Fa
+0 1e-07 1 0
+
+0111000
++30 0 *
+Ve
+1e-07
+0 0 0
+0 0
+
+0101101
+*
+Ed
+ 1e-07 1 1 0
+1 6 0 0 10
+2 10 2 0 0 10
+2 11 6 0 0 10
+0
+
+0101000
+-37 0 +28 0 *
+Ve
+1e-07
+0 0 30
+0 1 3 0
+0 2 5 4 0
+0 0
+
+0101101
+*
+Ed
+ 1e-07 1 1 0
+1 7 0 0 10
+2 12 2 0 0 10
+2 13 3 0 0 10
+0
+
+0101000
+-38 0 +26 0 *
+Ed
+ 1e-07 1 1 0
+1 8 0 0 30
+2 14 7 0 0 30
+2 15 2 0 0 30
+0
+
+0101000
+-26 0 +28 0 *
+Wi
+
+0101000
+-27 0 -36 0 +25 0 +24 0 *
+Fa
+0 1e-07 2 0
+
+0111000
++23 0 *
+Ve
+1e-07
+0 20 0
+0 0
+
+0101101
+*
+Ed
+ 1e-07 1 1 0
+1 9 0 0 10
+2 16 5 0 0 10
+2 17 6 0 0 10
+0
+
+0101000
+-33 0 +21 0 *
+Ve
+1e-07
+0 20 30
+0 0
+
+0101101
+*
+Ed
+ 1e-07 1 1 0
+1 10 0 0 10
+2 18 5 0 0 10
+2 19 3 0 0 10
+0
+
+0101000
+-35 0 +19 0 *
+Ed
+ 1e-07 1 1 0
+1 11 0 0 30
+2 20 7 0 0 30
+2 21 5 0 0 30
+0
+
+0101000
+-19 0 +21 0 *
+Wi
+
+0101000
+-20 0 -32 0 +18 0 +17 0 *
+Fa
+0 1e-07 5 0
+
+0111000
++16 0 *
+Ed
+ 1e-07 1 1 0
+1 12 0 -22.3606797749979 0
+2 22 4 0 -22.3606797749979 0
+2 23 6 0 -22.3606797749979 0
+0
+
+0101000
++33 0 -28 0 *
+Wi
+
+0101000
++14 0 +27 0 +31 0 *
+Fa
+0 1e-07 6 0
+
+0111000
++13 0 *
+Ed
+ 1e-07 1 1 0
+1 13 0 0 20
+2 24 7 0 0 20
+2 25 3 0 0 20
+0
+
+0101000
+-19 0 +26 0 *
+Ed
+ 1e-07 1 1 0
+1 14 0 0 20
+2 26 7 0 0 20
+2 27 6 0 0 20
+0
+
+0101000
+-21 0 +28 0 *
+Wi
+
+0101000
+-24 0 -11 0 +17 0 +10 0 *
+Fa
+0 1e-07 7 0
+
+0111000
++9 0 *
+Wi
+
+0101000
+-14 0 -20 0 -10 0 *
+Fa
+0 1e-07 6 0
+
+0111000
++7 0 *
+Sh
+
+0101000
++29 0 -22 0 +15 0 -12 0 -8 0 -6 0 *
+Ed
+ 1e-07 1 1 0
+1 3 0 0 22.3606797749979
+2 5 4 0 0 22.3606797749979
+0
+
+0101000
++26 0 -35 0 *
+Wi
+
+0101000
++32 0 -4 0 -24 0 -14 0 *
+Fa
+0 1e-07 4 0
+
+0111000
++3 0 *
+Co
+
+1100000
++5 0 +2 0 *
+
++1 0
\ No newline at end of file
--- /dev/null
+dnl Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+dnl CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+dnl
+dnl This library is free software; you can redistribute it and/or
+dnl modify it under the terms of the GNU Lesser General Public
+dnl License as published by the Free Software Foundation; either
+dnl version 2.1 of the License.
+dnl
+dnl This library is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+dnl Lesser General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU Lesser General Public
+dnl License along with this library; if not, write to the Free Software
+dnl Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+dnl
+dnl See http://www.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org
+dnl
+dnl
+dnl
+AC_DEFUN([CHECK_BOOST],[
+
+AC_CHECKING(for BOOST Library)
+
+AC_LANG_SAVE
+AC_LANG_CPLUSPLUS
+
+AC_SUBST(BOOST_CPPFLAGS)
+BOOST_CPPFLAGS=""
+boost_ok=no
+
+if test -z ${BOOSTDIR}; then
+ AC_MSG_WARN(You must provide BOOSTDIR variable)
+else
+ AC_MSG_RESULT(\$BOOSTDIR = ${BOOSTDIR})
+ AC_CHECKING(for boost/shared_ptr.hpp header file)
+ dnl BOOST headers
+ CPPFLAGS_old="${CPPFLAGS}"
+ BOOST_CPPFLAGS="-ftemplate-depth-32 -I${BOOSTDIR}"
+ CPPFLAGS="${CPPFLAGS} ${BOOST_CPPFLAGS}"
+
+ AC_CHECK_HEADER(boost/shared_ptr.hpp,boost_ok=yes,boost_ok=no)
+
+ CPPFLAGS="${CPPFLAGS_old}"
+ boost_ok=yes
+fi
+
+AC_LANG_RESTORE
+
+])dnl
+
+