[#ftl] XBRL Inline Document
Rendered XBRL Report
[#list contexts as fragment] [#assign text = store.serializeToString(store.getSubtree(fragment)) /] ${text?substring(text?index_of("\n"))} [/#list] [#list units as fragment] [#assign text = store.serializeToString(store.getSubtree(fragment)) /] ${text?substring(text?index_of("\n"))} [/#list] [#list schemaReferences as fragment] [#assign text = store.serializeToString(store.getSubtree(fragment)) /] ${text?substring(text?index_of("\n"))} [/#list] [#list linkbaseReferences as fragment] [#assign text = store.serializeToString(store.getSubtree(fragment)) /] ${text?substring(text?index_of("\n"))} [/#list]
[#list tables as table]
[#list 0..table.maxLevel as i] [/#list] [#list table.periods as period] [/#list] [#list 0..table.maxLevel as i] [/#list] [#assign counter = 1 /] [#list 0..(table.concepts?size-1) as cIndex] [#assign concept = table.concepts[cIndex] /] [#assign label = table.labels[cIndex] /] [#if counter = 1] [#assign counter = 0 /] [#assign classPrefix = "row1" /] [#else] [#assign counter = 1 /] [#assign classPrefix = "row2" /] [/#if] [#if label?lower_case?trim?ends_with(", total")] [#else] [/#if] [#assign continuing = true /] [#assign indent = true /] [#assign value = false /] [#assign level = 0 /] [#list 0..table.maxLevel as i] [#if continuing] [#if label[i] = " " && indent] [#assign level = level + 1 /] [#assign value = true /] [#else] [#assign continuing = false /] [/#if] [/#if] [/#if] [/#list] [#assign conceptId = concept.targetNamespaceURI + ": " + concept.name /] [#assign conceptAspect = table.aspectModel.getAspect("concept") /] [#assign conceptHasData = conceptAspect.hasValue(conceptId) /] [#if conceptHasData] [#assign conceptValue = conceptAspect.getValue(conceptId) /] ${conceptAspect.setSelectionCriterion(conceptValue)} [/#if] [#list table.periods as period] [#if conceptHasData] ${period.aspect.setSelectionCriterion(period)} [#assign items = table.aspectModel.matchingFacts /] [#else] [#assign items = [] /] [/#if] [#if conceptHasData && items?exists && items?size > 0] [#assign item = items[0] /] [#if ! item.nil] [#else] [/#if] [#else] [/#if] [/#list] [/#list]
${table.title}
[/#list] [#list table.periods as period]
${period.label}
[#else] [#assign indent = true /] [#if ! value] ${label?trim} [#if item.numeric]
[#assign nMeasures = item.unit.resolvedNumeratorMeasures /] [#assign dMeasures = item.unit.resolvedDenominatorMeasures /] [#if nMeasures?size > 1 || dMeasures?size > 0] ${item.value} [/#if] [#assign measure = nMeasures[0] /] [#if measure.namespace = iso4217] ${item.value?number?string.currency} ${measure.localname} [/#if] [#if measure.namespace == xbrli && measure.localname == "shares"] ${item.value?number} shares [/#if] [#if measure.namespace == xbrli && measure.localname == "pure" && (item.value?number >= 1)] ${item.value?number} [/#if] [#if measure.namespace == xbrli && measure.localname == "pure" && (item.value?number < 1)] ${item.value?number * 100} % [/#if]
[#else]
[#assign value = item.value /] [#if value?length > 255] ${value?substring(0,255)} ... [#else] ${value} [/#if]
[/#if]
nil 
[/#list]