home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
ftp.tcs3.com
/
ftp.tcs3.com.tar
/
ftp.tcs3.com
/
DRIVERS
/
Audio
/
Office2010
/
ProPlus.WW
/
ProPsWW.cab
/
OART.DLL
/
3000
/
3615
< prev
next >
Wrap
Extensible Markup Language
|
2010-03-13
|
47KB
|
1,200 lines
<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (c) Microsoft Corporation. All rights reserved. -->
<layoutDef xmlns="http://schemas.openxmlformats.org/drawingml/2006/diagram" uniqueId="urn:microsoft.com/office/officeart/2009/3/layout/HorizontalOrganizationChart">
<title val="Horizontal Organization Chart" />
<desc val="" />
<catLst>
<cat type="hierarchy" pri="4300" />
</catLst>
<sampData>
<dataModel>
<ptLst>
<pt modelId="0" type="doc" />
<pt modelId="1" type="node">
<prSet phldr="1" />
</pt>
<pt modelId="2" type="asst">
<prSet phldr="1" />
</pt>
<pt modelId="3" type="node">
<prSet phldr="1" />
</pt>
<pt modelId="4" type="node">
<prSet phldr="1" />
</pt>
<pt modelId="5" type="node">
<prSet phldr="1" />
</pt>
</ptLst>
<cxnLst>
<cxn modelId="5" type="parOf" srcId="0" destId="1" srcOrd="0" destOrd="0" presId="" />
<cxn modelId="6" type="parOf" srcId="1" destId="2" srcOrd="0" destOrd="0" presId="" />
<cxn modelId="7" type="parOf" srcId="1" destId="3" srcOrd="1" destOrd="0" presId="" />
<cxn modelId="8" type="parOf" srcId="1" destId="4" srcOrd="2" destOrd="0" presId="" />
<cxn modelId="9" type="parOf" srcId="1" destId="5" srcOrd="3" destOrd="0" presId="" />
</cxnLst>
</dataModel>
</sampData>
<styleData>
<dataModel>
<ptLst>
<pt modelId="0" type="doc" />
<pt modelId="1" type="node" />
<pt modelId="12" type="node" />
<pt modelId="13" type="node" />
</ptLst>
<cxnLst>
<cxn modelId="2" type="parOf" srcId="0" destId="1" srcOrd="0" destOrd="0" presId="" />
<cxn modelId="16" type="parOf" srcId="1" destId="12" srcOrd="1" destOrd="0" presId="" />
<cxn modelId="17" type="parOf" srcId="1" destId="13" srcOrd="2" destOrd="0" presId="" />
</cxnLst>
</dataModel>
</styleData>
<clrData>
<dataModel>
<ptLst>
<pt modelId="0" type="doc" />
<pt modelId="1" type="node" />
<pt modelId="11" type="asst" />
<pt modelId="12" type="node" />
<pt modelId="13" type="node" />
<pt modelId="14" type="node" />
</ptLst>
<cxnLst>
<cxn modelId="2" type="parOf" srcId="0" destId="1" srcOrd="0" destOrd="0" presId="" />
<cxn modelId="15" type="parOf" srcId="1" destId="11" srcOrd="0" destOrd="0" presId="" />
<cxn modelId="16" type="parOf" srcId="1" destId="12" srcOrd="1" destOrd="0" presId="" />
<cxn modelId="17" type="parOf" srcId="1" destId="13" srcOrd="2" destOrd="0" presId="" />
<cxn modelId="18" type="parOf" srcId="1" destId="14" srcOrd="2" destOrd="0" presId="" />
</cxnLst>
</dataModel>
</clrData>
<!-- The first level layout tree for this org chart is as follows:
hierChild
|
hierRoot
/ | \
text nonAsst asst
The first layout node for hierRoot is the text representing the hierRoot.
The nonAsst and asst nodes are hierChild that control layout of subsequent children.
The order that the nodes are specified in below hierRoot need to be maintained. -->
<layoutNode name="hierChild1">
<!-- Tag this as an org chart so the appropriate UI is enabled -->
<varLst>
<orgChart val="true" />
<chPref val="1" />
<dir val="norm" />
<animOne val="branch" />
<animLvl val="lvl" />
<resizeHandles val="rel" />
</varLst>
<choose>
<if func="var" arg="dir" op="equ" val="norm">
<alg type="hierChild">
<param type="linDir" val="fromT" />
<param type="chAlign" val="l" />
</alg>
</if>
<else>
<alg type="hierChild">
<param type="linDir" val="fromT" />
<param type="chAlign" val="r" />
</alg>
</else>
</choose>
<shape />
<presOf />
<constrLst>
<!-- Text Nodes -->
<constr type="w" for="des" forName="rootComposite1" refType="w" fact="10" />
<constr type="h" for="des" forName="rootComposite1" refType="w" refFor="des" refForName="rootComposite1" fact="0.305" />
<constr type="w" for="des" forName="rootComposite" refType="w" fact="10" />
<constr type="h" for="des" forName="rootComposite" refType="w" refFor="des" refForName="rootComposite1" fact="0.305" />
<constr type="w" for="des" forName="rootComposite3" refType="w" fact="10" />
<constr type="h" for="des" forName="rootComposite3" refType="w" refFor="des" refForName="rootComposite1" fact="0.305" />
<constr op="equ" type="primFontSz" for="des" ptType="node" />
<constr op="equ" type="sp" for="des" ptType="all" />
<!-- SPACING -->
<constr type="sp" for="des" forName="hierRoot1" refType="w" refFor="des" refForName="rootComposite1" fact="0.2" />
<constr type="sp" for="des" forName="hierRoot2" refType="sp" refFor="des" refForName="hierRoot1" />
<constr type="sp" for="des" forName="hierRoot3" refType="sp" refFor="des" refForName="hierRoot1" />
<!-- SIBLING SPACING -->
<constr type="sibSp" refType="w" refFor="des" refForName="rootComposite1" fact="0.125" />
<!-- Level 2 -->
<constr type="sibSp" for="des" forName="hierChild2" refType="sibSp" />
<constr type="sibSp" for="des" forName="hierChild3" refType="sibSp" />
<!-- Level 3 -->
<constr type="sibSp" for="des" forName="hierChild4" refType="sibSp" />
<constr type="sibSp" for="des" forName="hierChild5" refType="sibSp" />
<constr type="sibSp" for="des" forName="hierChild6" refType="sibSp" />
<constr type="sibSp" for="des" forName="hierChild7" refType="sibSp" />
<!-- SECONDARY SIBLING SPACING -->
<constr type="secSibSp" refType="w" refFor="des" refForName="rootComposite1" fact="0.125" />
<!-- Level 2 -->
<constr type="secSibSp" for="des" forName="hierChild2" refType="secSibSp" />
<constr type="secSibSp" for="des" forName="hierChild3" refType="secSibSp" />
<!-- Level 3 -->
<constr type="secSibSp" for="des" forName="hierChild4" refType="secSibSp" />
<constr type="secSibSp" for="des" forName="hierChild5" refType="secSibSp" />
<constr type="secSibSp" for="des" forName="hierChild6" refType="secSibSp" />
<constr type="secSibSp" for="des" forName="hierChild7" refType="secSibSp" />
</constrLst>
<ruleLst />
<forEach axis="ch" ptType="all">
<forEach axis="self" ptType="node">
<!-- root of top-level subtree: HierarchyRoot algorithm -->
<layoutNode name="hierRoot1">
<!-- Variable to be used by hierChild of this root node for laying out the child nodes -->
<varLst>
<hierBranch val="init" />
</varLst>
<choose>
<!-- Left Hanging Branch Layout -->
<if func="var" arg="hierBranch" op="equ" val="l">
<choose>
<if func="var" arg="dir" op="equ" val="norm">
<alg type="hierRoot">
<param type="hierAlign" val="lT" />
</alg>
<constrLst>
<constr type="alignOff" val="0.75" />
</constrLst>
</if>
<else>
<alg type="hierRoot">
<param type="hierAlign" val="rT" />
</alg>
<constrLst>
<constr type="alignOff" val="0.75" />
</constrLst>
</else>
</choose>
</if>
<!-- Right Hanging Branch Layout -->
<if func="var" arg="hierBranch" op="equ" val="r">
<choose>
<if func="var" arg="dir" op="equ" val="norm">
<alg type="hierRoot">
<param type="hierAlign" val="lB" />
</alg>
<constrLst>
<constr type="alignOff" val="0.75" />
</constrLst>
</if>
<else>
<alg type="hierRoot">
<param type="hierAlign" val="rB" />
</alg>
<constrLst>
<constr type="alignOff" val="0.75" />
</constrLst>
</else>
</choose>
</if>
<!-- Both Hanging Branch Layout -->
<if func="var" arg="hierBranch" op="equ" val="hang">
<choose>
<if func="var" arg="dir" op="equ" val="norm">
<alg type="hierRoot">
<param type="hierAlign" val="lCtrCh" />
</alg>
<constrLst>
<constr type="alignOff" val="0.65" />
</constrLst>
</if>
<else>
<alg type="hierRoot">
<param type="hierAlign" val="rCtrCh" />
</alg>
<constrLst>
<constr type="alignOff" val="0.65" />
</constrLst>
</else>
</choose>
</if>
<!-- Init/Standard Branch Layout -->
<else>
<choose>
<if func="var" arg="dir" op="equ" val="norm">
<alg type="hierRoot">
<param type="hierAlign" val="lCtrCh" />
</alg>
<constrLst>
<constr type="alignOff" val="0" />
<constr type="bendDist" for="des" ptType="parTrans" refType="sp" fact="0.5" />
</constrLst>
</if>
<else>
<alg type="hierRoot">
<param type="hierAlign" val="rCtrCh" />
</alg>
<constrLst>
<constr type="alignOff" val="0" />
<constr type="bendDist" for="des" ptType="parTrans" refType="sp" fact="0.5" />
</constrLst>
</else>
</choose>
</else>
</choose>
<shape />
<presOf />
<ruleLst />
<!-- Level 1: Root Text-->
<layoutNode name="rootComposite1">
<alg type="composite" />
<shape />
<presOf axis="self" st="1" cnt="1" ptType="node" />
<choose>
<if func="var" arg="hierBranch" op="equ" val="init">
<constrLst>
<constr type="l" for="ch" forName="rootText1" val="0" />
<constr type="t" for="ch" forName="rootText1" val="0" />
<constr type="w" for="ch" forName="rootText1" refType="w" fact="1" />
<constr type="h" for="ch" forName="rootText1" refType="h" fact="1" />
<constr type="l" for="ch" forName="rootConnector1" val="0" />
<constr type="t" for="ch" forName="rootConnector1" val="0" />
<constr type="w" for="ch" forName="rootConnector1" refType="w" refFor="ch" refForName="rootText1" fact="0.2" />
<constr type="h" for="ch" forName="rootConnector1" refType="h" refFor="ch" refForName="rootText1" fact="1" />
</constrLst>
</if>
<if func="var" arg="hierBranch" op="equ" val="l">
<constrLst>
<constr type="l" for="ch" forName="rootText1" val="0" />
<constr type="t" for="ch" forName="rootText1" val="0" />
<constr type="w" for="ch" forName="rootText1" refType="w" fact="1" />
<constr type="h" for="ch" forName="rootText1" refType="h" fact="1" />
<constr type="r" for="ch" forName="rootConnector1" refType="w" />
<constr type="t" for="ch" forName="rootConnector1" val="0" />
<constr type="w" for="ch" forName="rootConnector1" refType="w" refFor="ch" refForName="rootText1" fact="0.2" />
<constr type="h" for="ch" forName="rootConnector1" refType="h" refFor="ch" refForName="rootText1" fact="1" />
</constrLst>
</if>
<if func="var" arg="hierBranch" op="equ" val="r">
<constrLst>
<constr type="l" for="ch" forName="rootText1" val="0" />
<constr type="t" for="ch" forName="rootText1" val="0" />
<constr type="w" for="ch" forName="rootText1" refType="w" fact="1" />
<constr type="h" for="ch" forName="rootText1" refType="h" fact="1" />
<constr type="l" for="ch" forName="rootConnector1" val="0" />
<constr type="t" for="ch" forName="rootConnector1" val="0" />
<constr type="w" for="ch" forName="rootConnector1" refType="w" refFor="ch" refForName="rootText1" fact="0.2" />
<constr type="h" for="ch" forName="rootConnector1" refType="h" refFor="ch" refForName="rootText1" fact="1" />
</constrLst>
</if>
<else>
<!-- An invisible node is created, but never used for a connection site in this case -->
<constrLst>
<constr type="l" for="ch" forName="rootText1" val="0" />
<constr type="t" for="ch" forName="rootText1" val="0" />
<constr type="w" for="ch" forName="rootText1" refType="w" fact="1" />
<constr type="h" for="ch" forName="rootText1" refType="h" fact="1" />
<constr type="r" for="ch" forName="rootConnector1" refType="w" fact="1" />
<constr type="t" for="ch" forName="rootConnector1" val="0" />
<constr type="w" for="ch" forName="rootConnector1" refType="w" refFor="ch" refForName="rootText1" fact="0.2" />
<constr type="h" for="ch" forName="rootConnector1" refType="h" refFor="ch" refForName="rootText1" fact="1" />
</constrLst>
</else>
</choose>
<ruleLst />
<layoutNode name="rootText1" styleLbl="node0">
<varLst>
<chPref val="3" />
</varLst>
<alg type="tx" />
<shape type="rect" />
<presOf axis="self" st="1" cnt="1" ptType="node" />
<constrLst>
<constr type="primFontSz" val="65" />
<constr type="lMarg" refType="primFontSz" fact="0.05" />
<constr type="rMarg" refType="primFontSz" fact="0.05" />
<constr type="tMarg" refType="primFontSz" fact="0.05" />
<constr type="bMarg" refType="primFontSz" fact="0.05" />
</constrLst>
<ruleLst>
<rule type="primFontSz" val="5" />
</ruleLst>
</layoutNode>
<layoutNode name="rootConnector1" moveWith="rootText1">
<alg type="sp" />
<shape type="rect" hideGeom="true" />
<presOf axis="self" st="1" cnt="1" ptType="node" />
<constrLst />
<ruleLst />
</layoutNode>
</layoutNode>
<!-- Level 2: Subordinate Child -->
<layoutNode name="hierChild2">
<choose>
<!-- Left Hanging Branch Layout -->
<if func="var" arg="hierBranch" op="equ" val="l">
<choose>
<if func="var" arg="dir" op="equ" val="norm">
<alg type="hierChild">
<param type="chAlign" val="t" />
<param type="linDir" val="fromL" />
</alg>
</if>
<else>
<alg type="hierChild">
<param type="chAlign" val="t" />
<param type="linDir" val="fromR" />
</alg>
</else>
</choose>
</if>
<!-- Right Hanging Branch Layout -->
<if func="var" arg="hierBranch" op="equ" val="r">
<choose>
<if func="var" arg="dir" op="equ" val="norm">
<alg type="hierChild">
<param type="chAlign" val="b" />
<param type="linDir" val="fromL" />
</alg>
</if>
<else>
<alg type="hierChild">
<param type="chAlign" val="b" />
<param type="linDir" val="fromR" />
</alg>
</else>
</choose>
</if>
<!-- Both Hanging Branch Layout -->
<if func="var" arg="hierBranch" op="equ" val="hang">
<choose>
<if func="var" arg="dir" op="equ" val="norm">
<alg type="hierChild">
<param type="chAlign" val="l" />
<param type="linDir" val="fromT" />
<param type="secChAlign" val="t" />
<param type="secLinDir" val="fromL" />
</alg>
</if>
<else>
<alg type="hierChild">
<param type="chAlign" val="r" />
<param type="linDir" val="fromT" />
<param type="secChAlign" val="t" />
<param type="secLinDir" val="fromR" />
</alg>
</else>
</choose>
</if>
<!-- Both Initial and Standard Layout -->
<else>
<choose>
<if func="var" arg="dir" op="equ" val="norm">
<alg type="hierChild">
<param type="linDir" val="fromT" />
<param type="chAlign" val="l" />
</alg>
</if>
<else>
<alg type="hierChild">
<param type="linDir" val="fromT" />
<param type="chAlign" val="r" />
</alg>
</else>
</choose>
</else>
</choose>
<shape />
<presOf />
<constrLst />
<ruleLst />
<!-- Repeat block for the non assistants. -->
<forEach name="rep2a" axis="ch" ptType="nonAsst">
<forEach axis="precedSib" ptType="parTrans" st="-1" cnt="1">
<choose>
<!-- Both Hanging Branch Layout -->
<if func="var" arg="hierBranch" op="equ" val="hang">
<layoutNode>
<choose>
<if func="var" arg="dir" op="equ" val="norm">
<alg type="conn">
<param type="connRout" val="bend" />
<param type="dim" val="1D" />
<param type="endSty" val="noArr" />
<param type="begPts" val="midR" />
<param type="endPts" val="bCtr tCtr" />
</alg>
</if>
<else>
<alg type="conn">
<param type="connRout" val="bend" />
<param type="dim" val="1D" />
<param type="endSty" val="noArr" />
<param type="begPts" val="midL" />
<param type="endPts" val="bCtr tCtr" />
</alg>
</else>
</choose>
<shape type="conn" zOrderOff="-99999" />
<presOf axis="self" />
<constrLst>
<constr type="begPad" val="0" />
<constr type="endPad" val="0" />
</constrLst>
<ruleLst />
</layoutNode>
</if>
<!-- Left Hanging Branch Layout -->
<if func="var" arg="hierBranch" op="equ" val="l">
<layoutNode>
<choose>
<if func="var" arg="dir" op="equ" val="norm">
<alg type="conn">
<param type="connRout" val="bend" />
<param type="dim" val="1D" />
<param type="endSty" val="noArr" />
<param type="begPts" val="midR" />
<param type="endPts" val="tCtr" />
</alg>
</if>
<else>
<alg type="conn">
<param type="connRout" val="bend" />
<param type="dim" val="1D" />
<param type="endSty" val="noArr" />
<param type="begPts" val="midL" />
<param type="endPts" val="tCtr" />
</alg>
</else>
</choose>
<shape type="conn" zOrderOff="-99999" />
<presOf axis="self" />
<constrLst>
<constr type="begPad" val="0" />
<constr type="endPad" val="0" />
</constrLst>
<ruleLst />
</layoutNode>
</if>
<!-- Right Hanging Branch Layout -->
<if func="var" arg="hierBranch" op="equ" val="r">
<layoutNode>
<choose>
<if func="var" arg="dir" op="equ" val="norm">
<alg type="conn">
<param type="connRout" val="bend" />
<param type="dim" val="1D" />
<param type="endSty" val="noArr" />
<param type="begPts" val="midR" />
<param type="endPts" val="bCtr" />
</alg>
</if>
<else>
<alg type="conn">
<param type="connRout" val="bend" />
<param type="dim" val="1D" />
<param type="endSty" val="noArr" />
<param type="begPts" val="midL" />
<param type="endPts" val="bCtr" />
</alg>
</else>
</choose>
<shape type="conn" zOrderOff="-99999" />
<presOf axis="self" />
<constrLst>
<constr type="begPad" val="0" />
<constr type="endPad" val="0" />
</constrLst>
<ruleLst />
</layoutNode>
</if>
<!-- Init/Standard Branch Layout -->
<else>
<choose>
<if func="var" arg="dir" op="equ" val="norm">
<layoutNode>
<alg type="conn">
<param type="connRout" val="bend" />
<param type="dim" val="1D" />
<param type="endSty" val="noArr" />
<param type="begPts" val="midR" />
<param type="endPts" val="midL" />
<param type="bendPt" val="end" />
</alg>
<shape type="conn" zOrderOff="-99999" />
<presOf axis="self" />
<constrLst>
<constr type="begPad" val="0" />
<constr type="endPad" val="0" />
</constrLst>
<ruleLst />
</layoutNode>
</if>
<else>
<layoutNode>
<alg type="conn">
<param type="connRout" val="bend" />
<param type="dim" val="1D" />
<param type="endSty" val="noArr" />
<param type="begPts" val="midL" />
<param type="endPts" val="midR" />
<param type="bendPt" val="end" />
</alg>
<shape type="conn" zOrderOff="-99999" />
<presOf axis="self" />
<constrLst>
<constr type="begPad" val="0" />
<constr type="endPad" val="0" />
</constrLst>
<ruleLst />
</layoutNode>
</else>
</choose>
</else>
</choose>
</forEach>
<!-- Level 2: Hierarchy Root -->
<layoutNode name="hierRoot2">
<!-- Variable to be used by hierChild of this root node for laying out the child nodes -->
<varLst>
<hierBranch val="init" />
</varLst>
<choose>
<!-- Left Hanging Branch Layout -->
<if func="var" arg="hierBranch" op="equ" val="l">
<choose>
<if func="var" arg="dir" op="equ" val="norm">
<alg type="hierRoot">
<param type="hierAlign" val="lT" />
</alg>
<constrLst>
<constr type="alignOff" val="0.75" />
</constrLst>
</if>
<else>
<alg type="hierRoot">
<param type="hierAlign" val="rT" />
</alg>
<constrLst>
<constr type="alignOff" val="0.75" />
</constrLst>
</else>
</choose>
</if>
<!-- Right Hanging Branch Layout -->
<if func="var" arg="hierBranch" op="equ" val="r">
<choose>
<if func="var" arg="dir" op="equ" val="norm">
<alg type="hierRoot">
<param type="hierAlign" val="lB" />
</alg>
<constrLst>
<constr type="alignOff" val="0.75" />
</constrLst>
</if>
<else>
<alg type="hierRoot">
<param type="hierAlign" val="rB" />
</alg>
<constrLst>
<constr type="alignOff" val="0.75" />
</constrLst>
</else>
</choose>
</if>
<!-- Both Hanging Branch Layout -->
<if func="var" arg="hierBranch" op="equ" val="hang">
<choose>
<if func="var" arg="dir" op="equ" val="norm">
<alg type="hierRoot">
<param type="hierAlign" val="lCtrCh" />
</alg>
<constrLst>
<constr type="alignOff" val="0.65" />
</constrLst>
</if>
<else>
<alg type="hierRoot">
<param type="hierAlign" val="rCtrCh" />
</alg>
<constrLst>
<constr type="alignOff" val="0.65" />
</constrLst>
</else>
</choose>
</if>
<!-- Init/Standard Branch Layout -->
<else>
<choose>
<if func="var" arg="dir" op="equ" val="norm">
<alg type="hierRoot">
<param type="hierAlign" val="lCtrCh" />
</alg>
<constrLst>
<constr type="alignOff" val="0" />
<constr type="bendDist" for="des" ptType="parTrans" refType="sp" fact="0.5" />
</constrLst>
</if>
<else>
<alg type="hierRoot">
<param type="hierAlign" val="rCtrCh" />
</alg>
<constrLst>
<constr type="alignOff" val="0" />
<constr type="bendDist" for="des" ptType="parTrans" refType="sp" fact="0.5" />
</constrLst>
</else>
</choose>
</else>
</choose>
<shape />
<presOf />
<ruleLst />
<!-- Level 2: Subordinate Text -->
<layoutNode name="rootComposite">
<alg type="composite" />
<shape />
<presOf axis="self" st="1" cnt="1" ptType="node" />
<choose>
<if func="var" arg="hierBranch" op="equ" val="init">
<constrLst>
<constr type="l" for="ch" forName="rootText" val="0" />
<constr type="t" for="ch" forName="rootText" val="0" />
<constr type="w" for="ch" forName="rootText" refType="w" fact="1" />
<constr type="h" for="ch" forName="rootText" refType="h" fact="1" />
<constr type="l" for="ch" forName="rootConnector" val="0" />
<constr type="t" for="ch" forName="rootConnector" val="0" />
<constr type="w" for="ch" forName="rootConnector" refType="w" refFor="ch" refForName="rootText" fact="0.2" />
<constr type="h" for="ch" forName="rootConnector" refType="h" refFor="ch" refForName="rootText" fact="1" />
</constrLst>
</if>
<if func="var" arg="hierBranch" op="equ" val="l">
<constrLst>
<constr type="l" for="ch" forName="rootText" val="0" />
<constr type="t" for="ch" forName="rootText" val="0" />
<constr type="w" for="ch" forName="rootText" refType="w" fact="1" />
<constr type="h" for="ch" forName="rootText" refType="h" fact="1" />
<constr type="r" for="ch" forName="rootConnector" refType="w" />
<constr type="t" for="ch" forName="rootConnector" val="0" />
<constr type="w" for="ch" forName="rootConnector" refType="w" refFor="ch" refForName="rootText" fact="0.2" />
<constr type="h" for="ch" forName="rootConnector" refType="h" refFor="ch" refForName="rootText" fact="1" />
</constrLst>
</if>
<if func="var" arg="hierBranch" op="equ" val="r">
<constrLst>
<constr type="l" for="ch" forName="rootText" val="0" />
<constr type="t" for="ch" forName="rootText" val="0" />
<constr type="w" for="ch" forName="rootText" refType="w" fact="1" />
<constr type="h" for="ch" forName="rootText" refType="h" fact="1" />
<constr type="l" for="ch" forName="rootConnector" val="0" />
<constr type="t" for="ch" forName="rootConnector" val="0" />
<constr type="w" for="ch" forName="rootConnector" refType="w" refFor="ch" refForName="rootText" fact="0.2" />
<constr type="h" for="ch" forName="rootConnector" refType="h" refFor="ch" refForName="rootText" fact="1" />
</constrLst>
</if>
<else>
<constrLst>
<constr type="l" for="ch" forName="rootText" val="0" />
<constr type="t" for="ch" forName="rootText" val="0" />
<constr type="w" for="ch" forName="rootText" refType="w" fact="1" />
<constr type="h" for="ch" forName="rootText" refType="h" fact="1" />
<constr type="r" for="ch" forName="rootConnector" refType="w" fact="1" />
<constr type="t" for="ch" forName="rootConnector" val="0" />
<constr type="w" for="ch" forName="rootConnector" refType="w" refFor="ch" refForName="rootText" fact="0.2" />
<constr type="h" for="ch" forName="rootConnector" refType="h" refFor="ch" refForName="rootText" fact="1" />
</constrLst>
</else>
</choose>
<ruleLst />
<layoutNode name="rootText">
<varLst>
<chPref val="3" />
</varLst>
<alg type="tx" />
<shape type="rect" />
<presOf axis="self" st="1" cnt="1" ptType="node" />
<constrLst>
<constr type="primFontSz" val="65" />
<constr type="lMarg" refType="primFontSz" fact="0.05" />
<constr type="rMarg" refType="primFontSz" fact="0.05" />
<constr type="tMarg" refType="primFontSz" fact="0.05" />
<constr type="bMarg" refType="primFontSz" fact="0.05" />
</constrLst>
<ruleLst>
<rule type="primFontSz" val="5" />
</ruleLst>
</layoutNode>
<layoutNode name="rootConnector" moveWith="rootText">
<alg type="sp" />
<shape type="rect" hideGeom="true" />
<presOf axis="self" st="1" cnt="1" ptType="node" />
<constrLst />
<ruleLst />
</layoutNode>
</layoutNode>
<!-- Level 3: Subordinate Child -->
<layoutNode name="hierChild4">
<choose>
<!-- Left Hanging Branch Layout -->
<if func="var" arg="hierBranch" op="equ" val="l">
<choose>
<if func="var" arg="dir" op="equ" val="norm">
<alg type="hierChild">
<param type="chAlign" val="t" />
<param type="linDir" val="fromL" />
</alg>
</if>
<else>
<alg type="hierChild">
<param type="chAlign" val="t" />
<param type="linDir" val="fromR" />
</alg>
</else>
</choose>
</if>
<!-- Right Hanging Branch Layout -->
<if func="var" arg="hierBranch" op="equ" val="r">
<choose>
<if func="var" arg="dir" op="equ" val="norm">
<alg type="hierChild">
<param type="chAlign" val="b" />
<param type="linDir" val="fromL" />
</alg>
</if>
<else>
<alg type="hierChild">
<param type="chAlign" val="b" />
<param type="linDir" val="fromR" />
</alg>
</else>
</choose>
</if>
<!-- Both Hanging Branch Layout -->
<if func="var" arg="hierBranch" op="equ" val="hang">
<choose>
<if func="var" arg="dir" op="equ" val="norm">
<alg type="hierChild">
<param type="chAlign" val="l" />
<param type="linDir" val="fromT" />
<param type="secChAlign" val="t" />
<param type="secLinDir" val="fromL" />
</alg>
</if>
<else>
<alg type="hierChild">
<param type="chAlign" val="r" />
<param type="linDir" val="fromT" />
<param type="secChAlign" val="t" />
<param type="secLinDir" val="fromR" />
</alg>
</else>
</choose>
</if>
<!-- Both Initial and Standard Layout -->
<else>
<choose>
<if func="var" arg="dir" op="equ" val="norm">
<alg type="hierChild">
<param type="linDir" val="fromT" />
<param type="chAlign" val="l" />
</alg>
</if>
<else>
<alg type="hierChild">
<param type="linDir" val="fromT" />
<param type="chAlign" val="r" />
</alg>
</else>
</choose>
</else>
</choose>
<shape />
<presOf />
<constrLst />
<ruleLst />
<!-- Third level and below repeat -->
<forEach ref="rep2a" />
</layoutNode>
<!--Level 3: Assistant -->
<layoutNode name="hierChild5">
<!-- Both Hanging Layout -->
<choose>
<if func="var" arg="dir" op="equ" val="norm">
<alg type="hierChild">
<param type="chAlign" val="l" />
<param type="linDir" val="fromT" />
<param type="secChAlign" val="t" />
<param type="secLinDir" val="fromL" />
</alg>
</if>
<else>
<alg type="hierChild">
<param type="chAlign" val="r" />
<param type="linDir" val="fromT" />
<param type="secChAlign" val="t" />
<param type="secLinDir" val="fromR" />
</alg>
</else>
</choose>
<shape />
<presOf />
<constrLst />
<ruleLst />
<forEach ref="rep2b" />
</layoutNode>
</layoutNode>
</forEach>
</layoutNode>
<!-- Level 2: Assistant Child -->
<layoutNode name="hierChild3">
<!-- Both Hanging Layout -->
<choose>
<if func="var" arg="dir" op="equ" val="norm">
<alg type="hierChild">
<param type="chAlign" val="l" />
<param type="linDir" val="fromT" />
<param type="secChAlign" val="t" />
<param type="secLinDir" val="fromL" />
</alg>
</if>
<else>
<alg type="hierChild">
<param type="chAlign" val="r" />
<param type="linDir" val="fromT" />
<param type="secChAlign" val="t" />
<param type="secLinDir" val="fromR" />
</alg>
</else>
</choose>
<shape />
<presOf />
<constrLst />
<ruleLst />
<!-- Repeat block for assistants -->
<forEach name="rep2b" axis="ch" ptType="asst">
<forEach axis="precedSib" ptType="parTrans" st="-1" cnt="1">
<layoutNode>
<!-- Both Hanging Layout -->
<choose>
<if func="var" arg="dir" op="equ" val="norm">
<alg type="conn">
<param type="connRout" val="bend" />
<param type="dim" val="1D" />
<param type="endSty" val="noArr" />
<param type="begPts" val="midR" />
<param type="endPts" val="bCtr tCtr" />
</alg>
</if>
<else>
<alg type="conn">
<param type="connRout" val="bend" />
<param type="dim" val="1D" />
<param type="endSty" val="noArr" />
<param type="begPts" val="midL" />
<param type="endPts" val="bCtr tCtr" />
</alg>
</else>
</choose>
<shape type="conn" zOrderOff="-99999" />
<presOf axis="self" />
<constrLst>
<constr type="begPad" val="0" />
<constr type="endPad" val="0" />
</constrLst>
<ruleLst />
</layoutNode>
</forEach>
<!-- Level 2: Hierarchy Root -->
<layoutNode name="hierRoot3">
<varLst>
<hierBranch val="init" />
</varLst>
<choose>
<!-- Left Hanging Branch Layout -->
<if func="var" arg="hierBranch" op="equ" val="l">
<choose>
<if func="var" arg="dir" op="equ" val="norm">
<alg type="hierRoot">
<param type="hierAlign" val="lT" />
</alg>
<constrLst>
<constr type="alignOff" val="0.75" />
</constrLst>
</if>
<else>
<alg type="hierRoot">
<param type="hierAlign" val="rT" />
</alg>
<constrLst>
<constr type="alignOff" val="0.75" />
</constrLst>
</else>
</choose>
</if>
<!-- Right Hanging Branch Layout -->
<if func="var" arg="hierBranch" op="equ" val="r">
<choose>
<if func="var" arg="dir" op="equ" val="norm">
<alg type="hierRoot">
<param type="hierAlign" val="lB" />
</alg>
<constrLst>
<constr type="alignOff" val="0.75" />
</constrLst>
</if>
<else>
<alg type="hierRoot">
<param type="hierAlign" val="rB" />
</alg>
<constrLst>
<constr type="alignOff" val="0.75" />
</constrLst>
</else>
</choose>
</if>
<!-- Both Hanging Branch Layout -->
<if func="var" arg="hierBranch" op="equ" val="hang">
<choose>
<if func="var" arg="dir" op="equ" val="norm">
<alg type="hierRoot">
<param type="hierAlign" val="lCtrCh" />
</alg>
<constrLst>
<constr type="alignOff" val="0.65" />
</constrLst>
</if>
<else>
<alg type="hierRoot">
<param type="hierAlign" val="rCtrCh" />
</alg>
<constrLst>
<constr type="alignOff" val="0.65" />
</constrLst>
</else>
</choose>
</if>
<!-- Init/Standard Branch Layout -->
<else>
<choose>
<if func="var" arg="dir" op="equ" val="norm">
<alg type="hierRoot">
<param type="hierAlign" val="lCtrCh" />
</alg>
<constrLst>
<constr type="alignOff" val="0" />
<constr type="bendDist" for="des" ptType="parTrans" refType="sp" fact="0.5" />
</constrLst>
</if>
<else>
<alg type="hierRoot">
<param type="hierAlign" val="rCtrCh" />
</alg>
<constrLst>
<constr type="alignOff" val="0" />
<constr type="bendDist" for="des" ptType="parTrans" refType="sp" fact="0.5" />
</constrLst>
</else>
</choose>
</else>
</choose>
<shape />
<presOf />
<ruleLst />
<!-- Assistant Text -->
<layoutNode name="rootComposite3">
<alg type="composite" />
<shape />
<presOf axis="self" st="1" cnt="1" ptType="node" />
<choose>
<!-- An invisible node is created, but never used for a connection site for assistants -->
<if func="var" arg="hierBranch" op="equ" val="init">
<constrLst>
<constr type="l" for="ch" forName="rootText3" val="0" />
<constr type="t" for="ch" forName="rootText3" val="0" />
<constr type="w" for="ch" forName="rootText3" refType="w" fact="1" />
<constr type="h" for="ch" forName="rootText3" refType="h" fact="1" />
<constr type="l" for="ch" forName="rootConnector3" val="0" />
<constr type="t" for="ch" forName="rootConnector3" val="0" />
<constr type="w" for="ch" forName="rootConnector3" refType="w" refFor="ch" refForName="rootText3" fact="0.2" />
<constr type="h" for="ch" forName="rootConnector3" refType="h" refFor="ch" refForName="rootText3" fact="1" />
</constrLst>
</if>
<if func="var" arg="hierBranch" op="equ" val="l">
<constrLst>
<constr type="l" for="ch" forName="rootText3" val="0" />
<constr type="t" for="ch" forName="rootText3" val="0" />
<constr type="w" for="ch" forName="rootText3" refType="w" fact="1" />
<constr type="h" for="ch" forName="rootText3" refType="h" fact="1" />
<constr type="r" for="ch" forName="rootConnector3" refType="w" />
<constr type="t" for="ch" forName="rootConnector3" val="0" />
<constr type="w" for="ch" forName="rootConnector3" refType="w" refFor="ch" refForName="rootText3" fact="0.2" />
<constr type="h" for="ch" forName="rootConnector3" refType="h" refFor="ch" refForName="rootText3" fact="1" />
</constrLst>
</if>
<if func="var" arg="hierBranch" op="equ" val="r">
<constrLst>
<constr type="l" for="ch" forName="rootText3" val="0" />
<constr type="t" for="ch" forName="rootText3" val="0" />
<constr type="w" for="ch" forName="rootText3" refType="w" fact="1" />
<constr type="h" for="ch" forName="rootText3" refType="h" fact="1" />
<constr type="l" for="ch" forName="rootConnector3" val="0" />
<constr type="t" for="ch" forName="rootConnector3" val="0" />
<constr type="w" for="ch" forName="rootConnector3" refType="w" refFor="ch" refForName="rootText3" fact="0.2" />
<constr type="h" for="ch" forName="rootConnector3" refType="h" refFor="ch" refForName="rootText3" fact="1" />
</constrLst>
</if>
<else>
<constrLst>
<constr type="l" for="ch" forName="rootText3" val="0" />
<constr type="t" for="ch" forName="rootText3" val="0" />
<constr type="w" for="ch" forName="rootText3" refType="w" fact="1" />
<constr type="h" for="ch" forName="rootText3" refType="h" fact="1" />
<constr type="r" for="ch" forName="rootConnector3" refType="w" fact="1" />
<constr type="t" for="ch" forName="rootConnector3" val="0" />
<constr type="w" for="ch" forName="rootConnector3" refType="w" refFor="ch" refForName="rootText3" fact="0.2" />
<constr type="h" for="ch" forName="rootConnector3" refType="h" refFor="ch" refForName="rootText3" fact="1" />
</constrLst>
</else>
</choose>
<ruleLst />
<layoutNode name="rootText3">
<varLst>
<chPref val="3" />
</varLst>
<alg type="tx" />
<shape type="rect" />
<presOf axis="self" st="1" cnt="1" ptType="node" />
<constrLst>
<constr type="primFontSz" val="65" />
<constr type="lMarg" refType="primFontSz" fact="0.05" />
<constr type="rMarg" refType="primFontSz" fact="0.05" />
<constr type="tMarg" refType="primFontSz" fact="0.05" />
<constr type="bMarg" refType="primFontSz" fact="0.05" />
</constrLst>
<ruleLst>
<rule type="primFontSz" val="5" />
</ruleLst>
</layoutNode>
<layoutNode name="rootConnector3" moveWith="rootText1">
<alg type="sp" />
<shape type="rect" hideGeom="true" />
<presOf axis="self" st="1" cnt="1" ptType="node" />
<constrLst />
<ruleLst />
</layoutNode>
</layoutNode>
<!-- Level 3: Subordinate Child -->
<layoutNode name="hierChild6">
<choose>
<!-- Left Hanging Branch Layout -->
<if func="var" arg="hierBranch" op="equ" val="l">
<choose>
<if func="var" arg="dir" op="equ" val="norm">
<alg type="hierChild">
<param type="chAlign" val="t" />
<param type="linDir" val="fromL" />
</alg>
</if>
<else>
<alg type="hierChild">
<param type="chAlign" val="t" />
<param type="linDir" val="fromR" />
</alg>
</else>
</choose>
</if>
<!-- Right Hanging Branch Layout -->
<if func="var" arg="hierBranch" op="equ" val="r">
<choose>
<if func="var" arg="dir" op="equ" val="norm">
<alg type="hierChild">
<param type="chAlign" val="b" />
<param type="linDir" val="fromL" />
</alg>
</if>
<else>
<alg type="hierChild">
<param type="chAlign" val="b" />
<param type="linDir" val="fromR" />
</alg>
</else>
</choose>
</if>
<!-- Both Hanging Branch Layout -->
<if func="var" arg="hierBranch" op="equ" val="hang">
<choose>
<if func="var" arg="dir" op="equ" val="norm">
<alg type="hierChild">
<param type="chAlign" val="l" />
<param type="linDir" val="fromT" />
<param type="secChAlign" val="t" />
<param type="secLinDir" val="fromL" />
</alg>
</if>
<else>
<alg type="hierChild">
<param type="chAlign" val="r" />
<param type="linDir" val="fromT" />
<param type="secChAlign" val="t" />
<param type="secLinDir" val="fromR" />
</alg>
</else>
</choose>
</if>
<!-- Both Initial and Standard Layout -->
<else>
<choose>
<if func="var" arg="dir" op="equ" val="norm">
<alg type="hierChild">
<param type="linDir" val="fromT" />
<param type="chAlign" val="l" />
</alg>
</if>
<else>
<alg type="hierChild">
<param type="linDir" val="fromT" />
<param type="chAlign" val="r" />
</alg>
</else>
</choose>
</else>
</choose>
<shape />
<presOf />
<constrLst />
<ruleLst />
<!-- Third level and below repeat -->
<forEach ref="rep2a" />
</layoutNode>
<!--Level 3: Assistant -->
<layoutNode name="hierChild7">
<!-- Both Hanging Layout -->
<choose>
<if func="var" arg="dir" op="equ" val="norm">
<alg type="hierChild">
<param type="chAlign" val="l" />
<param type="linDir" val="fromT" />
<param type="secChAlign" val="t" />
<param type="secLinDir" val="fromL" />
</alg>
</if>
<else>
<alg type="hierChild">
<param type="chAlign" val="r" />
<param type="linDir" val="fromT" />
<param type="secChAlign" val="t" />
<param type="secLinDir" val="fromR" />
</alg>
</else>
</choose>
<shape />
<presOf />
<constrLst />
<ruleLst />
<forEach ref="rep2b" />
</layoutNode>
</layoutNode>
</forEach>
</layoutNode>
</layoutNode>
</forEach>
</forEach>
</layoutNode>
</layoutDef>