<DefinitionAndReference>
  <Element Id="rr_ProspectusDate">
    <definition>No authoritative reference available.</definition>
    <reference>No authoritative reference available.</reference>
  </Element>
  <Element Id="rr_PortfolioTurnoverHeading">
    <definition>No authoritative reference available.</definition>
    <reference>No authoritative reference available.</reference>
  </Element>
  <Element Id="rr_PerformanceNarrativeTextBlock">
    <definition>No authoritative reference available.</definition>
    <reference>No authoritative reference available.</reference>
  </Element>
  <Element Id="rr_ExpenseExampleNoRedemptionTableTextBlock">
    <definition>No authoritative reference available.</definition>
    <reference>No authoritative reference available.</reference>
  </Element>
  <Element Id="rr_ExpenseExampleNoRedemptionYear03">
    <definition>No authoritative reference available.</definition>
    <reference>No authoritative reference available.</reference>
  </Element>
  <Element Id="rr_DistributionAndService12b1FeesOverAssets">
    <definition>No authoritative reference available.</definition>
    <reference>No authoritative reference available.</reference>
  </Element>
  <Element Id="rr_AnnualReturn2008">
    <definition>No authoritative reference available.</definition>
    <reference>No authoritative reference available.</reference>
  </Element>
  <Element Id="rr_AverageAnnualReturnSinceInception">
    <definition>No authoritative reference available.</definition>
    <reference>No authoritative reference available.</reference>
  </Element>
  <Element Id="rr_PerformanceAvailabilityPhone">
    <definition>No authoritative reference available.</definition>
    <reference>No authoritative reference available.</reference>
  </Element>
  <Element Id="rr_PerformanceTableHeading">
    <definition>No authoritative reference available.</definition>
    <reference>No authoritative reference available.</reference>
  </Element>
  <Element Id="rr_BarChartLowestQuarterlyReturn">
    <definition>No authoritative reference available.</definition>
    <reference>No authoritative reference available.</reference>
  </Element>
  <Element Id="rr_ExpenseExampleNoRedemptionYear05">
    <definition>No authoritative reference available.</definition>
    <reference>No authoritative reference available.</reference>
  </Element>
  <Element Id="rr_BarChartLowestQuarterlyReturnDate">
    <definition>No authoritative reference available.</definition>
    <reference>No authoritative reference available.</reference>
  </Element>
  <Element Id="rr_AnnualReturn2005">
    <definition>No authoritative reference available.</definition>
    <reference>No authoritative reference available.</reference>
  </Element>
  <Element Id="rr_StrategyNarrativeTextBlock">
    <definition>No authoritative reference available.</definition>
    <reference>No authoritative reference available.</reference>
  </Element>
  <Element Id="rr_BarChartHighestQuarterlyReturn">
    <definition>No authoritative reference available.</definition>
    <reference>No authoritative reference available.</reference>
  </Element>
  <Element Id="rr_AnnualReturn2009">
    <definition>No authoritative reference available.</definition>
    <reference>No authoritative reference available.</reference>
  </Element>
  <Element Id="rr_ExchangeFeeOverRedemption">
    <definition>No authoritative reference available.</definition>
    <reference>No authoritative reference available.</reference>
  </Element>
  <Element Id="rr_OtherExpensesOverAssets">
    <definition>No authoritative reference available.</definition>
    <reference>No authoritative reference available.</reference>
  </Element>
  <Element Id="rr_PerformanceTableTextBlock">
    <definition>No authoritative reference available.</definition>
    <reference>No authoritative reference available.</reference>
  </Element>
  <Element Id="rr_ExpenseNarrativeTextBlock">
    <definition>No authoritative reference available.</definition>
    <reference>No authoritative reference available.</reference>
  </Element>
  <Element Id="rr_ExpenseExampleNoRedemptionYear01">
    <definition>No authoritative reference available.</definition>
    <reference>No authoritative reference available.</reference>
  </Element>
  <Element Id="rr_ExpensesOverAssets">
    <definition>No authoritative reference available.</definition>
    <reference>No authoritative reference available.</reference>
  </Element>
  <Element Id="rr_BarChartHighestQuarterlyReturnDate">
    <definition>No authoritative reference available.</definition>
    <reference>No authoritative reference available.</reference>
  </Element>
  <Element Id="rr_BarChartClosingTextBlock">
    <definition>No authoritative reference available.</definition>
    <reference>No authoritative reference available.</reference>
  </Element>
  <Element Id="rr_ManagementFeesOverAssets">
    <definition>No authoritative reference available.</definition>
    <reference>No authoritative reference available.</reference>
  </Element>
  <Element Id="dei_DocumentType">
    <definition>No authoritative reference available.</definition>
    <reference>No authoritative reference available.</reference>
  </Element>
  <Element Id="rr_PerformanceAvailabilityWebSiteAddress">
    <definition>No authoritative reference available.</definition>
    <reference>No authoritative reference available.</reference>
  </Element>
  <Element Id="rr_FeeWaiverOrReimbursementOverAssetsDateOfTermination">
    <definition>No authoritative reference available.</definition>
    <reference>No authoritative reference available.</reference>
  </Element>
  <Element Id="rr_BarChartAndPerformanceTableHeading">
    <definition>No authoritative reference available.</definition>
    <reference>No authoritative reference available.</reference>
  </Element>
  <Element Id="rr_PerformancePastDoesNotIndicateFuture">
    <definition>No authoritative reference available.</definition>
    <reference>No authoritative reference available.</reference>
  </Element>
  <Element Id="rr_AnnualReturn2006">
    <definition>No authoritative reference available.</definition>
    <reference>No authoritative reference available.</reference>
  </Element>
  <Element Id="rr_ExpenseExampleByYearCaption">
    <definition>No authoritative reference available.</definition>
    <reference>No authoritative reference available.</reference>
  </Element>
  <Element Id="dei_DocumentCreationDate">
    <definition>No authoritative reference available.</definition>
    <reference>No authoritative reference available.</reference>
  </Element>
  <Element Id="dei_DocumentPeriodEndDate">
    <definition>No authoritative reference available.</definition>
    <reference>No authoritative reference available.</reference>
  </Element>
  <Element Id="rr_AnnualReturn2010">
    <definition>No authoritative reference available.</definition>
    <reference>No authoritative reference available.</reference>
  </Element>
  <Element Id="rr_PerformanceTableNotRelevantToTaxDeferred">
    <definition>No authoritative reference available.</definition>
    <reference>No authoritative reference available.</reference>
  </Element>
  <Element Id="rr_OperatingExpensesCaption">
    <definition>No authoritative reference available.</definition>
    <reference>No authoritative reference available.</reference>
  </Element>
  <Element Id="rr_NetExpensesOverAssets">
    <definition>No authoritative reference available.</definition>
    <reference>No authoritative reference available.</reference>
  </Element>
  <Element Id="rr_ExpenseBreakpointMinimumInvestmentRequiredAmount">
    <definition>No authoritative reference available.</definition>
    <reference>No authoritative reference available.</reference>
  </Element>
  <Element Id="rr_PortfolioTurnoverTextBlock">
    <definition>No authoritative reference available.</definition>
    <reference>No authoritative reference available.</reference>
  </Element>
  <Element Id="rr_ExpenseExampleHeading">
    <definition>No authoritative reference available.</definition>
    <reference>No authoritative reference available.</reference>
  </Element>
  <Element Id="rr_ShareholderFeesCaption">
    <definition>No authoritative reference available.</definition>
    <reference>No authoritative reference available.</reference>
  </Element>
  <Element Id="rr_AverageAnnualReturnYear05">
    <definition>No authoritative reference available.</definition>
    <reference>No authoritative reference available.</reference>
  </Element>
  <Element Id="rr_RiskNarrativeTextBlock">
    <definition>No authoritative reference available.</definition>
    <reference>No authoritative reference available.</reference>
  </Element>
  <Element Id="rr_PerformanceTableClosingTextBlock">
    <definition>No authoritative reference available.</definition>
    <reference>No authoritative reference available.</reference>
  </Element>
  <Element Id="rr_PerformanceInformationIllustratesVariabilityOfReturns">
    <definition>No authoritative reference available.</definition>
    <reference>No authoritative reference available.</reference>
  </Element>
  <Element Id="rr_PerformanceTableNarrativeTextBlock">
    <definition>No authoritative reference available.</definition>
    <reference>No authoritative reference available.</reference>
  </Element>
  <Element Id="rr_ObjectivePrimaryTextBlock">
    <definition>No authoritative reference available.</definition>
    <reference>No authoritative reference available.</reference>
  </Element>
  <Element Id="rr_PerformanceTableOneClassOfAfterTaxShown">
    <definition>No authoritative reference available.</definition>
    <reference>No authoritative reference available.</reference>
  </Element>
  <Element Id="rr_BarChartDoesNotReflectSalesLoads">
    <definition>No authoritative reference available.</definition>
    <reference>No authoritative reference available.</reference>
  </Element>
  <Element Id="rr_MaximumDeferredSalesChargeOverOfferingPrice">
    <definition>No authoritative reference available.</definition>
    <reference>No authoritative reference available.</reference>
  </Element>
  <Element Id="dei_EntityRegistrantName">
    <definition>No authoritative reference available.</definition>
    <reference>No authoritative reference available.</reference>
  </Element>
  <Element Id="rr_StrategyHeading">
    <definition>No authoritative reference available.</definition>
    <reference>No authoritative reference available.</reference>
  </Element>
  <Element Id="rr_BarChartHeading">
    <definition>No authoritative reference available.</definition>
    <reference>No authoritative reference available.</reference>
  </Element>
  <Element Id="rr_ObjectiveHeading">
    <definition>No authoritative reference available.</definition>
    <reference>No authoritative reference available.</reference>
  </Element>
  <Element Id="rr_AnnualReturn2007">
    <definition>No authoritative reference available.</definition>
    <reference>No authoritative reference available.</reference>
  </Element>
  <Element Id="rr_ShareholderFeesTableTextBlock">
    <definition>No authoritative reference available.</definition>
    <reference>No authoritative reference available.</reference>
  </Element>
  <Element Id="rr_MaximumSalesChargeImposedOnPurchasesOverOfferingPrice">
    <definition>No authoritative reference available.</definition>
    <reference>No authoritative reference available.</reference>
  </Element>
  <Element Id="dei_DocumentEffectiveDate">
    <definition>No authoritative reference available.</definition>
    <reference>No authoritative reference available.</reference>
  </Element>
  <Element Id="rr_AnnualFundOperatingExpensesTableTextBlock">
    <definition>No authoritative reference available.</definition>
    <reference>No authoritative reference available.</reference>
  </Element>
  <Element Id="dei_EntityCentralIndexKey">
    <definition>No authoritative reference available.</definition>
    <reference>No authoritative reference available.</reference>
  </Element>
  <Element Id="rr_AverageAnnualReturnInceptionDate">
    <definition>No authoritative reference available.</definition>
    <reference>No authoritative reference available.</reference>
  </Element>
  <Element Id="rr_BarChartTableTextBlock">
    <definition>No authoritative reference available.</definition>
    <reference>No authoritative reference available.</reference>
  </Element>
  <Element Id="rr_ExpenseHeading">
    <definition>No authoritative reference available.</definition>
    <reference>No authoritative reference available.</reference>
  </Element>
  <Element Id="rr_LowestQuarterlyReturnLabel">
    <definition>No authoritative reference available.</definition>
    <reference>No authoritative reference available.</reference>
  </Element>
  <Element Id="dei_AmendmentFlag">
    <definition>No authoritative reference available.</definition>
    <reference>No authoritative reference available.</reference>
  </Element>
  <Element Id="rr_FeeWaiverOrReimbursementOverAssets">
    <definition>No authoritative reference available.</definition>
    <reference>No authoritative reference available.</reference>
  </Element>
  <Element Id="rr_HighestQuarterlyReturnLabel">
    <definition>No authoritative reference available.</definition>
    <reference>No authoritative reference available.</reference>
  </Element>
  <Element Id="rr_AverageAnnualReturnYear01">
    <definition>No authoritative reference available.</definition>
    <reference>No authoritative reference available.</reference>
  </Element>
  <Element Id="rr_ExpenseExampleNoRedemptionYear10">
    <definition>No authoritative reference available.</definition>
    <reference>No authoritative reference available.</reference>
  </Element>
  <Element Id="rr_ExpenseExampleNarrativeTextBlock">
    <definition>No authoritative reference available.</definition>
    <reference>No authoritative reference available.</reference>
  </Element>
  <Element Id="rr_PerformanceTableUsesHighestFederalRate">
    <definition>No authoritative reference available.</definition>
    <reference>No authoritative reference available.</reference>
  </Element>
  <Element Id="rr_RiskReturnHeading">
    <definition>No authoritative reference available.</definition>
    <reference>No authoritative reference available.</reference>
  </Element>
  <Element Id="rr_RiskHeading">
    <definition>No authoritative reference available.</definition>
    <reference>No authoritative reference available.</reference>
  </Element>
</DefinitionAndReference>
