<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet version="2.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:saxon="http://icl.com/saxon" xmlns:b="http://www.w3.org/2005/xpath-functions">

  <xsl:template match="/">
    <Document>
<!-- ======================================================================================================== -->
<!-- ==  Header 1                                                                                          == -->
<!-- ======================================================================================================== -->
      <Row>
        <ColumnA>Header1</ColumnA>
        <ColumnB>Item</ColumnB>
        <ColumnC>Item</ColumnC>
        <ColumnD>Item</ColumnD>
        <ColumnE>Item</ColumnE>
        <ColumnF>Item</ColumnF>
        <ColumnG>Description</ColumnG>
        <ColumnH>Type</ColumnH>
        <ColumnI>Sequence</ColumnI>
        <ColumnJ>Attribute</ColumnJ>
        <ColumnK>Attribute</ColumnK>
        <ColumnL>Attribute</ColumnL>
        <ColumnM>Attribute</ColumnM>
        <ColumnN>Attribute</ColumnN>
        <ColumnO>Attribute</ColumnO>
        <ColumnP>Attribute</ColumnP>
        <ColumnQ>Attribute</ColumnQ>
        <ColumnR>Attribute</ColumnR>
        <ColumnS>Attribute</ColumnS>
        <ColumnT>Attribute</ColumnT>
        <ColumnU>Attribute</ColumnU>
        <ColumnV>Attribute</ColumnV>
        <ColumnW>Attribute</ColumnW>
        <ColumnX>Attribute</ColumnX>
        <ColumnY>Attribute</ColumnY>
        <ColumnZ>Attribute</ColumnZ>
        <ColumnAA>Attribute</ColumnAA>
        <ColumnAB>Attribute</ColumnAB>
        <ColumnAC>Attribute</ColumnAC>
        <ColumnAD>Attribute</ColumnAD>
        <ColumnAE>Attribute</ColumnAE>
        <ColumnAF>Attribute</ColumnAF>
        <ColumnAG>Attribute</ColumnAG>
        <ColumnAH>Attribute</ColumnAH>
        <ColumnAI>Attribute</ColumnAI>
        <ColumnAJ>Attribute</ColumnAJ>
        <ColumnAK>Attribute</ColumnAK>
        <ColumnAL>Attribute</ColumnAL>
			</Row>
<!-- ======================================================================================================== -->
<!-- ==  Header 2                                                                                          == -->
<!-- ======================================================================================================== -->
			<Row>
        <ColumnA>Header2</ColumnA>
        <ColumnB>MEProcess</ColumnB>
        <ColumnC>MEProcess</ColumnC>
        <ColumnD>MEProcess</ColumnD>
        <ColumnE>MEProcess</ColumnE>
        <ColumnF>MEOP</ColumnF>
        <ColumnG/>
        <ColumnH/>
        <ColumnI/>
        <ColumnJ>Unit Form</ColumnJ>
        <ColumnK>Unit Form</ColumnK>
        <ColumnL>Unit Form</ColumnL>
        <ColumnM>HST Form</ColumnM>
        <ColumnN>HST Form</ColumnN>
        <ColumnO>HST Form</ColumnO>
        <ColumnP>HST Form</ColumnP>
        <ColumnQ>HST Form</ColumnQ>
        <ColumnR>HST Form</ColumnR>
        <ColumnS>HST Form</ColumnS>
        <ColumnT>HST Form</ColumnT>
        <ColumnU>HST Form</ColumnU>
        <ColumnV>HST Form</ColumnV>
        <ColumnW>HST Form</ColumnW>
        <ColumnX>HST Form</ColumnX>
        <ColumnY>HST Form</ColumnY>
        <ColumnZ>HST Form</ColumnZ>
        <ColumnAA>HST Form</ColumnAA>
        <ColumnAB>HST Form</ColumnAB>
        <ColumnAC>HST Form</ColumnAC>
        <ColumnAD>HST Form</ColumnAD>
        <ColumnAE>HST Form</ColumnAE>
        <ColumnAF>HST Form</ColumnAF>
        <ColumnAG>HST Form</ColumnAG>
        <ColumnAH>HST Form</ColumnAH>
        <ColumnAI>HST Form</ColumnAI>
        <ColumnAJ>HST Form</ColumnAJ>
        <ColumnAK>HST Form</ColumnAK>
        <ColumnAL>HST Form</ColumnAL>
			</Row>
<!-- ======================================================================================================== -->
<!-- ==  Header 3                                                                                          == -->
<!-- ======================================================================================================== -->
			<Row>
        <ColumnA>Header3</ColumnA>
        <ColumnB>Project</ColumnB>
        <ColumnC>Team_Zone</ColumnC>
        <ColumnD>Process</ColumnD>
        <ColumnE>Unit</ColumnE>
        <ColumnF>HST</ColumnF>
        <ColumnG/>
        <ColumnH/>
        <ColumnI/>
        <ColumnJ>H_afworkarea</ColumnJ>
        <ColumnK>H_workingpoint</ColumnK>
        <ColumnL>H_processremarks</ColumnL>
        <ColumnM>H_hstcodea1</ColumnM>
        <ColumnN>H_hstcodeb1</ColumnN>
        <ColumnO>H_hstcodeg</ColumnO>
        <ColumnP>H_hstcodea2</ColumnP>
        <ColumnQ>H_hstcodeb2</ColumnQ>
        <ColumnR>H_hstcodep1</ColumnR>
        <ColumnS>H_hstcodeofaction</ColumnS>
        <ColumnT>H_hstcodea3</ColumnT>
        <ColumnU>H_hstcodeb3</ColumnU>
        <ColumnV>H_hstcodep2</ColumnV>
        <ColumnW>H_hstcodea4</ColumnW>
        <ColumnX>H_hstcodea5</ColumnX>
        <ColumnY>H_hstcodeactionname</ColumnY>
        <ColumnZ>H_hstfreqselstartindex</ColumnZ>
        <ColumnAA>H_hstfreqselendindex</ColumnAA>
        <ColumnAB>H_hstsimoselindexes</ColumnAB>
        <ColumnAC>H_frequency</ColumnAC>
        <ColumnAD>H_partialfrequency</ColumnAD>
        <ColumnAE>H_hsttotaltime</ColumnAE>
        <ColumnAF>H_totaltmu</ColumnAF>
        <ColumnAG>H_netlosscode</ColumnAG>
        <ColumnAH>H_hsttype</ColumnAH>
        <ColumnAI>H_hstcodesummary</ColumnAI>
        <ColumnAJ>H_simoto</ColumnAJ>
        <ColumnAK>H_qualitypoint</ColumnAK>
        <ColumnAL>H_printoption</ColumnAL>
			</Row>
<!-- ======================================================================================================== -->
<!-- ==  Header 4                                                                                          == -->
<!-- ======================================================================================================== -->
			<Row>
        <ColumnA>Header4</ColumnA>
        <ColumnB>Root</ColumnB>
        <ColumnC>Team_Zone</ColumnC>
        <ColumnD>Process</ColumnD>
        <ColumnE>Unit</ColumnE>
        <ColumnF>Op</ColumnF>
        <ColumnG>ALL</ColumnG>
        <ColumnH>Unit</ColumnH>
        <ColumnI/>
        <ColumnJ/>
        <ColumnK/>
        <ColumnL/>
        <ColumnM/>
        <ColumnN/>
        <ColumnO/>
        <ColumnP/>
        <ColumnQ/>
        <ColumnR/>
        <ColumnS/>
        <ColumnT/>
        <ColumnU/>
        <ColumnV/>
        <ColumnW/>
        <ColumnX/>
        <ColumnY/>
        <ColumnZ/>
        <ColumnAA/>
        <ColumnAB/>
        <ColumnAC/>
        <ColumnAD/>
        <ColumnAE/>
        <ColumnAF/>
        <ColumnAG/>
        <ColumnAH/>
        <ColumnAI/>
        <ColumnAJ/>
        <ColumnAK/>
        <ColumnAL/>
			</Row>
<!-- ======================================================================================================== -->
<!-- ==  Header 5 / Title Row                                                                              == -->
<!-- ======================================================================================================== -->
			<Row>
        <ColumnA>Title</ColumnA>
        <ColumnB>Root</ColumnB>
        <ColumnC>Team Name</ColumnC>
        <ColumnD>Process Name</ColumnD>
        <ColumnE>Unit Name</ColumnE>
        <ColumnF>Op Name</ColumnF>
        <ColumnG>Description</ColumnG>
        <ColumnH>Overwrite Type</ColumnH>
        <ColumnI/>
        <ColumnJ/>
        <ColumnK/>
        <ColumnL/>
        <ColumnM/>
        <ColumnN/>
        <ColumnO/>
        <ColumnP/>
        <ColumnQ/>
        <ColumnR/>
        <ColumnS/>
        <ColumnT/>
        <ColumnU/>
        <ColumnV/>
        <ColumnW/>
        <ColumnX/>
        <ColumnY/>
        <ColumnZ/>
        <ColumnAA/>
        <ColumnAB/>
        <ColumnAC/>
        <ColumnAD/>
        <ColumnAE/>
        <ColumnAF/>
        <ColumnAG/>
        <ColumnAH/>
        <ColumnAI/>
        <ColumnAJ/>
        <ColumnAK/>
        <ColumnAL/>
			</Row>
<!-- ======================================================================================================== -->
<!-- ==  Detail Row 1 / Project                                                                            == -->
<!-- ======================================================================================================== -->
			<Row>
        <ColumnA/>
        <ColumnB>Project</ColumnB>
        <ColumnC/>
        <ColumnD/>
        <ColumnE/>
        <ColumnF/>
        <ColumnG/>
        <ColumnH/>
        <ColumnI/>
        <ColumnJ/>
        <ColumnK/>
        <ColumnL/>
        <ColumnM/>
        <ColumnN/>
        <ColumnO/>
        <ColumnP/>
        <ColumnQ/>
        <ColumnR/>
        <ColumnS/>
        <ColumnT/>
        <ColumnU/>
        <ColumnV/>
        <ColumnW/>
        <ColumnX/>
        <ColumnY/>
        <ColumnZ/>
        <ColumnAA/>
        <ColumnAB/>
        <ColumnAC/>
        <ColumnAD/>
        <ColumnAE/>
        <ColumnAF/>
        <ColumnAG/>
        <ColumnAH/>
        <ColumnAI/>
        <ColumnAJ/>
        <ColumnAK/>
        <ColumnAL/>
      </Row>

<!-- ======================================================================================================== -->
<!-- ==  Start looping through the rows of data and process only if there is data on that row              == -->
<!-- ======================================================================================================== -->
      <xsl:for-each select="PDDA/Row">
        <xsl:if test="PLANT > ''">
          <xsl:variable name="WSCurrTeamNo" select="TEAM_NO"/>
          <xsl:variable name="WSPrevTeamNo" select="preceding::TEAM_NO[1]"/>
          <xsl:variable name="WSCurrProcNo" select="PROCESS_NO"/>
          <xsl:variable name="WSPrevProcNo" select="preceding::PROCESS_NO[1]"/>
          <xsl:variable name="WSCurrUnitNo" select="UNIT_NO"/>
          <xsl:variable name="WSPrevUnitNo" select="preceding::UNIT_NO[1]"/>

          <xsl:variable name="WSCurrTeamDesc" select="TEAM_DESC"/>
          <xsl:variable name="WSPrevTeamDesc" select="preceding::TEAM_DESC[1]"/>
          <xsl:variable name="WSCurrProcName" select="PROCESS_NAME"/>
          <xsl:variable name="WSPrevProcName" select="preceding::PROCESS_NAME[1]"/>
          <xsl:variable name="WSCurrUnitDesc" select="UNIT_DESC"/>
          <xsl:variable name="WSPrevUnitDesc" select="preceding::UNIT_DESC[1]"/>

<!-- ======================================================================================================== -->
<!-- ==  Detail Row 2 / Team                                                                               == -->
<!-- ======================================================================================================== -->
          <xsl:if test="not($WSCurrTeamNo = $WSPrevTeamNo)">
            <Row>
              <ColumnA/>
              <ColumnB/>
              <ColumnC><xsl:value-of select="TEAM_NO"/></ColumnC>
              <ColumnD/>
              <ColumnE/>
              <ColumnF/>

              <xsl:choose>
                <xsl:when test="($WSCurrTeamDesc = $WSPrevTeamDesc)">
                  <ColumnG><xsl:value-of select="concat(normalize-space(replace(TEAM_DESC,'#','NO.')),'.')"/></ColumnG>
                </xsl:when>
                <xsl:otherwise>
                  <ColumnG><xsl:value-of select="normalize-space(replace(TEAM_DESC,'#','NO.'))"/></ColumnG>
                </xsl:otherwise>
              </xsl:choose>

              <ColumnH/>
              <ColumnI><xsl:value-of select="concat(TEAM_SEQ,0)"/></ColumnI>
              <ColumnJ/>
              <ColumnK/>
              <ColumnL/>
              <ColumnM/>
              <ColumnN/>
              <ColumnO/>
              <ColumnP/>
              <ColumnQ/>
              <ColumnR/>
              <ColumnS/>
              <ColumnT/>
              <ColumnU/>
              <ColumnV/>
              <ColumnW/>
              <ColumnX/>
              <ColumnY/>
              <ColumnZ/>
              <ColumnAA/>
              <ColumnAB/>
              <ColumnAC/>
              <ColumnAD/>
              <ColumnAE/>
              <ColumnAF/>
              <ColumnAG/>
              <ColumnAH/>
              <ColumnAI/>
              <ColumnAJ/>
              <ColumnAK/>
              <ColumnAL/>
            </Row>
          </xsl:if>

<!-- ========================================================================================================= -->
<!-- == Detail Row 3 / Process                                                                              == -->
<!-- ========================================================================================================= -->
          <xsl:if test="not($WSCurrProcNo = $WSPrevProcNo)">
            <Row>
              <ColumnA/>
              <ColumnB/>
              <ColumnC/>

              <xsl:variable name="WSUnitDescCount" select="count(preceding::UNIT_DESC)"/>
              <xsl:choose>
                <xsl:when test="($WSCurrProcName = $WSPrevProcName)">
                  <ColumnD><xsl:value-of select="concat(normalize-space(replace(PROCESS_NAME,'#','NO.')),'.')"/></ColumnD>
                </xsl:when>
                <xsl:otherwise>
                  <ColumnD><xsl:value-of select="normalize-space(replace(PROCESS_NAME,'#','NO.'))"/></ColumnD>
                </xsl:otherwise>
              </xsl:choose>

              <ColumnE/>
              <ColumnF/>
              <ColumnG><xsl:value-of select="PROCESS_NO"/></ColumnG>
              <ColumnH/>
              <ColumnI><xsl:value-of select="count (distinct-values (preceding::PROCESS_NO))+1"/></ColumnI>
              <ColumnJ/>
              <ColumnK/>
              <ColumnL/>
              <ColumnM/>
              <ColumnN/>
              <ColumnO/>
              <ColumnP/>
              <ColumnQ/>
              <ColumnR/>
              <ColumnS/>
              <ColumnT/>
              <ColumnU/>
              <ColumnV/>
              <ColumnW/>
              <ColumnX/>
              <ColumnY/>
              <ColumnZ/>
              <ColumnAA/>
              <ColumnAB/>
              <ColumnAC/>
              <ColumnAD/>
              <ColumnAE/>
              <ColumnAF/>
              <ColumnAG/>
              <ColumnAH/>
              <ColumnAI/>
              <ColumnAJ/>
              <ColumnAK/>
              <ColumnAL/>
            </Row>
          </xsl:if>

<!-- ========================================================================================================= -->
<!-- == Detail Row 4 / Unit                                                                                 == -->
<!-- ========================================================================================================= -->
          <xsl:variable name="WSWorkingPoint1" select="translate(WORKING_POINT_1, '&#10;&#13;', ' ')"/>
          <xsl:variable name="WSWorkingPoint2" select="translate(WORKING_POINT_2, '&#10;&#13;', ' ')"/>
          <xsl:if test="not($WSCurrUnitNo = $WSPrevUnitNo)">
            <Row>
              <ColumnA/>
              <ColumnB/>
              <ColumnC/>
              <ColumnD/>

              <xsl:choose>
                <xsl:when test="($WSCurrUnitDesc = $WSPrevUnitDesc)">
                  <ColumnE><xsl:value-of select="concat(normalize-space(replace(UNIT_DESC,'#','NO.')),'.')"/></ColumnE>
                </xsl:when>
                <xsl:otherwise>
                  <ColumnE><xsl:value-of select="normalize-space(replace(UNIT_DESC,'#','NO.'))"/></ColumnE>
                </xsl:otherwise>
              </xsl:choose>

              <ColumnF/>
              <ColumnG><xsl:value-of select="UNIT_NO"/></ColumnG>
              <xsl:choose>
                <xsl:when test="substring(UNIT_DESC, 1, 4) = 'READ'">
                  <ColumnH><xsl:value-of select="'Walking'" /></ColumnH>
                </xsl:when>
                <xsl:otherwise>
                  <ColumnH/>
                </xsl:otherwise>
              </xsl:choose>
              <ColumnI><xsl:value-of select="concat(UNIT_SEQ_NO,0)"/></ColumnI>
              <ColumnJ><xsl:value-of select="WORK_AREA"/></ColumnJ>
              <ColumnK><xsl:value-of select="normalize-space(replace(concat($WSWorkingPoint1,$WSWorkingPoint2),'#','NO.'))"/></ColumnK>
              <ColumnL><xsl:value-of select="normalize-space(replace(concat(PROCESS_REMARKS_1,PROCESS_REMARKS_2),'#','NO.'))"/></ColumnL>
              <ColumnM/>
              <ColumnN/>
              <ColumnO/>
              <ColumnP/>
              <ColumnQ/>
              <ColumnR/>
              <ColumnS/>
              <ColumnT/>
              <ColumnU/>
              <ColumnV/>
              <ColumnW/>
              <ColumnX/>
              <ColumnY/>
              <ColumnZ/>
              <ColumnAA/>
              <ColumnAB/>
              <ColumnAC/>
              <ColumnAD/>
              <ColumnAE/>
              <ColumnAF/>
              <ColumnAG/>
              <ColumnAH/>
              <ColumnAI/>
              <ColumnAJ/>
              <ColumnAK/>
              <ColumnAL/>
            </Row>
          </xsl:if>

<!-- ======================================================================================================== -->
<!-- ==  Create Variables for Detail Row 5                                                                 == -->
<!-- ======================================================================================================== -->
          <xsl:variable name="WSPCd" select="concat(P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12)"/>
          <xsl:variable name="WSNCd" select="concat(N0,N1,N2,N3,N4,N5,N6,N7,N8,N9,N10,N11,N12)"/>
          <xsl:variable name="WSGCd" select="concat(G0,G1,G2,G3,G4,G5,G6,G7,G8,G9,G10,G11,G12)"/>
          <xsl:variable name="WSIDX" select="concat(G0,G1,G2,G3,G4,G5,G6,G7,G8,G9,G10,G11,G12)"/>
          <xsl:variable name="WS01" select="concat(P0,N0,G0,P1,N1,G1,P2,N2,G2,P3,N3,G3,P4,N4,G4,P5,N5,G5,P6,N6,G6,P7,N7,G7,P8,N8,G8,P9,N9,G9,P10,N10,G10,P11,N11,G11,P12,N12,G12)"/>
          <xsl:variable name="WS02" select="translate($WS01,'N','')"/>
          <xsl:variable name="WSDivPct" select="0.036[boolean(number(.))]"/>
          <xsl:variable name="WSTotSec" select="SECONDS_TOTAL[boolean(number(.))]"/>
          <xsl:variable name="WSFreqChar" select="FREQUENCY_CHAR"/>
          <xsl:variable name="WSLPerinLoc" select="string-length(substring-before($WSGCd,'Y'))"/>
          <xsl:variable name="WSCdSummary" select="translate($WS02,'Y','')"/>
          <xsl:variable name="WSRPerinLoc" select="string-length(substring-before(substring-after($WSGCd,'Y'),'Y')) + 1"/>

          <xsl:variable name="WSQualityPoint1" select="concat(QUALITY_POINT_1,QUALITY_POINT_2)"/>
          <xsl:variable name="WSQualityPoint2" select="translate($WSQualityPoint1, '&#10;&#13;', ' ')"/>
          <xsl:variable name="WSQualityPoint3" select="replace($WSQualityPoint1,'#','NO.')"/>
          <xsl:variable name="WSQualityPoint4" select="replace($WSQualityPoint2, '&quot;', '')"/>
          <xsl:variable name="WSQualityPoint5" select="normalize-space($WSQualityPoint3)"/>
          <xsl:variable name="WSCurrWorkPoint" select="WORKING_POINT_DTL"/>
          <xsl:variable name="WSPrevWorkPoint" select="preceding::WORKING_POINT_DTL[1]"/>

<!-- ========================================================================================================= -->
<!-- == Detail Row 5                                                                                        == -->
<!-- ========================================================================================================= -->
          <xsl:if test="not(MOST_SEQ_NO = '')">
            <Row>
              <ColumnA/>
              <ColumnB/>
              <ColumnC/>
              <ColumnD/>
              <ColumnE/>

                <xsl:choose>
                  <xsl:when test="($WSCurrWorkPoint = $WSPrevWorkPoint)">
                    <ColumnF><xsl:value-of select="concat(normalize-space(replace(WORKING_POINT_DTL,'#','NO.')),'.')"/></ColumnF>
                  </xsl:when>
                  <xsl:otherwise>
                    <ColumnF><xsl:value-of select="normalize-space(replace(WORKING_POINT_DTL,'#','NO.'))"/></ColumnF>
                  </xsl:otherwise>
                </xsl:choose>

              <ColumnG><xsl:value-of select="MOST_SEQ_NO"/></ColumnG>
              <ColumnH/>
              <ColumnI><xsl:value-of select="MOST_SEQ_NO"/></ColumnI>
              <ColumnJ/>
              <ColumnK/>
              <ColumnL/>
              <ColumnM><xsl:value-of select="N0"/></ColumnM>
              <ColumnN><xsl:value-of select="N1"/></ColumnN>
              <ColumnO><xsl:value-of select="N2"/></ColumnO>
              <ColumnP><xsl:value-of select="N3"/></ColumnP>
              <ColumnQ><xsl:value-of select="N4"/></ColumnQ>
              <ColumnR><xsl:value-of select="N5"/></ColumnR>

              <xsl:choose>
                <xsl:when test="N6 = '0'">
                  <ColumnS/>
                  <ColumnT><xsl:value-of select="N6"/></ColumnT>
                </xsl:when>
                <xsl:otherwise>
                  <ColumnS><xsl:value-of select="N6"/></ColumnS>
                  <ColumnT><xsl:value-of select="N7"/></ColumnT>
                </xsl:otherwise>
              </xsl:choose>

              <ColumnU><xsl:value-of select="N8"/></ColumnU>
              <ColumnV><xsl:value-of select="N9"/></ColumnV>
              <ColumnW><xsl:value-of select="N10"/></ColumnW>
              <ColumnX><xsl:value-of select="N11"/></ColumnX>

              <xsl:choose>
                <xsl:when test="not(P6 = 'A')">
                  <ColumnY><xsl:value-of select="P6" /></ColumnY>
                </xsl:when>
                <xsl:otherwise>
                  <ColumnY/>
                </xsl:otherwise>
              </xsl:choose>
 
              <xsl:choose>
                <xsl:when test="$WSFreqChar = '0'">
                  <ColumnZ/>
                  <ColumnAA/>
                  <xsl:choose>
                    <xsl:when test="SECONDS_TOTAL = '0.000'">
                      <ColumnAB><xsl:value-of select="concat($WSLPerinLoc, ',', string-length($WSPCd)-1)" /></ColumnAB>
                    </xsl:when>
                    <xsl:when test="$WSLPerinLoc > 0">
                      <ColumnAB><xsl:value-of select="concat($WSLPerinLoc, ',', string-length($WSPCd)-1)" /></ColumnAB>
                    </xsl:when>
                    <xsl:when test="matches($WSPCd,'ABGABPA')">
                      <ColumnAB><xsl:value-of select="concat($WSLPerinLoc, ',', string-length($WSPCd)-1)" /></ColumnAB>
                    </xsl:when>
                    <xsl:otherwise>
                      <ColumnAB/>
                    </xsl:otherwise>
                  </xsl:choose>
                </xsl:when>
                <xsl:when test="$WSLPerinLoc > 0">
                  <ColumnZ><xsl:value-of select="$WSLPerinLoc" /></ColumnZ>
                  <ColumnAA><xsl:value-of select="($WSLPerinLoc + $WSRPerinLoc + 1)" /></ColumnAA>
                  <ColumnAB/>
                </xsl:when>
                <xsl:otherwise>
                  <ColumnZ/>
                  <ColumnAA/>
                  <ColumnAB/>
                </xsl:otherwise>
              </xsl:choose>
          
              <xsl:choose>
                <xsl:when test="SECONDS_TOTAL = '0.000'">
                  <ColumnAC><xsl:value-of select="'1'"/></ColumnAC>
                  <ColumnAD><xsl:value-of select="'1'"/></ColumnAD>
                </xsl:when>
                <xsl:when test="$WSLPerinLoc > 0">
                  <ColumnAC><xsl:value-of select="'1'"/></ColumnAC>
                  <ColumnAD><xsl:value-of select="'1'"/></ColumnAD>
                </xsl:when>
                <xsl:when test="matches($WSPCd,'ABGABPA')">
                  <ColumnAC><xsl:value-of select="FREQUENCY_CHAR"/></ColumnAC>
                  <ColumnAD><xsl:value-of select="'1'"/></ColumnAD>
                </xsl:when>
                <xsl:when test="matches($WSPCd,'ABGABPA')">
                  <ColumnAC><xsl:value-of select="FREQUENCY_CHAR"/></ColumnAC>
                  <ColumnAD><xsl:value-of select="'1'"/></ColumnAD>
                </xsl:when>
                <xsl:when test="matches($WSPCd,'ABGMXIA')">
                  <ColumnAC><xsl:value-of select="FREQUENCY_CHAR"/></ColumnAC>
                  <ColumnAD><xsl:value-of select="'1'"/></ColumnAD>
                </xsl:when>
                <xsl:when test="matches($WSPCd,'ABGABP[FLCSMRT]')">
                  <ColumnAC><xsl:value-of select="FREQUENCY_CHAR"/></ColumnAC>
                  <ColumnAD><xsl:value-of select="'1'"/></ColumnAD>
                </xsl:when>
                <xsl:when test="matches($WSPCd,'ABGABPA[FLCSMRT]')">
                  <ColumnAC><xsl:value-of select="FREQUENCY_CHAR"/></ColumnAC>
                  <ColumnAD><xsl:value-of select="'1'"/></ColumnAD>
                </xsl:when>
                <xsl:when test="matches($WSPCd,'ATKFVLVPTA')">
                  <ColumnAC><xsl:value-of select="FREQUENCY_CHAR"/></ColumnAC>
                  <ColumnAD><xsl:value-of select="'1'"/></ColumnAD>
                </xsl:when>
                <xsl:when test="matches($WSPCd,'ABGABP[FLCSMRT]')">
                  <ColumnAC><xsl:value-of select="FREQUENCY_CHAR"/></ColumnAC>
                  <ColumnAD><xsl:value-of select="'1'"/></ColumnAD>
                </xsl:when>
                <xsl:otherwise>
                  <ColumnAC/>
                  <ColumnAD/>
                </xsl:otherwise>
              </xsl:choose>
              <ColumnAE><xsl:value-of select="SECONDS_TOTAL"/></ColumnAE>

              <xsl:variable name="WSTotTime" select="$WSTotSec div $WSDivPct"/>
              <xsl:variable name="WS11" select="$WSTotTime"/>
              <xsl:variable name="WSFractionSec" select="substring(string($WSTotTime), 5, 3)"/>
              <xsl:choose>
                <xsl:when test="SECONDS_TOTAL = '0.000'">
                  <ColumnAF><xsl:value-of select="format-number(SECONDS_TOTAL, '###')"/></ColumnAF>
                </xsl:when>
                <xsl:when test="$WSFractionSec = '000'">
                  <ColumnAF><xsl:value-of select="format-number($WSTotTime, '###.##')"/></ColumnAF>
                </xsl:when>
                <xsl:when test="$WSTotTime >= 100">
                  <ColumnAF><xsl:value-of select="format-number($WSTotTime, '###.############')"/></ColumnAF>
                </xsl:when>
                <xsl:when test="$WSTotTime >= 10">
                  <ColumnAF><xsl:value-of select="format-number($WSTotTime, '##.#############')"/></ColumnAF>
                </xsl:when>
                <xsl:when test="$WSTotTime >= 1">
                  <ColumnAF><xsl:value-of select="format-number($WSTotTime, '#.##############')"/></ColumnAF>
                </xsl:when>
                <xsl:otherwise>
                  <ColumnAF><xsl:value-of select="format-number($WSTotTime, '#.###############')"/></ColumnAF>
                </xsl:otherwise>
              </xsl:choose>

             <ColumnAG><xsl:value-of select="NET_LOSS_CODE"/></ColumnAG>

              <ColumnAH>
                <xsl:choose>
                  <xsl:when test="matches($WSPCd,'ABGABPA')">
                    <xsl:value-of select="'GEN_MOVE'"/>
                  </xsl:when>
                  <xsl:when test="matches($WSPCd,'ABGMXIA')">
                    <xsl:value-of select="'CTRL_MOVE'"/>
                  </xsl:when>
                  <xsl:when test="matches($WSPCd,'ABGABP[FLCSMRT]')">
                    <xsl:value-of select="'TOOL_USAGE'"/>
                  </xsl:when>
                  <xsl:when test="matches($WSPCd,'ABGABPA[FLCSMRT]')">
                    <xsl:value-of select="'TOOL_USAGE_A'"/>
                  </xsl:when>
                  <xsl:when test="matches($WSPCd,'ATKFVLVPTA')">
                    <xsl:value-of select="'MANUAL_CRANE'"/>
                  </xsl:when>
                  <xsl:when test="matches($WSPCd,'ABGABP[FLCSMRT]')">
                    <xsl:value-of select="'GEN_MOVE'"/>
                  </xsl:when>
                  <xsl:otherwise>
                    <xsl:value-of select="'SPECIAL_OP'"/>
                  </xsl:otherwise>
                </xsl:choose>
              </ColumnAH>

              <xsl:choose>
                <xsl:when test="MOST_SEQUENCE = ''">
                  <ColumnAI/>
                </xsl:when>
                <xsl:when test="$WSLPerinLoc > 0">
                  <xsl:variable name="WS05" select="substring($WS02,1,($WSLPerinLoc * 2))"/>
                  <xsl:variable name="WS06" select="concat(substring($WS02,($WSLPerinLoc * 2)+1,2),substring-after($WS02,'Y'))"/>
                  <xsl:variable name="WS07" select="string-length(substring-before($WS06,'Y'))"/>
                  <xsl:choose>
                    <xsl:when test="$WS07 > 0">
                      <xsl:variable name="WS08" select="concat($WS05, '(', translate($WS06,'Y',')'))"/>
                        <ColumnAI><xsl:value-of select="$WS08"/></ColumnAI>
                    </xsl:when>
                    <xsl:otherwise>
                    <xsl:variable name="WS08" select="concat($WS05, '(', $WS06, ')')"/>
                      <ColumnAI><xsl:value-of select="$WS08"/></ColumnAI>
                    </xsl:otherwise>
                  </xsl:choose>
                </xsl:when>
                <xsl:when test="$WSFreqChar = '0'">
                  <ColumnAI><xsl:value-of select="concat(&apos;&lt;&apos;,$WSCdSummary,&apos;&gt;&apos;)"/></ColumnAI>
                </xsl:when>
                <xsl:when test="not($WSFreqChar = '1')">
                  <ColumnAI><xsl:value-of select="concat(FREQUENCY_CHAR,&apos;[&apos;,$WSCdSummary,&apos;]&apos;)"/></ColumnAI>
                </xsl:when>
                <xsl:otherwise>
                  <ColumnAI><xsl:value-of select="$WSCdSummary"/></ColumnAI>
                </xsl:otherwise>
              </xsl:choose>

              <ColumnAJ><xsl:value-of select="INTERNAL_TO_STEP"/></ColumnAJ>

              <xsl:choose>
                <xsl:when test="MOST_SEQ_NO = '1'">
                  <ColumnAK><xsl:value-of select="$WSQualityPoint5"/></ColumnAK>
                </xsl:when>
                <xsl:otherwise>
                  <ColumnAK/>
                </xsl:otherwise>
              </xsl:choose>

              <ColumnAL>TRUE</ColumnAL>
            </Row>
          </xsl:if>
        </xsl:if>
			</xsl:for-each>
		</Document>
  </xsl:template>

</xsl:stylesheet><!-- Stylus Studio meta-information - (c) 2004-2007. Progress Software Corporation. All rights reserved.

<metaInformation>
  <scenarios>
    <scenario default="yes" name="pdda2mse" userelativepaths="yes" externalpreview="no" url="converter:CSV:first=yes:quotes=&quot;:double=yes:root=PDDA:row=Row?InDir\ExtractedProcessStructure.csv" htmlbaseurl=""
              outputurl="converter:TAB:encoding=utf-8:quotes=:collapse=no:root=Document:row=Row?OutDir\InitialProcessStructure.txt" processortype="saxon8" useresolver="yes" profilemode="0" profiledepth="" profilelength="" urlprofilexml="" commandline=""
              additionalpath="" additionalclasspath="" postprocessortype="none" postprocesscommandline="" postprocessadditionalpath="" postprocessgeneratedext="" validateoutput="no" validator="internal" customvalidator=""/>
  </scenarios>
  <MapperMetaTag>
    <MapperInfo srcSchemaPathIsRelative="yes" srcSchemaInterpretAsXML="no" destSchemaPath="converter:TAB:root=TcMSE:row=Row?OutDir\InitialProcessStructure.txt" destSchemaRoot="TcMSE" destSchemaPathIsRelative="yes" destSchemaInterpretAsXML="no">
      <SourceSchema srcSchemaPath="converter:CSV:first=yes:quotes=|:root=PDDA:row=Row?NGPAFileIn.csv" srcSchemaRoot="PDDA" AssociatedInstance="" loaderFunction="document" loaderFunctionUsesURI="no"/>
    </MapperInfo>
    <MapperBlockPosition>
      <template match="/"></template>
    </MapperBlockPosition>
    <TemplateContext></TemplateContext>
    <MapperFilter side="source"></MapperFilter>
  </MapperMetaTag>
</metaInformation>
-->