<?xml version="1.0" encoding="utf-8"?>
<InstanceReport xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
  <Version>2.0.0.10</Version>
  <hasSegments>false</hasSegments>
  <ReportName>12. WARRANTIES</ReportName>
  <ReportLongName>006110 - Disclosure - 12. WARRANTIES</ReportLongName>
  <DisplayLabelColumn>true</DisplayLabelColumn>
  <ShowElementNames>false</ShowElementNames>
  <RoundingOption />
  <HasEmbeddedReports>false</HasEmbeddedReports>
  <Columns>
    <Column>
      <LabelColumn>false</LabelColumn>
      <Id>1</Id>
      <Labels>
        <Label Id="1" Label="6 Months Ended" />
        <Label Id="2" Label="Apr. 30, 2010" />
      </Labels>
      <CurrencyCode>usd</CurrencyCode>
      <CurrencySymbol>$</CurrencySymbol>
      <FootnoteIndexer />
      <hasSegments>false</hasSegments>
      <hasScenarios>false</hasScenarios>
      <Segments />
      <Scenarios />
      <Units>
        <Unit>
          <UnitID>u000</UnitID>
          <UnitType>Standard</UnitType>
          <StandardMeasure>
            <MeasureSchema>http://www.xbrl.org/2003/iso4217</MeasureSchema>
            <MeasureValue>USD</MeasureValue>
            <MeasureNamespace>iso4217</MeasureNamespace>
          </StandardMeasure>
          <Scale>0</Scale>
        </Unit>
        <Unit>
          <UnitID>u001</UnitID>
          <UnitType>Standard</UnitType>
          <StandardMeasure>
            <MeasureSchema>http://www.xbrl.org/2003/instance</MeasureSchema>
            <MeasureValue>shares</MeasureValue>
            <MeasureNamespace>xbrli</MeasureNamespace>
          </StandardMeasure>
          <Scale>0</Scale>
        </Unit>
        <Unit>
          <UnitID>u002</UnitID>
          <UnitType>Divide</UnitType>
          <NumeratorMeasure>
            <MeasureSchema>http://www.xbrl.org/2003/iso4217</MeasureSchema>
            <MeasureValue>USD</MeasureValue>
            <MeasureNamespace>iso4217</MeasureNamespace>
          </NumeratorMeasure>
          <DenominatorMeasure>
            <MeasureSchema>http://www.xbrl.org/2003/instance</MeasureSchema>
            <MeasureValue>shares</MeasureValue>
            <MeasureNamespace>xbrli</MeasureNamespace>
          </DenominatorMeasure>
          <Scale>0</Scale>
        </Unit>
      </Units>
    </Column>
  </Columns>
  <Rows>
    <Row>
      <Id>2</Id>
      <Label>Notes To Financial Statements [Abstract]</Label>
      <Level>0</Level>
      <ElementName>a_NotesToFinancialStatementsAbstract</ElementName>
      <ElementPrefix>a</ElementPrefix>
      <IsBaseElement>false</IsBaseElement>
      <BalanceType>na</BalanceType>
      <PeriodType>duration</PeriodType>
      <ElementDataType>string</ElementDataType>
      <ShortDefinition>No definition available.</ShortDefinition>
      <IsReportTitle>false</IsReportTitle>
      <IsSegmentTitle>false</IsSegmentTitle>
      <IsSubReportEnd>false</IsSubReportEnd>
      <IsCalendarTitle>false</IsCalendarTitle>
      <IsTuple>false</IsTuple>
      <IsAbstractGroupTitle>true</IsAbstractGroupTitle>
      <IsEquityPrevioslyReportedAsRow>false</IsEquityPrevioslyReportedAsRow>
      <IsEquityAdjustmentRow>false</IsEquityAdjustmentRow>
      <IsBeginningBalance>false</IsBeginningBalance>
      <IsEndingBalance>false</IsEndingBalance>
      <IsReverseSign>false</IsReverseSign>
      <PreferredLabelRole />
      <IsEPS>false</IsEPS>
      <FootnoteIndexer />
      <Cells>
        <Cell>
          <Id>1</Id>
          <ShowCurrencySymbol>false</ShowCurrencySymbol>
          <IsNumeric>false</IsNumeric>
          <IsRatio>false</IsRatio>
          <DisplayZeroAsNone>false</DisplayZeroAsNone>
          <NumericAmount>0</NumericAmount>
          <RoundedNumericAmount>0</RoundedNumericAmount>
          <NonNumbericText />
          <NonNumericTextHeader />
          <FootnoteIndexer />
          <hasSegments>false</hasSegments>
          <hasScenarios>false</hasScenarios>
          <DisplayDateInUSFormat>false</DisplayDateInUSFormat>
        </Cell>
      </Cells>
      <OriginalInstanceReportColumns />
      <ElementDefenition>No definition available.</ElementDefenition>
      <IsTotalLabel>false</IsTotalLabel>
    </Row>
    <Row>
      <Id>3</Id>
      <Label>WARRANTIES</Label>
      <Level>1</Level>
      <ElementName>us-gaap_ProductWarrantyDisclosureTextBlock</ElementName>
      <ElementPrefix>us-gaap</ElementPrefix>
      <IsBaseElement>true</IsBaseElement>
      <BalanceType>na</BalanceType>
      <PeriodType>duration</PeriodType>
      <ElementDataType>string</ElementDataType>
      <ShortDefinition>No definition available.</ShortDefinition>
      <IsReportTitle>false</IsReportTitle>
      <IsSegmentTitle>false</IsSegmentTitle>
      <IsSubReportEnd>false</IsSubReportEnd>
      <IsCalendarTitle>false</IsCalendarTitle>
      <IsTuple>false</IsTuple>
      <IsAbstractGroupTitle>false</IsAbstractGroupTitle>
      <IsEquityPrevioslyReportedAsRow>false</IsEquityPrevioslyReportedAsRow>
      <IsEquityAdjustmentRow>false</IsEquityAdjustmentRow>
      <IsBeginningBalance>false</IsBeginningBalance>
      <IsEndingBalance>false</IsEndingBalance>
      <IsReverseSign>false</IsReverseSign>
      <PreferredLabelRole />
      <IsEPS>false</IsEPS>
      <FootnoteIndexer />
      <Cells>
        <Cell>
          <Id>1</Id>
          <ShowCurrencySymbol>false</ShowCurrencySymbol>
          <IsNumeric>false</IsNumeric>
          <IsRatio>false</IsRatio>
          <DisplayZeroAsNone>false</DisplayZeroAsNone>
          <NumericAmount>0</NumericAmount>
          <RoundedNumericAmount>0</RoundedNumericAmount>
          <NonNumbericText>&lt;div&gt;       &lt;div&gt;         &lt;div&gt;           &lt;table align="center" border="0" cellpadding="0" cellspacing="0" id="hangingindent_0" width="100%" style="FONT-SIZE: 10pt; FONT-FAMILY: Times New Roman"&gt; &lt;tr valign="top"&gt;               &lt;td style="WIDTH: 12.25pt"&gt;                 &lt;div&gt;&lt;font style="DISPLAY: inline; FONT-SIZE: 10pt; FONT-FAMILY: Times New Roman"&gt;&amp;#160;  &lt;/font&gt;&lt;/div&gt;               &lt;/td&gt;               &lt;td&gt;                 &lt;div align="left"&gt;&lt;font style="DISPLAY: inline; FONT-SIZE: 10pt; FONT-FAMILY: Times New Roman"&gt;12.  WARRANTIES&lt;/font&gt;&lt;/div&gt;               &lt;/td&gt;             &lt;/tr&gt;&lt;/table&gt;         &lt;/div&gt;         &lt;div style="DISPLAY: block; MARGIN-LEFT: 0pt; TEXT-INDENT: 0pt; MARGIN-RIGHT: 0pt" align="justify"&gt;&amp;#160;&lt;/div&gt;         &lt;div style="DISPLAY: block; MARGIN-LEFT: 0pt; TEXT-INDENT: 27pt; MARGIN-RIGHT: 0pt" align="left"&gt;&lt;font style="DISPLAY: inline; FONT-SIZE: 10pt; FONT-FAMILY: Times New Roman"&gt;We accrue  for standard warranty costs based on historical trends in warranty charges as a  percentage of net product shipments. The accrual is reviewed regularly and  periodically adjusted to reflect changes in warranty cost estimates. Estimated  warranty charges are recorded within cost of products at the time products are  sold. The standard warranty accrual balances are held in other accrued and other  long-term liabilities on our condensed consolidated balance sheet. Our warranty  terms typically extend for one year from the date of delivery.&lt;/font&gt;&lt;/div&gt;         &lt;div style="DISPLAY: block; MARGIN-LEFT: 0pt; TEXT-INDENT: 0pt; MARGIN-RIGHT: 0pt" align="justify"&gt;&amp;#160;&lt;/div&gt;         &lt;div style="DISPLAY: block; MARGIN-LEFT: 0pt; TEXT-INDENT: 27pt; MARGIN-RIGHT: 0pt" align="left"&gt;&lt;font style="DISPLAY: inline; FONT-SIZE: 10pt; FONT-FAMILY: Times New Roman"&gt;&amp;#160;A  summary of the standard warranty accrual activity is shown in the table  below:&lt;/font&gt;&lt;/div&gt;         &lt;div style="DISPLAY: block; MARGIN-LEFT: 0pt; TEXT-INDENT: 0pt; MARGIN-RIGHT: 0pt" align="justify"&gt;&amp;#160;&lt;/div&gt;         &lt;div align="left"&gt;           &lt;table cellpadding="0" cellspacing="0" width="100%" style="FONT-SIZE: 10pt; FONT-FAMILY: Times New Roman"&gt; &lt;tr&gt;               &lt;td valign="bottom" style="PADDING-BOTTOM: 2px"&gt;&lt;font style="DISPLAY: inline; FONT-SIZE: 10pt; FONT-FAMILY: times new roman"&gt;&amp;#160;  &lt;/font&gt;&lt;/td&gt;               &lt;td valign="bottom" style="PADDING-BOTTOM: 2px"&gt;&lt;font style="DISPLAY: inline; FONT-WEIGHT: bold; FONT-SIZE: 10pt; FONT-FAMILY: times new roman"&gt;&amp;#160;&lt;/font&gt;&lt;/td&gt;               &lt;td colspan="2" valign="bottom" style="BORDER-BOTTOM: black 2px solid"&gt;                 &lt;div style="DISPLAY: block; MARGIN-LEFT: 0pt; TEXT-INDENT: 0pt; MARGIN-RIGHT: 0pt" align="center"&gt;&lt;font style="DISPLAY: inline; FONT-WEIGHT: bold; FONT-SIZE: 10pt; FONT-FAMILY: times new roman"&gt;FY  2010&lt;/font&gt;&lt;/div&gt;               &lt;/td&gt;               &lt;td nowrap="nowrap" valign="bottom" style="PADDING-BOTTOM: 2px; TEXT-ALIGN: left"&gt;&lt;font style="DISPLAY: inline; FONT-WEIGHT: bold; FONT-SIZE: 10pt; FONT-FAMILY: times new roman"&gt;&amp;#160;&lt;/font&gt;&lt;/td&gt;               &lt;td valign="bottom" style="PADDING-BOTTOM: 2px"&gt;&lt;font style="DISPLAY: inline; FONT-WEIGHT: bold; FONT-SIZE: 10pt; FONT-FAMILY: times new roman"&gt;&amp;#160;&lt;/font&gt;&lt;/td&gt;               &lt;td colspan="2" valign="bottom" style="BORDER-BOTTOM: black 2px solid"&gt;                 &lt;div style="DISPLAY: block; MARGIN-LEFT: 0pt; TEXT-INDENT: 0pt; MARGIN-RIGHT: 0pt" align="center"&gt;&lt;font style="DISPLAY: inline; FONT-WEIGHT: bold; FONT-SIZE: 10pt; FONT-FAMILY: times new roman"&gt;FY  2009&lt;/font&gt;&lt;/div&gt;               &lt;/td&gt;               &lt;td nowrap="nowrap" valign="bottom" style="PADDING-BOTTOM: 2px; TEXT-ALIGN: left"&gt;&lt;font style="DISPLAY: inline; FONT-WEIGHT: bold; FONT-SIZE: 10pt; FONT-FAMILY: times new roman"&gt;&amp;#160;&lt;/font&gt;&lt;/td&gt;             &lt;/tr&gt;&lt;tr&gt;               &lt;td valign="bottom"&gt;&lt;font style="DISPLAY: inline; FONT-SIZE: 10pt; FONT-FAMILY: times new roman"&gt;&amp;#160;  &lt;/font&gt;&lt;/td&gt;               &lt;td valign="bottom"&gt;&lt;font style="DISPLAY: inline; FONT-WEIGHT: bold; FONT-SIZE: 10pt; FONT-FAMILY: times new roman"&gt;&amp;#160;&lt;/font&gt;&lt;/td&gt;               &lt;td colspan="6" valign="bottom"&gt;                 &lt;div style="DISPLAY: block; MARGIN-LEFT: 0pt; TEXT-INDENT: 0pt; MARGIN-RIGHT: 0pt" align="center"&gt;&lt;font style="DISPLAY: inline; FONT-WEIGHT: bold; FONT-SIZE: 10pt; FONT-FAMILY: times new roman"&gt;(in&amp;#160;millions)&lt;/font&gt;&lt;/div&gt;               &lt;/td&gt;               &lt;td nowrap="nowrap" valign="bottom" style="TEXT-ALIGN: left"&gt;&lt;font style="DISPLAY: inline; FONT-WEIGHT: bold; FONT-SIZE: 10pt; FONT-FAMILY: times new roman"&gt;&amp;#160;&lt;/font&gt;&lt;/td&gt;             &lt;/tr&gt;&lt;tr&gt;               &lt;td align="left" valign="bottom" width="76%"&gt;                 &lt;div style="DISPLAY: block; MARGIN-LEFT: 18pt; TEXT-INDENT: -18pt; MARGIN-RIGHT: 0pt" align="left"&gt;&lt;font style="DISPLAY: inline; FONT-SIZE: 10pt; FONT-FAMILY: times new roman"&gt;Beginning  balance as of&amp;#160;&amp;#160;November 1,&lt;/font&gt;&lt;/div&gt;               &lt;/td&gt;               &lt;td align="right" valign="bottom" width="1%"&gt;&lt;font style="DISPLAY: inline; FONT-SIZE: 10pt; FONT-FAMILY: times new roman"&gt;&amp;#160;&lt;/font&gt;&lt;/td&gt;               &lt;td valign="bottom" width="1%" style="TEXT-ALIGN: left"&gt;&lt;font style="DISPLAY: inline; FONT-SIZE: 10pt; FONT-FAMILY: times new roman"&gt;$&lt;/font&gt;&lt;/td&gt;               &lt;td valign="bottom" width="9%" style="TEXT-ALIGN: right"&gt;&lt;font style="DISPLAY: inline; FONT-SIZE: 10pt; FONT-FAMILY: times new roman"&gt;28&lt;/font&gt;&lt;/td&gt;               &lt;td nowrap="nowrap" valign="bottom" width="1%" style="TEXT-ALIGN: left"&gt;&lt;font style="DISPLAY: inline; FONT-SIZE: 10pt; FONT-FAMILY: times new roman"&gt;&amp;#160;&lt;/font&gt;&lt;/td&gt;               &lt;td align="right" valign="bottom" width="1%"&gt;&lt;font style="DISPLAY: inline; FONT-SIZE: 10pt; FONT-FAMILY: times new roman"&gt;&amp;#160;&lt;/font&gt;&lt;/td&gt;               &lt;td valign="bottom" width="1%" style="TEXT-ALIGN: left"&gt;&lt;font style="DISPLAY: inline; FONT-SIZE: 10pt; FONT-FAMILY: times new roman"&gt;$&lt;/font&gt;&lt;/td&gt;               &lt;td valign="bottom" width="9%" style="TEXT-ALIGN: right"&gt;&lt;font style="DISPLAY: inline; FONT-SIZE: 10pt; FONT-FAMILY: times new roman"&gt;29&lt;/font&gt;&lt;/td&gt;               &lt;td nowrap="nowrap" valign="bottom" width="1%" style="TEXT-ALIGN: left"&gt;&lt;font style="DISPLAY: inline; FONT-SIZE: 10pt; FONT-FAMILY: times new roman"&gt;&amp;#160;&lt;/font&gt;&lt;/td&gt;             &lt;/tr&gt;&lt;tr&gt;               &lt;td align="left" valign="bottom" width="76%"&gt;                 &lt;div style="DISPLAY: block; MARGIN-LEFT: 18pt; TEXT-INDENT: -18pt; MARGIN-RIGHT: 0pt" align="left"&gt;&lt;font style="DISPLAY: inline; FONT-SIZE: 10pt; FONT-FAMILY: times new roman"&gt;Accruals  for warranties issued during the period&lt;/font&gt;&lt;/div&gt;               &lt;/td&gt;               &lt;td align="right" valign="bottom" width="1%"&gt;&lt;font style="DISPLAY: inline; FONT-SIZE: 10pt; FONT-FAMILY: times new roman"&gt;&amp;#160;&lt;/font&gt;&lt;/td&gt;               &lt;td valign="bottom" width="1%" style="TEXT-ALIGN: left"&gt;&lt;font style="DISPLAY: inline; FONT-SIZE: 10pt; FONT-FAMILY: times new roman"&gt;&amp;#160;&lt;/font&gt;&lt;/td&gt;               &lt;td valign="bottom" width="9%" style="TEXT-ALIGN: right"&gt;&lt;font style="DISPLAY: inline; FONT-SIZE: 10pt; FONT-FAMILY: times new roman"&gt;26&lt;/font&gt;&lt;/td&gt;               &lt;td nowrap="nowrap" valign="bottom" width="1%" style="TEXT-ALIGN: left"&gt;&lt;font style="DISPLAY: inline; FONT-SIZE: 10pt; FONT-FAMILY: times new roman"&gt;&amp;#160;&lt;/font&gt;&lt;/td&gt;               &lt;td align="right" valign="bottom" width="1%"&gt;&lt;font style="DISPLAY: inline; FONT-SIZE: 10pt; FONT-FAMILY: times new roman"&gt;&amp;#160;&lt;/font&gt;&lt;/td&gt;               &lt;td valign="bottom" width="1%" style="TEXT-ALIGN: left"&gt;&lt;font style="DISPLAY: inline; FONT-SIZE: 10pt; FONT-FAMILY: times new roman"&gt;&amp;#160;&lt;/font&gt;&lt;/td&gt;               &lt;td valign="bottom" width="9%" style="TEXT-ALIGN: right"&gt;&lt;font style="DISPLAY: inline; FONT-SIZE: 10pt; FONT-FAMILY: times new roman"&gt;23&lt;/font&gt;&lt;/td&gt;               &lt;td nowrap="nowrap" valign="bottom" width="1%" style="TEXT-ALIGN: left"&gt;&lt;font style="DISPLAY: inline; FONT-SIZE: 10pt; FONT-FAMILY: times new roman"&gt;&amp;#160;&lt;/font&gt;&lt;/td&gt;             &lt;/tr&gt;&lt;tr&gt;               &lt;td align="left" valign="bottom" width="76%"&gt;                 &lt;div style="DISPLAY: block; MARGIN-LEFT: 18pt; TEXT-INDENT: -18pt; MARGIN-RIGHT: 0pt" align="left"&gt;&lt;font style="DISPLAY: inline; FONT-SIZE: 10pt; FONT-FAMILY: times new roman"&gt;Changes  in estimates&lt;/font&gt;&lt;/div&gt;               &lt;/td&gt;               &lt;td align="right" valign="bottom" width="1%"&gt;&lt;font style="DISPLAY: inline; FONT-SIZE: 10pt; FONT-FAMILY: times new roman"&gt;&amp;#160;&lt;/font&gt;&lt;/td&gt;               &lt;td valign="bottom" width="1%" style="TEXT-ALIGN: left"&gt;&lt;font style="DISPLAY: inline; FONT-SIZE: 10pt; FONT-FAMILY: times new roman"&gt;&amp;#160;&lt;/font&gt;&lt;/td&gt;               &lt;td valign="bottom" width="9%" style="TEXT-ALIGN: right"&gt;&lt;font style="DISPLAY: inline; FONT-SIZE: 10pt; FONT-FAMILY: times new roman"&gt;(2&lt;/font&gt;&lt;/td&gt;               &lt;td nowrap="nowrap" valign="bottom" width="1%" style="TEXT-ALIGN: left"&gt;&lt;font style="DISPLAY: inline; FONT-SIZE: 10pt; FONT-FAMILY: times new roman"&gt;)&lt;/font&gt;&lt;/td&gt;               &lt;td align="right" valign="bottom" width="1%"&gt;&lt;font style="DISPLAY: inline; FONT-SIZE: 10pt; FONT-FAMILY: times new roman"&gt;&amp;#160;&lt;/font&gt;&lt;/td&gt;               &lt;td valign="bottom" width="1%" style="TEXT-ALIGN: left"&gt;&lt;font style="DISPLAY: inline; FONT-SIZE: 10pt; FONT-FAMILY: times new roman"&gt;&amp;#160;&lt;/font&gt;&lt;/td&gt;               &lt;td valign="bottom" width="9%" style="TEXT-ALIGN: right"&gt;&lt;font style="DISPLAY: inline; FONT-SIZE: 10pt; FONT-FAMILY: times new roman"&gt;3&lt;/font&gt;&lt;/td&gt;               &lt;td nowrap="nowrap" valign="bottom" width="1%" style="TEXT-ALIGN: left"&gt;&lt;font style="DISPLAY: inline; FONT-SIZE: 10pt; FONT-FAMILY: times new roman"&gt;&amp;#160;&lt;/font&gt;&lt;/td&gt;             &lt;/tr&gt;&lt;tr&gt;               &lt;td align="left" valign="bottom" width="76%" style="PADDING-BOTTOM: 2px"&gt;                 &lt;div style="DISPLAY: block; MARGIN-LEFT: 18pt; TEXT-INDENT: -18pt; MARGIN-RIGHT: 0pt" align="left"&gt;&lt;font style="DISPLAY: inline; FONT-SIZE: 10pt; FONT-FAMILY: times new roman"&gt;Settlements  made during the period&lt;/font&gt;&lt;/div&gt;               &lt;/td&gt;               &lt;td align="right" valign="bottom" width="1%" style="PADDING-BOTTOM: 2px"&gt;&lt;font style="DISPLAY: inline; FONT-SIZE: 10pt; FONT-FAMILY: times new roman"&gt;&amp;#160;&lt;/font&gt;&lt;/td&gt;               &lt;td valign="bottom" width="1%" style="BORDER-BOTTOM: black 2px solid; TEXT-ALIGN: left"&gt;&lt;font style="DISPLAY: inline; FONT-SIZE: 10pt; FONT-FAMILY: times new roman"&gt;&amp;#160;&lt;/font&gt;&lt;/td&gt;               &lt;td valign="bottom" width="9%" style="BORDER-BOTTOM: black 2px solid; TEXT-ALIGN: right"&gt;&lt;font style="DISPLAY: inline; FONT-SIZE: 10pt; FONT-FAMILY: times new roman"&gt;(24&lt;/font&gt;&lt;/td&gt;               &lt;td nowrap="nowrap" valign="bottom" width="1%" style="PADDING-BOTTOM: 2px; TEXT-ALIGN: left"&gt;&lt;font style="DISPLAY: inline; FONT-SIZE: 10pt; FONT-FAMILY: times new roman"&gt;)&lt;/font&gt;&lt;/td&gt;               &lt;td align="right" valign="bottom" width="1%" style="PADDING-BOTTOM: 2px"&gt;&lt;font style="DISPLAY: inline; FONT-SIZE: 10pt; FONT-FAMILY: times new roman"&gt;&amp;#160;&lt;/font&gt;&lt;/td&gt;               &lt;td valign="bottom" width="1%" style="BORDER-BOTTOM: black 2px solid; TEXT-ALIGN: left"&gt;&lt;font style="DISPLAY: inline; FONT-SIZE: 10pt; FONT-FAMILY: times new roman"&gt;&amp;#160;&lt;/font&gt;&lt;/td&gt;               &lt;td valign="bottom" width="9%" style="BORDER-BOTTOM: black 2px solid; TEXT-ALIGN: right"&gt;&lt;font style="DISPLAY: inline; FONT-SIZE: 10pt; FONT-FAMILY: times new roman"&gt;(26  &lt;/font&gt;&lt;/td&gt;               &lt;td nowrap="nowrap" valign="bottom" width="1%" style="PADDING-BOTTOM: 2px; TEXT-ALIGN: left"&gt;&lt;font style="DISPLAY: inline; FONT-SIZE: 10pt; FONT-FAMILY: times new roman"&gt;)&lt;/font&gt;&lt;/td&gt;             &lt;/tr&gt;&lt;tr&gt;               &lt;td align="left" valign="bottom" width="76%" style="PADDING-BOTTOM: 4px"&gt;                 &lt;div style="DISPLAY: block; MARGIN-LEFT: 18pt; TEXT-INDENT: -18pt; MARGIN-RIGHT: 0pt" align="left"&gt;&lt;font style="DISPLAY: inline; FONT-SIZE: 10pt; FONT-FAMILY: times new roman"&gt;Ending  balance as of&amp;#160;&amp;#160;April 30,&lt;/font&gt;&lt;/div&gt;               &lt;/td&gt;               &lt;td align="right" valign="bottom" width="1%" style="PADDING-BOTTOM: 4px"&gt;&lt;font style="DISPLAY: inline; FONT-SIZE: 10pt; FONT-FAMILY: times new roman"&gt;&amp;#160;&lt;/font&gt;&lt;/td&gt;               &lt;td valign="bottom" width="1%" style="BORDER-BOTTOM: black 4px double; TEXT-ALIGN: left"&gt;&lt;font style="DISPLAY: inline; FONT-SIZE: 10pt; FONT-FAMILY: times new roman"&gt;$&lt;/font&gt;&lt;/td&gt;               &lt;td valign="bottom" width="9%" style="BORDER-BOTTOM: black 4px double; TEXT-ALIGN: right"&gt;&lt;font style="DISPLAY: inline; FONT-SIZE: 10pt; FONT-FAMILY: times new roman"&gt;28&lt;/font&gt;&lt;/td&gt;               &lt;td nowrap="nowrap" valign="bottom" width="1%" style="PADDING-BOTTOM: 4px; TEXT-ALIGN: left"&gt;&lt;font style="DISPLAY: inline; FONT-SIZE: 10pt; FONT-FAMILY: times new roman"&gt;&amp;#160;&lt;/font&gt;&lt;/td&gt;               &lt;td align="right" valign="bottom" width="1%" style="PADDING-BOTTOM: 4px"&gt;&lt;font style="DISPLAY: inline; FONT-SIZE: 10pt; FONT-FAMILY: times new roman"&gt;&amp;#160;&lt;/font&gt;&lt;/td&gt;               &lt;td valign="bottom" width="1%" style="BORDER-BOTTOM: black 4px double; TEXT-ALIGN: left"&gt;&lt;font style="DISPLAY: inline; FONT-SIZE: 10pt; FONT-FAMILY: times new roman"&gt;$&lt;/font&gt;&lt;/td&gt;               &lt;td valign="bottom" width="9%" style="BORDER-BOTTOM: black 4px double; TEXT-ALIGN: right"&gt;&lt;font style="DISPLAY: inline; FONT-SIZE: 10pt; FONT-FAMILY: times new roman"&gt;29&lt;/font&gt;&lt;/td&gt;               &lt;td nowrap="nowrap" valign="bottom" width="1%" style="PADDING-BOTTOM: 4px; TEXT-ALIGN: left"&gt;&lt;font style="DISPLAY: inline; FONT-SIZE: 10pt; FONT-FAMILY: times new roman"&gt;&amp;#160;&lt;/font&gt;&lt;/td&gt;             &lt;/tr&gt;&lt;/table&gt;         &lt;/div&gt;       &lt;/div&gt;     &lt;/div&gt;</NonNumbericText>
          <NonNumericTextHeader>&amp;#160;                                                 12.  WARRANTIES                                              &amp;#160;         We accrue  for standard</NonNumericTextHeader>
          <FootnoteIndexer />
          <hasSegments>false</hasSegments>
          <hasScenarios>false</hasScenarios>
          <DisplayDateInUSFormat>false</DisplayDateInUSFormat>
        </Cell>
      </Cells>
      <OriginalInstanceReportColumns />
      <ElementDefenition>Disclosure for standard and extended product warranties and other product guarantee contracts, including a tabular reconciliation of the changes in the guarantor's aggregate product warranty liability for the reporting period.</ElementDefenition>
      <ElementReferences>Reference 1: http://www.xbrl.org/2003/role/presentationRef
 -Publisher FASB
 -Name FASB Interpretation (FIN)
 -Number 45
 -Paragraph 14
 -Subparagraph a, b

</ElementReferences>
      <IsTotalLabel>false</IsTotalLabel>
    </Row>
  </Rows>
  <Footnotes />
  <ComparabilityReport>false</ComparabilityReport>
  <NumberOfCols>1</NumberOfCols>
  <NumberOfRows>2</NumberOfRows>
  <HasScenarios>false</HasScenarios>
  <MonetaryRoundingLevel>UnKnown</MonetaryRoundingLevel>
  <SharesRoundingLevel>UnKnown</SharesRoundingLevel>
  <PerShareRoundingLevel>UnKnown</PerShareRoundingLevel>
  <HasPureData>false</HasPureData>
  <SharesShouldBeRounded>true</SharesShouldBeRounded>
</InstanceReport>
