<!--                                                                  -->
<!--  Copyright (C) 2006 RoyaltyShare, Inc.   All Rights Reserved     -->
<!--                                                                  -->

<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0" xmlns:dyn="http://exslt.org/dynamic" extension-element-prefixes="dyn">

    <xsl:output method="html" indent="no" doctype-system="" encoding="utf-8" />

    <xsl:include href="/app/tools/rps/templates/global.xsl" />
    <xsl:include href="shared.xsl" />

    <xsl:variable name="allContracts" select="/Root/Statement/ArtistStatement/ArtistStatementContractList/ArtistStatementContract" />

    <xsl:variable name="allAlbums" select="/Root/Statement/ArtistStatement/ArtistStatementAlbumList/ArtistStatementAlbum" />

    <!--
    If you add/remove columns from the income lines, you'll have to adjust artistColumns
    in order to get the summary lines to line up properly.
    -->
    <xsl:variable name="artistColumns">21</xsl:variable>

    <xsl:variable name="showAlbumsTables">
        <xsl:choose>
            <xsl:when test="$allAlbums or Statement/ArtistStatement/ArtistStatementLicenseIncomeItemList/LicenseIncomeItem">
                <xsl:text>true</xsl:text>
            </xsl:when>
            <xsl:otherwise>
                <xsl:text>false</xsl:text>
            </xsl:otherwise>
        </xsl:choose>
    </xsl:variable>


    <xsl:template name="pickLayout">
        <div class="StatementsDocuments">

            <section class="MainBaseSection" id="artistStatement">

                <div class="InformationCols">
                    <div class="InformationCols-item">
                        <a name="top" />
                        <h2><xsl:value-of select="Statement/ArtistRoyaltyRun/Label" /></h2>
                        <xsl:call-template name="artistSummary" />
                    </div>
                    <xsl:if test="Statement/ArtistStatement/ArtistStatementAlbumList/ArtistStatementAlbum/IncomeItemList/IncomeItem">
                        <div class="InformationCols-item">
                            <xsl:call-template name="statementLegend" />
                        </div>
                    </xsl:if>
                </div>
            </section>

            <section class="MainBaseSection">
                <xsl:call-template name="transactionTable">
                    <xsl:with-param name="statement" select="Statement/ArtistStatement" />
                    <xsl:with-param name="transactions" select="Statement/ArtistStatement/ArtistStatementTransactionList/ArtistStatementTransaction" />
                </xsl:call-template>
                <xsl:if test="$showAlbumsTables != 'true'">
                    <xsl:call-template name="buttons" />
                </xsl:if>
            </section>

            <xsl:if test="$showAlbumsTables = 'true'">
                <xsl:call-template name="albumSummary" />
                <section class="MainBaseSection">
                    <xsl:for-each select="$allAlbums">
                        <div class="StatementsDocuments-details-section">
                            <xsl:call-template name="albumDetails" />
                        </div>
                    </xsl:for-each>

                    <xsl:if test="Statement/ArtistStatement/ArtistStatementLicenseIncomeItemList/LicenseIncomeItem">
                        <div class="StatementsDocuments-details-section">
                            <xsl:call-template name="contractLicenseIncomeSection" />
                        </div>
                    </xsl:if>
                    <xsl:call-template name="buttons" />
                </section>
            </xsl:if>

        </div>
    </xsl:template>


    <xsl:template name="statementLegend">
        <div>
            <h2>Source Abbreviations</h2>
            <div class="ValuePair ValuePair-line-view">
                <xsl:for-each select="Statement/IncomeSourceList/IncomeSource">
                    <xsl:sort select="Name" />
                    <xsl:variable name="sourceID" select="IncomeSourceID" />
                    <xsl:if test="/Root/Statement/ArtistStatement/ArtistStatementIncomeSourceList/IncomeSource = $sourceID">
                        <div class="ValuePair-item">
                            <span class="ValuePair-label"><xsl:value-of select="Name" /></span>
                            <div class="ValuePair-value">
                                <xsl:choose>
                                    <xsl:when test="Name = 'DA'">Digital Album Permanent Download</xsl:when>
                                    <xsl:when test="Name = 'DA-P'">Premium Digital Album Download</xsl:when>
                                    <xsl:when test="Name = 'DA-U'">Digital Album Download Upgrade</xsl:when>
                                    <xsl:when test="Name = 'DT'">Digital Track Permanent Download</xsl:when>
                                    <xsl:when test="Name = 'DT-P'">Premium Digital Track Download</xsl:when>
                                    <xsl:when test="Name = 'DT-U'">Digital Track Download Upgrade</xsl:when>
                                    <xsl:when test="Name = 'DTETH'">Digital Tethered Download</xsl:when>
                                    <xsl:when test="Name = 'VPD'">Variable Priced Download</xsl:when>
                                    <xsl:otherwise>
                                        <xsl:value-of select="Description" />
                                    </xsl:otherwise>
                                </xsl:choose>
                            </div>
                        </div>
                    </xsl:if>
                </xsl:for-each>
            </div>
        </div>
    </xsl:template>

    <xsl:template name="artistSummary">
        <xsl:variable name="showDownloadLinks">
            <xsl:choose>
                <xsl:when test="Statement/ArtistRoyaltyRun/CanDownload = 1 or Statement/ArtistRoyaltyRun/CanDownloadExcel = 1">
                    <xsl:text>true</xsl:text>
                </xsl:when>
                <xsl:otherwise>
                    <xsl:text>false</xsl:text>
                </xsl:otherwise>
            </xsl:choose>
        </xsl:variable>
        <div id="statementSummary">
            <xsl:call-template name="payeeInfo">
                <xsl:with-param name="payee" select="Statement/ArtistStatement/ArtistPayee" />
            </xsl:call-template>

            <xsl:if test="$showDownloadLinks = 'true'">
                <ul class="ControlsList StatementsDocuments-download">
                    <xsl:if test="Statement/ArtistRoyaltyRun/CanDownload = 1">
                        <li class="ControlsList-item">
                            <xsl:call-template name="uiDownloadLink">
                                <xsl:with-param name="text" select="'Artist/Producer View PDF'" />
                                <xsl:with-param name="title" select="'Download PDF'" />
                                <xsl:with-param name="url">
                                    <xsl:text>?c=pdf_artist&amp;ArtistStatementID=</xsl:text>
                                    <xsl:value-of select="Statement/ArtistStatement/ArtistRoyaltyStatementID" />
                                </xsl:with-param>
                            </xsl:call-template>
                        </li>
                    </xsl:if>
                    <xsl:if test="Statement/ArtistRoyaltyRun/CanDownloadExcel = 1">
                        <li class="ControlsList-item">

                            <xsl:call-template name="uiDownloadLink">
                                <xsl:with-param name="text" select="'Artist/Producer View EXCEL'" />
                                <xsl:with-param name="title" select="'Download Download Excel'" />
                                <xsl:with-param name="url">
                                    <xsl:text>?c=excel_artist&amp;ArtistStatementID=</xsl:text>
                                    <xsl:value-of select="Statement/ArtistStatement/ArtistRoyaltyStatementID" />
                                </xsl:with-param>
                            </xsl:call-template>

                        </li>
                    </xsl:if>
                </ul>
            </xsl:if>
        </div>
    </xsl:template>


    <xsl:template name="albumSummary">
        <div class="MainBaseSection" id="albumSummary">
            <div class="Table-wrapper Table-wrapper-srollleft">
                <table class="Table">
                    <thead>
                        <tr class="Table-row Table-row-header">
                            <th class="Table-col"></th>
                            <th class="Table-col">Type</th>
                            <th class="Table-col">Album</th>
                            <th class="Table-col Table-col-amount">Sales</th>
                            <th class="Table-col Table-col-amount">License Income</th>
                            <th class="Table-col Table-col-amount">Expenses</th>
                            <th class="Table-col Table-col-amount">Previous Balance</th>
                            <th class="Table-col Table-col-amount">Total</th>
                        </tr>
                    </thead>
                    <tbody>
                        <xsl:if test="//IsCrossCollateralized = 1 or Statement/ArtistStatement/ArtistStatementLicenseIncomeItemList/LicenseIncomeItem">
                            <xsl:for-each select="$allAlbums[IsCrossCollateralized = 1]">
                                <xsl:call-template name="artistAlbumSummaryRow" />
                            </xsl:for-each>
                            <xsl:if test="Statement/ArtistStatement/ArtistStatementLicenseIncomeItemList/LicenseIncomeItem or translate(Statement/ArtistStatement/ContractLevelLicenseIncomeSubtotal, translate(Statement/ArtistStatement/ContractLevelLicenseIncomeSubtotal, '0123456789', ''), '') != 0 or translate(Statement/ArtistStatement/ContractLevelLicenseIncomePreviousBalance, translate(Statement/ArtistStatement/ContractLevelLicenseIncomePreviousBalance, '0123456789', ''), '') != 0">
                                <xsl:call-template name="licenseIncomeSummaryRow">
                                    <xsl:with-param name="crossedAlbumCount" select="count($allAlbums[IsCrossCollateralized = 1])" />
                                </xsl:call-template>
                            </xsl:if>
                            <xsl:call-template name="crossCollateralizedTotal" />
                        </xsl:if>
                        <xsl:if test="//IsCrossCollateralized = 0">
                            <xsl:for-each select="$allAlbums[IsCrossCollateralized = 0]">
                                <xsl:call-template name="artistAlbumSummaryRow" />
                            </xsl:for-each>
                            <tr class="Table-row Table-row-data">
                                <td class="Table-col statementLabel total">Total:</td>
                                <td colspan="7" class="Table-col Table-col-total Table-col-amount">
                                    <xsl:value-of select="Statement/ArtistStatement/Total" />
                                </td>
                            </tr>
                        </xsl:if>
                    </tbody>
                </table>
            </div>
        </div>
    </xsl:template>


    <xsl:template name="crossCollateralizedTotal">
        <tr class="Table-row Table-row-data Table-row-total">
            <td class="Table-col"></td>
            <td class="Table-col Table-col-total">Total:</td>
            <td class="Table-col Table-col-total"></td>
            <td class="Table-col Table-col-amount Table-col-total">
                <xsl:value-of select="Statement/ArtistStatement/CrossCollateralizedIncomeSubTotal" />
            </td>
            <td class="Table-col Table-col-amount Table-col-total">
                <xsl:value-of select="Statement/ArtistStatement/LicenseIncomeSubtotal" />
            </td>
            <td class="Table-col Table-col-amount Table-col-total">
                <xsl:value-of select="Statement/ArtistStatement/CrossCollateralizedExpenseSubTotal" />
            </td>
            <td class="Table-col Table-col-amount Table-col-total">
                <xsl:value-of select="Statement/ArtistStatement/CrossCollateralizedPreviousBalance" />
            </td>
            <td class="Table-col Table-col-amount Table-col-total">
                <xsl:value-of select="Statement/ArtistStatement/CrossCollateralizedSubTotal" />
            </td>
        </tr>
    </xsl:template>


    <xsl:template name="artistAlbumSummaryRow">
        <tr class="Table-row Table-row-data">
            <td class="Table-col statementLabel">
                <xsl:if test="position() = 1">
                    <xsl:if test="IsCrossCollateralized = 1">Crossed Totals</xsl:if>
                    <xsl:if test="IsCrossCollateralized = 0">Uncrossed Totals</xsl:if>
                </xsl:if>
            </td>
            <td class="Table-col">
                Product Sales
            </td>
            <td class="Table-col">
                <a href="#{Album/AlbumID}">
                    <xsl:value-of select="Album/Title" />
                </a>
            </td>
            <td class="Table-col Table-col-amount">
                <xsl:value-of select="TotalIncome" />
            </td>
            <td class="Table-col Table-col-amount">
                <xsl:value-of select="LicenseIncomeSubtotal" />
            </td>
            <td class="Table-col Table-col-amount">
                <xsl:value-of select="TotalExpenses" />
            </td>
            <td class="Table-col Table-col-amount">
                <xsl:value-of select="PreviousBalance" />
            </td>
            <td class="Table-col Table-col-amount">
                <xsl:value-of select="Total" />
            </td>
        </tr>
    </xsl:template>


    <xsl:template name="licenseIncomeSummaryRow">
        <xsl:param name="crossedAlbumCount" />
        <tr class="Table-row Table-row-data">
            <td class="Table-col statementLabel">
                <xsl:if test="$crossedAlbumCount = 0">
                    Crossed Totals
                </xsl:if>
            </td>
            <td class="Table-col">
                Contract License Income
            </td>
            <td class="Table-col"></td>
            <td class="Table-col"></td>
            <td class="Table-col Table-col-amount">
                <xsl:value-of select="Statement/ArtistStatement/ContractLevelLicenseIncomeSubtotal" />
            </td>
            <td class="Table-col Table-col-amount">
            </td>
            <td class="Table-col Table-col-amount">
                <xsl:value-of select="Statement/ArtistStatement/ContractLevelLicenseIncomePreviousBalance" />
            </td>
            <td class="Table-col Table-col-amount">
                <xsl:value-of select="Statement/ArtistStatement/ContractLevelLicenseIncomeTotal" />
            </td>
        </tr>
    </xsl:template>


    <xsl:template name="payeeInfo">
        <xsl:param name="payee" />
        <a href="/rps/artist_payee?ArtistPayeeID={$payee/ArtistPayeeID}&amp;c=show">
            <xsl:value-of select="$payee/Name" />
        </a>
        <xsl:if test="normalize-space($payee/ClientAccountID)">
            <p>Client #: <xsl:value-of select="$payee/ClientAccountID" /></p>
        </xsl:if>
        <xsl:if test="normalize-space($payee/StreetAddress)">
            <p><xsl:value-of select="$payee/StreetAddress" /></p>
        </xsl:if>
        <xsl:if test="normalize-space($payee/StreetAddress2)">
            <p><xsl:value-of select="$payee/StreetAddress2" /></p>
        </xsl:if>
        <xsl:if test="normalize-space($payee/StreetAddress3)">
            <p><xsl:value-of select="$payee/StreetAddress3" /></p>
        </xsl:if>
        <xsl:if test="normalize-space($payee/City) or normalize-space($payee/StateProvince)">
            <p><xsl:if test="normalize-space($payee/City)"><xsl:value-of select="$payee/City" /><xsl:if test="normalize-space($payee/StateProvince)">, </xsl:if></xsl:if><xsl:value-of select="$payee/StateProvince" />&#160;<xsl:value-of select="$payee/PostalCode" /></p>
        </xsl:if>
        <xsl:if test="normalize-space($payee/CountryCode)">
            <p><xsl:value-of select="$payee/CountryCode" /></p>
        </xsl:if>
        <xsl:if test="normalize-space($payee/ArtistName)">
            <p>Artist Name: <xsl:value-of select="$payee/ArtistName" /></p>
        </xsl:if>
    </xsl:template>


    <xsl:template name="albumDetails">

        <div class="Table-controls Table-controls-top">
            <div class="Table-controls-item">
                <a class="StatementsDocuments-album-info-link" name="{Album/AlbumID}" href="/rps/catalog?AlbumID={Album/AlbumID}&amp;c=show">
                    <xsl:value-of select="Album/Title" /> (<xsl:value-of select="Album/CatalogNumber" />)
                </a>

                <a class="StatementsDocuments-album-info-link" href="/rps/artist_contract?ArtistContractID={ArtistContractID}&amp;c=show">
                    <xsl:value-of select="ContractName" />
                </a>
            </div>
            <div class="Table-controls-item Table-controls-item-additive">
                <xsl:call-template name="backToTop" />
            </div>
        </div>

        <xsl:if test="IsCrossCollaterallized = 1">Cross Collaterallized</xsl:if>

        <xsl:variable name="showUnitRoyalties">
            <xsl:for-each select="IncomeItemList/IncomeItem">
                <xsl:if test="ContractRateTypeID != 5 and ContractRateTypeID != 9">1</xsl:if>
            </xsl:for-each>
        </xsl:variable>

        <xsl:if test="$showUnitRoyalties > 0">
            <xsl:call-template name="unitRoyaltiesSection" />
        </xsl:if>

        <xsl:variable name="showNetRoyalties">
            <xsl:for-each select="IncomeItemList/IncomeItem">
                <xsl:if test="ContractRateTypeID = 5">1</xsl:if>
            </xsl:for-each>
        </xsl:variable>

        <xsl:if test="$showNetRoyalties > 0">
            <xsl:call-template name="netRoyaltiesSection" />
        </xsl:if>

        <xsl:variable name="showNonPayableRoyalties">
            <xsl:for-each select="IncomeItemList/IncomeItem">
                <xsl:if test="ContractRateTypeID = 9">1</xsl:if>
            </xsl:for-each>
        </xsl:variable>

        <xsl:if test="$showNonPayableRoyalties > 0">
            <xsl:call-template name="nonPayableRoyaltiesSection" />
        </xsl:if>

        <xsl:if test="LicenseIncomeItemList/LicenseIncomeItem">
            <xsl:call-template name="licenseIncomeSection" />
        </xsl:if>

        <xsl:variable name="showNetExpenses">
            <xsl:for-each select="ExpenseItemList/ExpenseItem">
                <xsl:if test="UsesDefaultNetRate = 1">1</xsl:if>
            </xsl:for-each>
        </xsl:variable>

        <xsl:if test="$showNetExpenses > 0">
            <xsl:call-template name="netExpensesSection" />
        </xsl:if>

        <xsl:variable name="showRecoupExpenses">
            <xsl:for-each select="ExpenseItemList/ExpenseItem">
                <xsl:if test="UsesDefaultNetRate = 0">1</xsl:if>
            </xsl:for-each>
        </xsl:variable>

        <xsl:if test="$showRecoupExpenses > 0">
            <xsl:call-template name="recoupExpensesSection" />
        </xsl:if>
    </xsl:template>


    <xsl:template name="unitRoyaltiesSection">
        <h3>Unit Royalties</h3>
        <div class="Table-wrapper Table-wrapper-srollleft">
            <table class="Table">
                <thead>
                    <xsl:call-template name="unitRoyaltiesHeader" />
                </thead>
                <tbody>
                    <xsl:for-each select="IncomeItemList/IncomeItem[ContractRateTypeID != 5 and ContractRateTypeID != 9]">
                        <xsl:call-template name="incomeItemRow" />
                    </xsl:for-each>
                    <xsl:call-template name="unitRevenueTotalRow" />
                    <tr class="Table-row Table-row-data">
                        <td colspan="{$artistColumns}" class="Table-col total"></td>
                    </tr>
                    <xsl:call-template name="albumTotalRow" />
                </tbody>
            </table>
        </div>
    </xsl:template>


    <xsl:template name="unitRoyaltiesHeader">
        <tr class="Table-row Table-row-header statementHeader">
            <th class="Table-col">Track Title</th>
            <th class="Table-col">Source</th>
            <th class="Table-col">Region</th>
            <th class="Table-col">Channel</th>
            <th class="Table-col">Price Tier</th>
            <th class="Table-col">Sales Price</th>
            <th class="Table-col">Rate Type</th>
            <th class="Table-col percent">Base Rate</th>
            <th class="Table-col Table-col-amount">Proration</th>
            <th class="Table-col percent">Prorated Rate</th>
            <th class="Table-col percent">Rate Reduction</th>
            <th class="Table-col percent">Packaging</th>
            <th class="Table-col Table-col-amount">Effective Rate</th>
            <th class="Table-col Table-col-amount">Gross Units</th>
            <th class="Table-col percent">% of Sales</th>
            <th class="Table-col percent">Free Goods</th>
            <th class="Table-col Table-col-amount">Reserves</th>
            <th class="Table-col Table-col-amount">Liquidations</th>
            <th class="Table-col Table-col-amount">Returns</th>
            <th class="Table-col Table-col-amount">Net Units</th>
            <th class="Table-col Table-col-amount">Total</th>
        </tr>
    </xsl:template>


    <xsl:template name="netRoyaltiesSection">
        <h3>Net Revenue Royalties</h3>
        <div class="Table-wrapper Table-wrapper-srollleft">
            <table class="Table">
                <thead>
                    <xsl:call-template name="netRoyaltiesHeader" />
                </thead>
                <tbody>
                    <xsl:for-each select="IncomeItemList/IncomeItem[ContractRateTypeID = 5]">
                        <xsl:call-template name="incomeItemRow" />
                    </xsl:for-each>
                    <xsl:call-template name="netRevenueTotalRow" />
                    <tr class="Table-row Table-row-data">
                        <td colspan="{$artistColumns}" class="Table-col Table-col-total"></td>
                    </tr>
                    <xsl:call-template name="albumTotalRow" />
                </tbody>
            </table>
        </div>
    </xsl:template>


    <xsl:template name="netRoyaltiesHeader">
        <tr class="Table-row Table-row-header">
            <th class="Table-col" colspan="3">
                Track Title
            </th>
            <th class="Table-col">Source</th>
            <th class="Table-col">Region</th>
            <th class="Table-col">Channel</th>
            <th class="Table-col">Rate Type</th>
            <th class="Table-col percent">Base Rate</th>
            <th class="Table-col Table-col-amount">Proration</th>
            <th class="Table-col percent">Prorated Rate</th>
            <th class="Table-col percent">Rate Reduction</th>
            <th class="Table-col percent">Packaging</th>
            <th class="Table-col percent">Effective Rate</th>
            <th class="Table-col Table-col-amount">Gross Sales</th>
            <th class="Table-col percent">% of Sales</th>
            <th class="Table-col percent">Free Goods</th>
            <th class="Table-col Table-col-amount">Reserves</th>
            <th class="Table-col Table-col-amount">Liquidations</th>
            <th class="Table-col Table-col-amount">Net Units</th>
            <th class="Table-col Table-col-amount">Net Sales</th>
            <th class="Table-col Table-col-amount">Total</th>
        </tr>
    </xsl:template>


    <xsl:template name="nonPayableRoyaltiesSection">
        <h3>hNon-Payable Royalties</h3>
        <div class="Table-wrapper Table-wrapper-srollleft">
            <table class="Table">
                <thead>
                    <xsl:call-template name="nonPayableRoyaltiesHeader" />
                </thead>
                <tbody>
                    <xsl:for-each select="IncomeItemList/IncomeItem[ContractRateTypeID = 9]">
                        <xsl:call-template name="nonPayableItemRow" />
                    </xsl:for-each>
                    <xsl:call-template name="nonPayableRevenueTotalRow" />
                    <tr class="Table-row Table-row-data">
                        <td colspan="{$artistColumns}" class="Table-col Table-col-total"></td>
                    </tr>
                    <xsl:call-template name="albumTotalRow" />
                </tbody>
            </table>
        </div>
    </xsl:template>


    <xsl:template name="nonPayableRoyaltiesHeader">
        <tr class="Table-row Table-row-header statementHeader">
            <th class="Table-col" colspan="3">
                Track Title
            </th>
            <th class="Table-col" colspan="2">Source</th>
            <th class="Table-col" colspan="2">Region</th>
            <th class="Table-col" colspan="2">Channel</th>
            <th class="Table-col" colspan="2">Rate Type</th>
            <th class="Table-col percent" colspan="2">Effective Rate</th>
            <th class="Table-col Table-col-amount" colspan="2">Gross Units</th>
            <th class="Table-col Table-col-amount" colspan="3">Gross Sales</th>
            <th class="Table-col Table-col-amount" colspan="3">Total</th>
        </tr>
    </xsl:template>


    <xsl:template name="nonPayableItemRow">
        <tr class="Table-row Table-row-data">
            <td class="Table-col" colspan="3">
                <a href="track?c=show&amp;TrackID={TrackID}">
                    <xsl:value-of select="TrackName" />
                </a>
            </td>
            <xsl:variable name="sourceID" select="IncomeSourceID" />
            <xsl:variable name="sourceName" select="/Root/Statement/IncomeSourceList/IncomeSource[IncomeSourceID = $sourceID]/Name" />
            <td class="Table-col" colspan="2">
                <xsl:value-of select="$sourceName" />
            </td>
            <td class="Table-col" colspan="2">
                <xsl:variable name="regionID" select="RegionID" />
                <xsl:variable name="regionName" select="/Root/Statement/RegionList/Region[RegionID = $regionID]/Name" />
                <xsl:choose>
                    <xsl:when test="$regionID = 0 and UsesDefaultNetRate = 1">All</xsl:when>
                    <xsl:when test="substring($regionName,21)">
                        <xsl:value-of select="substring($regionName,1,18)" />...
                    </xsl:when>
                    <xsl:otherwise>
                        <xsl:value-of select="$regionName" />
                    </xsl:otherwise>
                </xsl:choose>
            </td>
            <td class="Table-col" colspan="2">
                <xsl:variable name="channelID" select="ChannelID" />
                <xsl:value-of select="/Root/Statement/ChannelList/Channel[ChannelID = $channelID]/Name" />
            </td>
            <xsl:variable name="rateID" select="ContractRateTypeID" />
            <td class="Table-col" colspan="2">
                <xsl:value-of select="/Root/Statement/ContractRateTypeList/ContractRateType[ContractRateTypeID = $rateID]/Name" />
            </td>
            <td class="Table-col percent" colspan="2">
                0%
            </td>
            <td class="Table-col Table-col-amount" colspan="2">
                <xsl:value-of select="Sales" />
            </td>
            <td class="Table-col Table-col-amount" colspan="3">
                <xsl:value-of select="Revenue" />
            </td>
            <td class="Table-col Table-col-amount" colspan="3">
                <xsl:value-of select="Total" />
            </td>
        </tr>
    </xsl:template>


    <xsl:template name="incomeItemRow">
        <tr class="Table-row Table-row-data">
            <td class="Table-col">
                <xsl:if test="ContractRateTypeID = 5">
                    <xsl:attribute name="colspan">3</xsl:attribute>
                </xsl:if>
                <a href="track?c=show&amp;TrackID={TrackID}">
                    <xsl:value-of select="TrackName" />
                </a>
            </td>
            <xsl:variable name="sourceID" select="IncomeSourceID" />
            <xsl:variable name="sourceName" select="/Root/Statement/IncomeSourceList/IncomeSource[IncomeSourceID = $sourceID]/Name" />
            <td class="Table-col">
                <xsl:value-of select="$sourceName" />
            </td>
            <td class="Table-col">
                <xsl:variable name="regionID" select="RegionID" />
                <xsl:variable name="regionName" select="/Root/Statement/RegionList/Region[RegionID = $regionID]/Name" />
                <xsl:choose>
                    <xsl:when test="$regionID = 0 and UsesDefaultNetRate = 1">All</xsl:when>
                    <xsl:when test="substring($regionName,21)">
                        <xsl:value-of select="substring($regionName,1,18)" />...
                    </xsl:when>
                    <xsl:otherwise>
                        <xsl:value-of select="$regionName" />
                    </xsl:otherwise>
                </xsl:choose>
            </td>
            <td class="Table-col">
                <xsl:variable name="channelID" select="ChannelID" />
                <xsl:value-of select="/Root/Statement/ChannelList/Channel[ChannelID = $channelID]/Name" />
            </td>
            <xsl:variable name="rateID" select="ContractRateTypeID" />
            <xsl:if test="ContractRateTypeID != 5">
                <td class="Table-col">
                    <xsl:if test="/Root/Statement/IncomeSourceList/IncomeSource[IncomeSourceID = $sourceID]/Format = 1">
                        <xsl:variable name="priceID" select="PriceLevelID" />
                        <xsl:value-of select="/Root/Statement/PriceLevelList/PriceLevel[PriceLevelID = $priceID]/Name" />
                    </xsl:if>
                </td>
                <td class="Table-col">
                    <xsl:if test="/Root/Statement/ContractRateTypeList/ContractRateType[ContractRateTypeID = $rateID]/Name != 'Fixed'">
                        <xsl:value-of select="Price" />
                    </xsl:if>
                </td>
            </xsl:if>
            <td class="Table-col">
                <xsl:value-of select="/Root/Statement/ContractRateTypeList/ContractRateType[ContractRateTypeID = $rateID]/Name" />
            </td>

            <!-- FB113: Update Rate (now Base Rate) cell -->
            <td class="Table-col Table-col-amount">
                <xsl:choose>
                    <xsl:when test="/Root/Statement/ContractRateTypeList/ContractRateType[ContractRateTypeID = $rateID]/Fixed = 1">
                        <xsl:value-of select="BaseRate" />
                    </xsl:when>
                    <xsl:otherwise>
                        <xsl:attribute name="class">percent</xsl:attribute>
                        <xsl:value-of select="BaseRate" />%
                    </xsl:otherwise>
                </xsl:choose>
            </td>

            <!-- FB113: Add Proration cell (tracks only) -->
            <td class="Table-col">
                <xsl:choose>
                    <xsl:when test = "TrackID = '0'">
                        &#160;
                    </xsl:when>
                    <xsl:otherwise>
                <!--
                Until we get the proration baked into the contract reserves, any income
                items due to liquidations won't have any proration information.  Displaying
                a "1" gets confusing if the effective rate is less than the base rate, so
                just display a blank space for now. -ES
                -->
                <xsl:choose>
                    <!--xsl:when test="ProrateTrackCount = 0">1</xsl:when-->
                    <xsl:when test="ProrateTrackCount = 0"> </xsl:when>
                    <xsl:otherwise>
                        <xsl:value-of select="ProrateTrackCount" />
                    </xsl:otherwise>
                </xsl:choose>

                    </xsl:otherwise>
                </xsl:choose>
            </td>

            <!-- FB113: Add Prorated Rate cell (tracks only) -->
            <td class="Table-col Table-col-amount">
                <xsl:choose>
                    <xsl:when test = "TrackID = '0'">
                        &#160;
                    </xsl:when>
                    <xsl:otherwise>
                        <xsl:choose>
                            <xsl:when test="/Root/Statement/ContractRateTypeList/ContractRateType[ContractRateTypeID = $rateID]/Fixed = 1">
                                <xsl:value-of select="Rate" />
                            </xsl:when>
                            <xsl:otherwise>
                                <xsl:attribute name="class">percent</xsl:attribute>
                                <xsl:value-of select="Rate" />%
                            </xsl:otherwise>
                        </xsl:choose>
                    </xsl:otherwise>
                </xsl:choose>
            </td>

            <td class="Table-col">
                <xsl:value-of select="RateReduction" />%
            </td>
            <td class="Table-col">
                <xsl:value-of select="PackagingDeduction" />%
            </td>
            <td class="Table-col">
                <xsl:choose>
                    <xsl:when test="ContractRateTypeID = 5">
                        <xsl:value-of select="NetRate" />%
                    </xsl:when>
                    <xsl:otherwise>
                        <xsl:attribute name="class">amount</xsl:attribute>
                        <xsl:value-of select="NetRate" />
                    </xsl:otherwise>
                </xsl:choose>
            </td>
            <td class="Table-col Table-col-amount">
                <xsl:choose>
                    <xsl:when test="ContractRateTypeID = 5">
                        <xsl:value-of select="Revenue" />
                    </xsl:when>
                    <xsl:otherwise>
                        <xsl:value-of select="Sales" />
                    </xsl:otherwise>
                </xsl:choose>
            </td>
            <td class="Table-col">
                <xsl:value-of select="PercentageOfSales" />%
            </td>
            <td class="Table-col">
                <xsl:value-of select="FreeGoodsDeduction" />%
            </td>
            <td class="Table-col Table-col-amount">
                <xsl:choose>
                    <xsl:when test="ContractRateTypeID = 5">
                        <xsl:value-of select="RevenueReserved" />
                    </xsl:when>
                    <xsl:otherwise>
                        <xsl:value-of select="UnitsReserved" />
                    </xsl:otherwise>
                </xsl:choose>
            </td>
            <td class="Table-col Table-col-amount">
                <xsl:choose>
                    <xsl:when test="ContractRateTypeID = 5">
                        <xsl:value-of select="RevenueLiquidated" />
                    </xsl:when>
                    <xsl:otherwise>
                        <xsl:value-of select="UnitsLiquidated" />
                    </xsl:otherwise>
                </xsl:choose>
            </td>
            <xsl:if test="ContractRateTypeID != 5">
                <td class="Table-col Table-col-amount">
                    <xsl:value-of select="Returns" />
                </td>
            </xsl:if>
            <xsl:if test="ContractRateTypeID = 5">
                <td class="Table-col Table-col-amount">
                    <xsl:value-of select="NetUnits" />
                </td>
            </xsl:if>
            <td class="Table-col Table-col-amount">
                <xsl:choose>
                    <xsl:when test="ContractRateTypeID = 5">
                        <xsl:value-of select="NetRevenue" />
                    </xsl:when>
                    <xsl:otherwise>
                        <xsl:value-of select="NetUnits" />
                    </xsl:otherwise>
                </xsl:choose>
            </td>
            <td class="Table-col Table-col-amount">
                <xsl:value-of select="Total" />
            </td>
        </tr>
    </xsl:template>


    <xsl:template name="unitRevenueTotalRow">
        <xsl:call-template name="totalRow">
            <xsl:with-param name="title">Unit Level Income</xsl:with-param>
            <xsl:with-param name="total" select="UnitLevelIncome" />
        </xsl:call-template>
    </xsl:template>


    <xsl:template name="netRevenueTotalRow">
        <xsl:call-template name="totalRow">
            <xsl:with-param name="title">Net Revenue Total</xsl:with-param>
            <xsl:with-param name="total" select="NetRevenueIncome" />
        </xsl:call-template>
    </xsl:template>


    <xsl:template name="nonPayableRevenueTotalRow">
        <xsl:call-template name="totalRow">
            <xsl:with-param name="title">Non-Payable Royalties Total</xsl:with-param>
            <xsl:with-param name="total"><xsl:value-of select="/Root/Client/Locale/CurrencyFormat/Symbol" />0<xsl:value-of select="/Root/Client/Locale/NumericFormat/Decimal" />00</xsl:with-param>
        </xsl:call-template>
    </xsl:template>


    <xsl:template name="albumTotalRow">
        <tr class="Table-row Table-row-data">
            <td colspan="{$artistColumns - 5}" class="Table-col"></td>
            <td colspan="4" class="Table-col Table-col-amount"><strong>Album Previous Balance:</strong></td>
            <td class="Table-col Table-col-amount">
                <xsl:value-of select="PreviousBalance" />
            </td>
        </tr>
        <xsl:call-template name="totalRow">
            <xsl:with-param name="title">Album Total</xsl:with-param>
            <xsl:with-param name="total" select="Total" />
        </xsl:call-template>
    </xsl:template>


    <xsl:template name="netExpensesSection">
        <h3>Net Expenses</h3>
        <div class="Table-wrapper Table-wrapper-srollleft">
            <table class="Table">
                <thead>
                    <xsl:call-template name="expenseHeaderRow" />
                </thead>
                <tbody>
                    <xsl:for-each select="ExpenseItemList/ExpenseItem[UsesDefaultNetRate = 1]">
                        <xsl:call-template name="expenseItemRow" />
                    </xsl:for-each>
                    <xsl:call-template name="netExpensesTotalRow" />
                    <tr class="Table-row Table-row-data">
                        <td colspan="{$artistColumns}" class="Table-col"></td>
                    </tr>
                    <xsl:call-template name="albumTotalRow" />
                </tbody>
            </table>
        </div>
    </xsl:template>


    <xsl:template name="recoupExpensesSection">
        <h3>Recoupable Expenses</h3>
        <div class="Table-wrapper Table-wrapper-srollleft">
            <table class="Table">
                <thead>
                    <xsl:call-template name="expenseHeaderRow" />
                </thead>
                <tbody>
                    <xsl:for-each select="ExpenseItemList/ExpenseItem[UsesDefaultNetRate = 0]">
                        <xsl:call-template name="expenseItemRow" />
                    </xsl:for-each>
                    <xsl:call-template name="recoupExpensesTotalRow" />
                    <tr class="Table-row Table-row-data">
                        <td colspan="{$artistColumns}" class="Table-col"></td>
                    </tr>
                    <xsl:call-template name="albumTotalRow" />
                </tbody>
            </table>
        </div>
    </xsl:template>


    <xsl:template name="expenseHeaderRow">
        <tr class="Table-row Table-row-header">
            <th class="Table-col" colspan="{$artistColumns - 8}"></th>
            <th class="Table-col" colspan="3">Description</th>
            <th class="Table-col" colspan="2">Memo</th>
            <th class="Table-col Table-col-amount heading">Cost</th>
            <th class="Table-col">Rate</th>
            <th class="Table-col Table-col-amount heading">Total</th>
        </tr>
    </xsl:template>


    <xsl:template name="expenseItemRow">
        <tr class="Table-row Table-row-data">
            <td class="Table-col" colspan="{$artistColumns - 8}"></td>
            <td class="Table-col" colspan="3"><xsl:value-of select="ExpenseName" /></td>
            <td class="Table-col" colspan="2"><xsl:value-of select="Memo" /></td>
            <td class="Table-col Table-col-amount">
                <xsl:value-of select="Cost" />
            </td>
            <td class="Table-col">
                <xsl:value-of select="Rate" />%
            </td>
            <td class="Table-col Table-col-amount">
                <xsl:value-of select="Total" />
            </td>
        </tr>
    </xsl:template>


    <xsl:template name="netExpensesTotalRow">
        <xsl:call-template name="totalRow">
            <xsl:with-param name="title">Net Expenses Total</xsl:with-param>
            <xsl:with-param name="total" select="NetRevenueExpenses" />
        </xsl:call-template>
        <tr class="Table-row Table-row-data">
            <td class="Table-col" colspan="{$artistColumns - 5}"></td>
            <td class="Table-col" colspan="4"><strong>Net Rate:</strong></td>
            <td class="Table-col">
                <xsl:value-of select="DefaultNetRevenueRate" />%
            </td>
        </tr>
        <xsl:call-template name="totalRow">
            <xsl:with-param name="title">Net Expenses Adjusted Total</xsl:with-param>
            <xsl:with-param name="total" select="NetRevenueExpensesSubTotal" />
        </xsl:call-template>
    </xsl:template>


    <xsl:template name="recoupExpensesTotalRow">
        <xsl:call-template name="totalRow">
            <xsl:with-param name="title">Recoupable Expenses Total</xsl:with-param>
            <xsl:with-param name="total" select="RecoupableExpenses" />
        </xsl:call-template>
    </xsl:template>


    <xsl:template name="licenseIncomeSection">
        <h3>License Income Royalties</h3>
        <div class="Table-wrapper Table-wrapper-srollleft">
            <table class="Table">
                <thead>
                    <xsl:call-template name="licenseIncomeHeaderRow" />
                </thead>
                <tbody>
                    <xsl:for-each select="LicenseIncomeItemList/LicenseIncomeItem">
                        <xsl:call-template name="licenseIncomeItemRow" />
                    </xsl:for-each>
                    <xsl:call-template name="licenseIncomeTotalRow" />
                    <tr class="Table-row Table-row-data">
                        <td colspan="{$artistColumns}" class="Table-col"></td>
                    </tr>
                    <xsl:call-template name="albumTotalRow" />
                </tbody>
            </table>
        </div>
    </xsl:template>


    <xsl:template name="contractLicenseIncomeSection">
        <h3>Contract Level License Income Royalties</h3>
        <div class="Table-wrapper Table-wrapper-srollleft">
            <table class="Table">
                <thead>
                    <xsl:call-template name="licenseIncomeHeaderRow">
                        <xsl:with-param name="contractLevel" select="'1'" />
                    </xsl:call-template>
                </thead>
                <tbody>
                    <xsl:for-each select="Statement/ArtistStatement/ArtistStatementLicenseIncomeItemList/LicenseIncomeItem">
                        <xsl:call-template name="licenseIncomeItemRow">
                            <xsl:with-param name="contractLevel" select="'1'" />
                        </xsl:call-template>
                    </xsl:for-each>
                    <xsl:call-template name="contractLicenseIncomeTotalRow" />
                </tbody>
            </table>
        </div>
    </xsl:template>


    <xsl:template name="contractLicenseIncomeTotalRow">
        <xsl:call-template name="totalRow">
            <xsl:with-param name="title">License Income Total</xsl:with-param>
            <xsl:with-param name="total" select="Statement/ArtistStatement/ContractLevelLicenseIncomeSubtotal" />
        </xsl:call-template>
    </xsl:template>

    <xsl:template name="licenseIncomeHeaderRow">
        <xsl:param name="contractLevel" select="'0'" />
        <tr class="Table-row Table-row-header">
            <th class="Table-col" colspan="{$artistColumns - 14}">
                <xsl:choose>
                    <xsl:when test="$contractLevel = 1">Contract Title</xsl:when>
                    <xsl:otherwise>Track Title</xsl:otherwise>
                </xsl:choose>
            </th>
            <th class="Table-col" colspan="3">Income Type</th>
            <th class="Table-col" colspan="5">Memo</th>
            <th class="Table-col" colspan="2">Rate Type</th>
            <th class="Table-col">Base Rate</th>
            <th class="Table-col Table-col-amount">Units</th>
            <th class="Table-col Table-col-amount">Sales</th>
            <th class="Table-col Table-col-amount">Total</th>
        </tr>
    </xsl:template>

    <xsl:template name="licenseIncomeItemRow">
        <xsl:param name="contractLevel" select="'0'" />
        <tr class="Table-row Table-row-data">
            <td class="Table-col" colspan="{$artistColumns - 14}">
                <xsl:choose>
                    <xsl:when test="$contractLevel = 1">
                        <a href="/rps/artist_contract?c=show&amp;ArtistContractID={ArtistContractID}"><xsl:value-of select="ContractTitle" /></a>
                    </xsl:when>
                    <xsl:otherwise>
                        <a href="/rps/track?c=show&amp;TrackID={TrackID}"><xsl:value-of select="TrackName" /></a>
                    </xsl:otherwise>
                </xsl:choose>
            </td>
            <td class="Table-col" colspan="3">
                <xsl:variable name="typeID" select="LicenseIncomeTypeID" />
                <xsl:value-of select="/Root/Statement/LicenseIncomeTypeList/LicenseIncomeType[LicenseIncomeTypeID = $typeID]/Name" />
            </td>
            <td class="Table-col" colspan="5">
                <xsl:value-of select="Memo" />
            </td>
            <td class="Table-col" colspan="2">
                % Net Revenue
            </td>
            <td class="Table-col">
                <xsl:value-of select="Rate" />%
            </td>
            <td class="Table-col Table-col-amount">
                <xsl:value-of select="Units" />
            </td>
            <td class="Table-col Table-col-amount">
                <xsl:value-of select="Revenue" />
            </td>
            <td class="Table-col Table-col-amount">
                <xsl:value-of select="NetRevenue" />
            </td>
        </tr>
    </xsl:template>

    <xsl:template name="licenseIncomeTotalRow">
        <xsl:call-template name="totalRow">
            <xsl:with-param name="title">License Income Total</xsl:with-param>
            <xsl:with-param name="total" select="LicenseIncomeSubtotal" />
        </xsl:call-template>
    </xsl:template>

    <xsl:template name="totalRow">
        <xsl:param name="title" />
        <xsl:param name="total" />
        <tr class="Table-row Table-row-data">
            <td class="Table-col" colspan="{$artistColumns - 5}"></td>
            <td class="Table-col Table-col-amount" colspan="4"><strong><xsl:value-of select="$title" />:</strong></td>
            <td class="Table-col Table-col-amount total">
                <xsl:value-of select="$total" />
            </td>
        </tr>
    </xsl:template>

    <xsl:template name="submitButton">
    </xsl:template>

    <xsl:template name="cancelButton">
        <xsl:call-template name="uiButton">
            <xsl:with-param name="content" select="'Back to Statements'" />
            <xsl:with-param name="className" select="'Form-button'" />
            <xsl:with-param name="name" select="'Back'" />
            <xsl:with-param name="url">
                <xsl:text>artist_royalty?RoyaltyRunID=</xsl:text>
                <xsl:value-of select="Statement/ArtistRoyaltyRun/ArtistRoyaltyRunID" />
                <xsl:text>&amp;c=show&amp;PayorID=</xsl:text>
                <xsl:value-of select="Statement/ArtistStatement/PayorID" />
            </xsl:with-param>
        </xsl:call-template>
    </xsl:template>


</xsl:stylesheet>

