Commit 61026787 authored by Jérome Perrin's avatar Jérome Perrin

Use more styles in budget consumption report and improve a lot the layout

git-svn-id: https://svn.erp5.org/repos/public/erp5/trunk@30347 20353a03-c40f-0410-a6d1-a30d3c3de9de
parent cb132628
...@@ -65,6 +65,8 @@ from pprint import pformat\n ...@@ -65,6 +65,8 @@ from pprint import pformat\n
portal = context.getPortalObject()\n portal = context.getPortalObject()\n
request= portal.REQUEST\n request= portal.REQUEST\n
\n \n
from Products.ERP5Type.Utils import cartesianProduct\n
\n
# this report can be called on a budget ...\n # this report can be called on a budget ...\n
if context.getPortalType() == \'Budget\':\n if context.getPortalType() == \'Budget\':\n
defined_group = \'group\'\n defined_group = \'group\'\n
...@@ -105,6 +107,10 @@ def isVisibleCell(cell):\n ...@@ -105,6 +107,10 @@ def isVisibleCell(cell):\n
\n \n
\n \n
for budget in budget_list:\n for budget in budget_list:\n
line_list.append(dict(is_budget=True,\n
title=budget.getTitle().decode(\'utf8\'),\n
resource_title=budget.getResource() and\n
budget.getResourceReference()))\n
for budget_line in budget.contentValues(sort_on=((\'int_index\', \'asc\'),)):\n for budget_line in budget.contentValues(sort_on=((\'int_index\', \'asc\'),)):\n
total_level_1_initial_budget = 0\n total_level_1_initial_budget = 0\n
total_level_1_current_budget = 0\n total_level_1_current_budget = 0\n
...@@ -112,9 +118,7 @@ for budget in budget_list:\n ...@@ -112,9 +118,7 @@ for budget in budget_list:\n
total_level_1_consumed_budget = 0\n total_level_1_consumed_budget = 0\n
total_level_1_available_budget = 0\n total_level_1_available_budget = 0\n
\n \n
level_1_line_list = [dict(is_level_1=1,\n level_1_line_list = []\n
title=budget_line.getTitle().decode(\'utf8\'))]\n
\n
variation_axis_list = []\n variation_axis_list = []\n
for possible_axis in budget_line.getVariationBaseCategoryList():\n for possible_axis in budget_line.getVariationBaseCategoryList():\n
for cell_range in budget_line.getCellRange():\n for cell_range in budget_line.getCellRange():\n
...@@ -130,12 +134,11 @@ for budget in budget_list:\n ...@@ -130,12 +134,11 @@ for budget in budget_list:\n
budget_line.getVariationCategoryList() if\n budget_line.getVariationCategoryList() if\n
x.startswith(variation_axis_list[0])]\n x.startswith(variation_axis_list[0])]\n
else:\n else:\n
level_2_variation_category_list = [x for x in\n budget_line_vcl = budget_line.getVariationCategoryList()\n
budget_line.getVariationCategoryList() if\n budget_line_cell_range = budget_line.BudgetLine_asCellRange()\n
x.startswith(variation_axis_list[0])]\n \n
level_3_variation_category_list = [x for x in\n level_2_variation_category_list = budget_line.getCellRange()[0]\n
budget_line.getVariationCategoryList() if\n level_3_variation_category_list = budget_line.getCellRange()[1]\n
x.startswith(variation_axis_list[1])]\n
\n \n
# we use BudgetLine_asCellRange to get cell names, and have a default value\n # we use BudgetLine_asCellRange to get cell names, and have a default value\n
# for "virtual level 2"\n # for "virtual level 2"\n
...@@ -143,18 +146,40 @@ for budget in budget_list:\n ...@@ -143,18 +146,40 @@ for budget in budget_list:\n
cell_name_dict = {budget_line.getResource(base=1):\n cell_name_dict = {budget_line.getResource(base=1):\n
budget_line.getTitle().decode(\'utf8\')}\n budget_line.getTitle().decode(\'utf8\')}\n
cell_style_dict = {budget_line.getResource(base=1): \'Level2\'}\n cell_style_dict = {budget_line.getResource(base=1): \'Level2\'}\n
for cell_range_list in budget_line.BudgetLine_asCellRange(matrixbox=1):\n cell_depth_dict = {budget_line.getResource(base=1): 0}\n
\n
min_depth = 100\n
budget_line_as_cell_range_matrixbox =\\\n
budget_line.BudgetLine_asCellRange(matrixbox=1)\n
for cell_range_list in budget_line_as_cell_range_matrixbox:\n
for category, title in cell_range_list:\n
if category in level_2_variation_category_list:\n
min_depth = min((title.count(\'\\xA0\') / 4) or title.count(\'/\'),\n
min_depth)\n
\n
if min_depth == 100:\n
min_depth = 0\n
\n
for cell_range_list in budget_line_as_cell_range_matrixbox:\n
for category, title in cell_range_list:\n for category, title in cell_range_list:\n
cell_name_dict[category] = title.decode(\'utf8\').replace(u\'\\xA0\', \'\')\n cell_name_dict[category] = title.decode(\'utf8\').replace(u\'\\xA0\', \'\')\n
depth = (title.count(\'\\xA0\') / 4.) or title.count(\'/\')\n if category in level_2_variation_category_list:\n
if depth == 1:\n depth = -min_depth + (title.count(\'\\xA0\') / 4) or title.count(\'/\')\n
cell_style_dict[category] = \'Level2.1\'\n cell_depth_dict[category] = depth\n
elif depth == 2:\n if depth == 1:\n
cell_style_dict[category] = \'Level2.2\'\n cell_style_dict[category] = \'Level2.1\'\n
elif depth == 3:\n elif depth == 2:\n
cell_style_dict[category] = \'Level2.3\'\n cell_style_dict[category] = \'Level2.2\'\n
else:\n elif depth == 3:\n
cell_style_dict[category] = \'Level2\'\n cell_style_dict[category] = \'Level2.3\'\n
else:\n
cell_style_dict[category] = \'Level2\'\n
\n
# We\'ll only sum level 2 budget cells if they are the shallowest in the\n
# category tree\n
higher_depth = min_depth\n
if cell_depth_dict:\n
higher_depth = min(cell_depth_dict.values())\n
\n \n
for level_2_category in level_2_variation_category_list:\n for level_2_category in level_2_variation_category_list:\n
\n \n
...@@ -163,13 +188,17 @@ for budget in budget_list:\n ...@@ -163,13 +188,17 @@ for budget in budget_list:\n
total_level_2_engaged_budget = 0\n total_level_2_engaged_budget = 0\n
total_level_2_consumed_budget = 0\n total_level_2_consumed_budget = 0\n
total_level_2_available_budget = 0\n total_level_2_available_budget = 0\n
level_2_line_list = [dict(is_level_2=1,\n level_2_line_list = [dict(is_level_2=True,\n
title=cell_name_dict[level_2_category],\n title=cell_name_dict[level_2_category],\n
style=cell_style_dict[level_2_category])]\n style=cell_style_dict[level_2_category])]\n
\n \n
is_higher_level2 = cell_depth_dict[level_2_category] == higher_depth\n
\n
for level_3_category in level_3_variation_category_list:\n for level_3_category in level_3_variation_category_list:\n
sign = budget_line.BudgetLine_getConsumptionSign()\n sign = budget_line.BudgetLine_getConsumptionSign()\n
for cell in budget_line.getCellValueList():\n \n
for cell_key in cartesianProduct(budget_line.BudgetLine_asCellRange()):\n
cell = budget_line.getCell(*cell_key)\n
if not isVisibleCell(cell):\n if not isVisibleCell(cell):\n
continue\n continue\n
if level_2_category in cell.getMembershipCriterionCategoryList() and\\\n if level_2_category in cell.getMembershipCriterionCategoryList() and\\\n
...@@ -178,8 +207,13 @@ for budget in budget_list:\n ...@@ -178,8 +207,13 @@ for budget in budget_list:\n
initial_budget = cell.getQuantity() * sign\n initial_budget = cell.getQuantity() * sign\n
current_budget = cell.getCurrentBalance() * sign\n current_budget = cell.getCurrentBalance() * sign\n
engaged_budget = cell.getEngagedBudget()\n engaged_budget = cell.getEngagedBudget()\n
consumed_budget = cell.getConsumedBudget()\n if engaged_budget:\n
available_budget = cell.getAvailableBudget()\n # XXX stupid optimisation that may not always be true\n
consumed_budget = cell.getConsumedBudget()\n
available_budget = cell.getAvailableBudget()\n
else:\n
consumed_budget = 0\n
available_budget = current_budget\n
\n \n
total_level_2_initial_budget += initial_budget\n total_level_2_initial_budget += initial_budget\n
total_level_2_current_budget += current_budget\n total_level_2_current_budget += current_budget\n
...@@ -190,8 +224,8 @@ for budget in budget_list:\n ...@@ -190,8 +224,8 @@ for budget in budget_list:\n
consumed_ratio = 0\n consumed_ratio = 0\n
if current_budget:\n if current_budget:\n
consumed_ratio = consumed_budget / current_budget\n consumed_ratio = consumed_budget / current_budget\n
level_2_line_list.append(dict(is_level_3=1,\n level_2_line_list.append(dict(title=cell_name_dict[level_3_category],\n
title=cell_name_dict[level_3_category],\n is_level_3=True,\n
initial_budget=initial_budget,\n initial_budget=initial_budget,\n
current_budget=current_budget,\n current_budget=current_budget,\n
engaged_budget=engaged_budget,\n engaged_budget=engaged_budget,\n
...@@ -203,28 +237,29 @@ for budget in budget_list:\n ...@@ -203,28 +237,29 @@ for budget in budget_list:\n
consumed_ratio = 0\n consumed_ratio = 0\n
if total_level_2_current_budget:\n if total_level_2_current_budget:\n
consumed_ratio = total_level_2_consumed_budget / total_level_2_current_budget\n consumed_ratio = total_level_2_consumed_budget / total_level_2_current_budget\n
level_1_line_list.extend(level_2_line_list)\n level_1_line_list.append(dict(is_level_2=True,\n
level_1_line_list.append(dict(is_total_level_2=1,\n
title=cell_name_dict[level_2_category],\n title=cell_name_dict[level_2_category],\n
style=cell_style_dict[level_2_category],\n
initial_budget=total_level_2_initial_budget,\n initial_budget=total_level_2_initial_budget,\n
current_budget=total_level_2_current_budget,\n current_budget=total_level_2_current_budget,\n
engaged_budget=total_level_2_engaged_budget,\n engaged_budget=total_level_2_engaged_budget,\n
consumed_budget=total_level_2_consumed_budget,\n consumed_budget=total_level_2_consumed_budget,\n
available_budget=total_level_2_available_budget,\n available_budget=total_level_2_available_budget,\n
consumed_ratio=consumed_ratio))\n consumed_ratio=consumed_ratio))\n
level_1_line_list.append(level_2_line_list)\n
\n \n
total_level_1_initial_budget += total_level_2_initial_budget\n if is_higher_level2:\n
total_level_1_current_budget += total_level_2_current_budget\n total_level_1_initial_budget += total_level_2_initial_budget\n
total_level_1_engaged_budget += total_level_2_engaged_budget\n total_level_1_current_budget += total_level_2_current_budget\n
total_level_1_consumed_budget += total_level_2_consumed_budget\n total_level_1_engaged_budget += total_level_2_engaged_budget\n
total_level_1_available_budget += total_level_2_available_budget\n total_level_1_consumed_budget += total_level_2_consumed_budget\n
total_level_1_available_budget += total_level_2_available_budget\n
\n \n
if len(level_1_line_list) > 1:\n if len(level_1_line_list) > 1:\n
consumed_ratio = 0\n consumed_ratio = 0\n
if total_level_1_current_budget:\n if total_level_1_current_budget:\n
consumed_ratio = total_level_1_consumed_budget / total_level_1_current_budget\n consumed_ratio = total_level_1_consumed_budget / total_level_1_current_budget\n
line_list.extend(level_1_line_list)\n line_list.append(dict(is_level_1=True,\n
line_list.append(dict(is_total_level_1=1,\n
title=budget_line.getTitle().decode(\'utf8\'),\n title=budget_line.getTitle().decode(\'utf8\'),\n
initial_budget=total_level_1_initial_budget,\n initial_budget=total_level_1_initial_budget,\n
current_budget=total_level_1_current_budget,\n current_budget=total_level_1_current_budget,\n
...@@ -232,12 +267,17 @@ for budget in budget_list:\n ...@@ -232,12 +267,17 @@ for budget in budget_list:\n
consumed_budget=total_level_1_consumed_budget,\n consumed_budget=total_level_1_consumed_budget,\n
available_budget=total_level_1_available_budget,\n available_budget=total_level_1_available_budget,\n
consumed_ratio=consumed_ratio))\n consumed_ratio=consumed_ratio))\n
line_list.extend(level_1_line_list)\n
\n \n
\n line_count = 0\n
if line_list:\n for line in line_list:\n
line_list[-1][\'is_last_line\'] = 1\n if same_type(line, []):\n
line_count += len(line)\n
else:\n
line_count += 1\n
\n \n
return line_list\n if not REQUEST:\n
return line_list, line_count\n
\n \n
from pprint import pformat\n from pprint import pformat\n
return pformat(line_list)\n return pformat(line_list)\n
...@@ -253,7 +293,7 @@ return pformat(line_list)\n ...@@ -253,7 +293,7 @@ return pformat(line_list)\n
</item> </item>
<item> <item>
<key> <string>_params</string> </key> <key> <string>_params</string> </key>
<value> <string></string> </value> <value> <string>REQUEST=None</string> </value>
</item> </item>
<item> <item>
<key> <string>_proxy_roles</string> </key> <key> <string>_proxy_roles</string> </key>
...@@ -281,18 +321,21 @@ return pformat(line_list)\n ...@@ -281,18 +321,21 @@ return pformat(line_list)\n
<dictionary> <dictionary>
<item> <item>
<key> <string>co_argcount</string> </key> <key> <string>co_argcount</string> </key>
<value> <int>0</int> </value> <value> <int>1</int> </value>
</item> </item>
<item> <item>
<key> <string>co_varnames</string> </key> <key> <string>co_varnames</string> </key>
<value> <value>
<tuple> <tuple>
<string>REQUEST</string>
<string>pprint</string> <string>pprint</string>
<string>pformat</string> <string>pformat</string>
<string>_getattr_</string> <string>_getattr_</string>
<string>context</string> <string>context</string>
<string>portal</string> <string>portal</string>
<string>request</string> <string>request</string>
<string>Products.ERP5Type.Utils</string>
<string>cartesianProduct</string>
<string>defined_group</string> <string>defined_group</string>
<string>_getiter_</string> <string>_getiter_</string>
<string>category</string> <string>category</string>
...@@ -305,13 +348,14 @@ return pformat(line_list)\n ...@@ -305,13 +348,14 @@ return pformat(line_list)\n
<string>budget</string> <string>budget</string>
<string>line_list</string> <string>line_list</string>
<string>isVisibleCell</string> <string>isVisibleCell</string>
<string>dict</string>
<string>True</string>
<string>budget_line</string> <string>budget_line</string>
<string>total_level_1_initial_budget</string> <string>total_level_1_initial_budget</string>
<string>total_level_1_current_budget</string> <string>total_level_1_current_budget</string>
<string>total_level_1_engaged_budget</string> <string>total_level_1_engaged_budget</string>
<string>total_level_1_consumed_budget</string> <string>total_level_1_consumed_budget</string>
<string>total_level_1_available_budget</string> <string>total_level_1_available_budget</string>
<string>dict</string>
<string>level_1_line_list</string> <string>level_1_line_list</string>
<string>variation_axis_list</string> <string>variation_axis_list</string>
<string>possible_axis</string> <string>possible_axis</string>
...@@ -322,12 +366,19 @@ return pformat(line_list)\n ...@@ -322,12 +366,19 @@ return pformat(line_list)\n
<string>$append0</string> <string>$append0</string>
<string>x</string> <string>x</string>
<string>level_3_variation_category_list</string> <string>level_3_variation_category_list</string>
<string>budget_line_vcl</string>
<string>budget_line_cell_range</string>
<string>title</string> <string>title</string>
<string>cell_name_dict</string> <string>cell_name_dict</string>
<string>cell_style_dict</string> <string>cell_style_dict</string>
<string>cell_depth_dict</string>
<string>min_depth</string>
<string>budget_line_as_cell_range_matrixbox</string>
<string>cell_range_list</string> <string>cell_range_list</string>
<string>min</string>
<string>_write_</string> <string>_write_</string>
<string>depth</string> <string>depth</string>
<string>higher_depth</string>
<string>level_2_category</string> <string>level_2_category</string>
<string>total_level_2_initial_budget</string> <string>total_level_2_initial_budget</string>
<string>total_level_2_current_budget</string> <string>total_level_2_current_budget</string>
...@@ -335,8 +386,11 @@ return pformat(line_list)\n ...@@ -335,8 +386,11 @@ return pformat(line_list)\n
<string>total_level_2_consumed_budget</string> <string>total_level_2_consumed_budget</string>
<string>total_level_2_available_budget</string> <string>total_level_2_available_budget</string>
<string>level_2_line_list</string> <string>level_2_line_list</string>
<string>is_higher_level2</string>
<string>level_3_category</string> <string>level_3_category</string>
<string>sign</string> <string>sign</string>
<string>cell_key</string>
<string>_apply_</string>
<string>cell</string> <string>cell</string>
<string>initial_budget</string> <string>initial_budget</string>
<string>current_budget</string> <string>current_budget</string>
...@@ -345,6 +399,9 @@ return pformat(line_list)\n ...@@ -345,6 +399,9 @@ return pformat(line_list)\n
<string>available_budget</string> <string>available_budget</string>
<string>_inplacevar_</string> <string>_inplacevar_</string>
<string>consumed_ratio</string> <string>consumed_ratio</string>
<string>line_count</string>
<string>line</string>
<string>same_type</string>
</tuple> </tuple>
</value> </value>
</item> </item>
...@@ -356,7 +413,9 @@ return pformat(line_list)\n ...@@ -356,7 +413,9 @@ return pformat(line_list)\n
<item> <item>
<key> <string>func_defaults</string> </key> <key> <string>func_defaults</string> </key>
<value> <value>
<none/> <tuple>
<none/>
</tuple>
</value> </value>
</item> </item>
<item> <item>
......
...@@ -93,7 +93,9 @@ AQABAEMAAAB9AQAAAAA=</string> </value> ...@@ -93,7 +93,9 @@ AQABAEMAAAB9AQAAAAA=</string> </value>
i18n:domain=\'ui\'\n i18n:domain=\'ui\'\n
office:version="1.2"\n office:version="1.2"\n
tal:attributes="dummy python:request.RESPONSE.setHeader(\'Content-Type\', \'text/html;; charset=utf-8\')"\n tal:attributes="dummy python:request.RESPONSE.setHeader(\'Content-Type\', \'text/html;; charset=utf-8\')"\n
tal:define="line_list here/Budget_getBudgetConsumptionReportData;\n tal:define="line_list_line_count here/Budget_getBudgetConsumptionReportData;\n
line_list python: line_list_line_count[0];\n
line_count python: line_list_line_count[1];\n
date_renderer nocall:here/Base_viewFieldLibrary/my_date/render_pdf;\n date_renderer nocall:here/Base_viewFieldLibrary/my_date/render_pdf;\n
start_date python:date_renderer(request.get(\'from_date\', here.getProperty(\'start_date_range_min\')));\n start_date python:date_renderer(request.get(\'from_date\', here.getProperty(\'start_date_range_min\')));\n
stop_date python:date_renderer(request.get(\'at_date\', here.getProperty(\'start_date_range_max\')));\n stop_date python:date_renderer(request.get(\'at_date\', here.getProperty(\'start_date_range_max\')));\n
...@@ -107,10 +109,10 @@ AQABAEMAAAB9AQAAAAA=</string> </value> ...@@ -107,10 +109,10 @@ AQABAEMAAAB9AQAAAAA=</string> </value>
</office:font-face-decls>\n </office:font-face-decls>\n
<office:automatic-styles>\n <office:automatic-styles>\n
<style:style style:name="co1" style:family="table-column">\n <style:style style:name="co1" style:family="table-column">\n
<style:table-column-properties fo:break-before="auto" style:column-width="0.676cm"/>\n <style:table-column-properties fo:break-before="auto" style:column-width="10cm"/>\n
</style:style>\n </style:style>\n
<style:style style:name="co2" style:family="table-column">\n <style:style style:name="co2" style:family="table-column">\n
<style:table-column-properties fo:break-before="auto" style:column-width="10cm"/>\n <style:table-column-properties fo:break-before="auto" style:column-width="2.7cm"/>\n
</style:style>\n </style:style>\n
<style:style style:name="co3" style:family="table-column">\n <style:style style:name="co3" style:family="table-column">\n
<style:table-column-properties fo:break-before="auto" style:column-width="2.7cm"/>\n <style:table-column-properties fo:break-before="auto" style:column-width="2.7cm"/>\n
...@@ -252,7 +254,7 @@ AQABAEMAAAB9AQAAAAA=</string> </value> ...@@ -252,7 +254,7 @@ AQABAEMAAAB9AQAAAAA=</string> </value>
<office:body>\n <office:body>\n
<office:spreadsheet>\n <office:spreadsheet>\n
<table:table table:name="Feuille1" table:style-name="ta1" table:print-ranges="Feuille1.A1:Feuille1.H11"\n <table:table table:name="Feuille1" table:style-name="ta1" table:print-ranges="Feuille1.A1:Feuille1.H11"\n
tal:attributes="table:print-ranges python:\'Feuille1.A1:Feuille1.H%d\' % (7 + len(line_list))">\n tal:attributes="table:print-ranges python:\'Feuille1.A1:Feuille1.G%d\' % (6 + line_count)">\n
\n \n
<office:forms form:automatic-focus="false" form:apply-design-mode="false"/>\n <office:forms form:automatic-focus="false" form:apply-design-mode="false"/>\n
<table:table-column table:style-name="co1" table:default-cell-style-name="ce2"/>\n <table:table-column table:style-name="co1" table:default-cell-style-name="ce2"/>\n
...@@ -260,7 +262,7 @@ AQABAEMAAAB9AQAAAAA=</string> </value> ...@@ -260,7 +262,7 @@ AQABAEMAAAB9AQAAAAA=</string> </value>
<table:table-column table:style-name="co3" table:number-columns-repeated="6" table:default-cell-style-name="Default"/>\n <table:table-column table:style-name="co3" table:number-columns-repeated="6" table:default-cell-style-name="Default"/>\n
<table:table-column table:style-name="co4" table:number-columns-repeated="1016" table:default-cell-style-name="Default"/>\n <table:table-column table:style-name="co4" table:number-columns-repeated="1016" table:default-cell-style-name="Default"/>\n
<table:table-row table:style-name="ro1">\n <table:table-row table:style-name="ro1">\n
<table:table-cell table:style-name="ce1" office:value-type="string" table:number-columns-spanned="8" table:number-rows-spanned="1">\n <table:table-cell table:style-name="ce1" office:value-type="string" table:number-columns-spanned="7" table:number-rows-spanned="1">\n
<text:p i18n:translate="">Budget Situation</text:p>\n <text:p i18n:translate="">Budget Situation</text:p>\n
</table:table-cell>\n </table:table-cell>\n
<table:covered-table-cell/>\n <table:covered-table-cell/>\n
...@@ -288,25 +290,32 @@ AQABAEMAAAB9AQAAAAA=</string> </value> ...@@ -288,25 +290,32 @@ AQABAEMAAAB9AQAAAAA=</string> </value>
<table:table-row table:style-name="ro2">\n <table:table-row table:style-name="ro2">\n
<table:table-cell table:number-columns-repeated="1024"/>\n <table:table-cell table:number-columns-repeated="1024"/>\n
</table:table-row>\n </table:table-row>\n
<table:table-row table:style-name="ro3">\n \n
<table:table-cell table:style-name="ce3" office:value-type="string" table:number-columns-spanned="2" table:number-rows-spanned="1">\n <tal:block tal:repeat="line line_list">\n
<text:p i18n:translate="">Budget Name</text:p>\n \n
<table:table-row table:style-name="ro3" tal:condition="line/is_budget | nothing">\n
<table:table-cell table:style-name="ce3" office:value-type="string">\n
<text:p tal:content="line/title">Budget Name</text:p>\n
</table:table-cell>\n </table:table-cell>\n
<table:covered-table-cell table:style-name="ce8"/>\n
<table:table-cell table:style-name="ce8" office:value-type="string">\n <table:table-cell table:style-name="ce8" office:value-type="string">\n
<text:p i18n:translate="">Initial Budget</text:p>\n <text:p i18n:translate="" tal:condition="not: line/resource_title">Initial Budget</text:p>\n
<text:p i18n:translate="" tal:condition="line/resource_title">Initial Budget (<i18n:block i18n:name="resource_title" tal:content="line/resource_title"/>)</text:p>\n
</table:table-cell>\n </table:table-cell>\n
<table:table-cell table:style-name="ce8" office:value-type="string">\n <table:table-cell table:style-name="ce8" office:value-type="string">\n
<text:p i18n:translate="">Current Budget</text:p>\n <text:p i18n:translate="" tal:condition="not: line/resource_title">Current Budget</text:p>\n
<text:p i18n:translate="" tal:condition="line/resource_title">Current Budget (<i18n:block i18n:name="resource_title" tal:content="line/resource_title"/>)</text:p>\n
</table:table-cell>\n </table:table-cell>\n
<table:table-cell table:style-name="ce8" office:value-type="string">\n <table:table-cell table:style-name="ce8" office:value-type="string">\n
<text:p i18n:translate="">Engaged Budget</text:p>\n <text:p i18n:translate="" tal:condition="not: line/resource_title">Engaged Budget</text:p>\n
<text:p i18n:translate="" tal:condition="line/resource_title">Engaged Budget (<i18n:block i18n:name="resource_title" tal:content="line/resource_title"/>)</text:p>\n
</table:table-cell>\n </table:table-cell>\n
<table:table-cell table:style-name="ce8" office:value-type="string">\n <table:table-cell table:style-name="ce8" office:value-type="string">\n
<text:p i18n:translate="">Consumed Budget</text:p>\n <text:p i18n:translate="" tal:condition="not: line/resource_title">Consumed Budget</text:p>\n
<text:p i18n:translate="" tal:condition="line/resource_title">Consumed Budget (<i18n:block i18n:name="resource_title" tal:content="line/resource_title"/>)</text:p>\n
</table:table-cell>\n </table:table-cell>\n
<table:table-cell table:style-name="ce8" office:value-type="string">\n <table:table-cell table:style-name="ce8" office:value-type="string">\n
<text:p i18n:translate="">Available Budget</text:p>\n <text:p i18n:translate="" tal:condition="not: line/resource_title">Available Budget</text:p>\n
<text:p i18n:translate="" tal:condition="line/resource_title">Available Budget (<i18n:block i18n:name="resource_title" tal:content="line/resource_title"/>)</text:p>\n
</table:table-cell>\n </table:table-cell>\n
<table:table-cell table:style-name="ce8" office:value-type="string">\n <table:table-cell table:style-name="ce8" office:value-type="string">\n
<text:p i18n:translate="">Percentage Realized</text:p>\n <text:p i18n:translate="">Percentage Realized</text:p>\n
...@@ -315,137 +324,93 @@ AQABAEMAAAB9AQAAAAA=</string> </value> ...@@ -315,137 +324,93 @@ AQABAEMAAAB9AQAAAAA=</string> </value>
<table:table-cell table:number-columns-repeated="768"/>\n <table:table-cell table:number-columns-repeated="768"/>\n
</table:table-row>\n </table:table-row>\n
\n \n
<tal:block tal:repeat="line line_list">\n
\n \n
<table:table-row table:style-name="Level1" tal:condition="line/is_level_1 | nothing">\n <table:table-row table:style-name="Level1" tal:condition="line/is_level_1 | nothing">\n
<table:table-cell table:style-name="Level1Cell1" office:value-type="string">\n <table:table-cell table:style-name="Level1Cell1" office:value-type="string">\n
<text:p tal:content="line/title">$level1</text:p>\n <text:p tal:content="line/title">$level1</text:p>\n
</table:table-cell>\n </table:table-cell>\n
<table:table-cell table:style-name="Level1" table:number-columns-repeated="7"/>\n <table:table-cell table:style-name="Level1" office:value-type="float" office:value="1" tal:attributes="office:value line/initial_budget">\n
<table:table-cell table:number-columns-repeated="768"/>\n
</table:table-row>\n
\n
<table:table-row table:style-name="Level2" \n
tal:condition="line/is_level_2 | nothing"\n
tal:define="style python:line.get(\'style\', \'Level2\')">\n
<table:table-cell table:style-name="Level2Cell1"\n
tal:attributes="table:style-name string:${style}Cell1"/>\n
<table:table-cell table:style-name="Level2" office:value-type="string"\n
tal:attributes="table:style-name style">\n
<text:p tal:content="line/title">$level 2</text:p>\n
</table:table-cell>\n
<table:table-cell table:style-name="Level2" table:number-columns-repeated="6"\n
tal:attributes="table:style-name style"/>\n
<table:table-cell table:number-columns-repeated="768"/>\n
</table:table-row>\n
\n
<table:table-row table:style-name="Level3" tal:condition="line/is_level_3 | nothing">\n
<table:table-cell table:style-name="Level3Cell1"/>\n
<table:table-cell table:style-name="Level3" office:value-type="string">\n
<text:p><text:s text:c="3"/><tal:block tal:replace="line/title"/></text:p>\n
</table:table-cell>\n
<table:table-cell table:style-name="Level3" office:value-type="float" office:value="1" tal:attributes="office:value line/initial_budget">\n
<text:p>1</text:p>\n
</table:table-cell>\n
<table:table-cell table:style-name="Level3" office:value-type="float" office:value="2" tal:attributes="office:value line/current_budget">\n
<text:p>2</text:p>\n
</table:table-cell>\n
<table:table-cell table:style-name="Level3" office:value-type="float" office:value="3" tal:attributes="office:value line/engaged_budget">\n
<text:p>3</text:p>\n
</table:table-cell>\n
<table:table-cell table:style-name="Level3" office:value-type="float" office:value="4" tal:attributes="office:value line/consumed_budget">\n
<text:p>4</text:p>\n
</table:table-cell>\n
<table:table-cell table:style-name="Level3" office:value-type="float" office:value="5" tal:attributes="office:value line/available_budget">\n
<text:p>5</text:p>\n
</table:table-cell>\n
<table:table-cell table:style-name="Level3" office:value-type="percentage" office:value="0.06" tal:attributes="office:value line/consumed_ratio">\n
<text:p>6,00%</text:p>\n
</table:table-cell>\n
<table:table-cell table:number-columns-repeated="1016"/>\n
</table:table-row>\n
\n
<table:table-row table:style-name="ro5" tal:condition="line/is_total_level_2 | nothing">\n
<table:table-cell table:style-name="ce6"/>\n
<table:table-cell table:style-name="ce12" office:value-type="string">\n
<text:p>TOTAL <tal:block tal:replace="line/title"/></text:p>\n
</table:table-cell>\n
<table:table-cell table:style-name="ce18" office:value-type="float" office:value="1" tal:attributes="office:value line/initial_budget">\n
<text:p>1</text:p>\n <text:p>1</text:p>\n
</table:table-cell>\n </table:table-cell>\n
<table:table-cell table:style-name="ce18" office:value-type="float" office:value="2" tal:attributes="office:value line/current_budget">\n <table:table-cell table:style-name="Level1" office:value-type="float" office:value="2" tal:attributes="office:value line/current_budget">\n
<text:p>2</text:p>\n <text:p>2</text:p>\n
</table:table-cell>\n </table:table-cell>\n
<table:table-cell table:style-name="ce18" office:value-type="float" office:value="3" tal:attributes="office:value line/engaged_budget">\n <table:table-cell table:style-name="Level1" office:value-type="float" office:value="3" tal:attributes="office:value line/engaged_budget">\n
<text:p>3</text:p>\n <text:p>3</text:p>\n
</table:table-cell>\n </table:table-cell>\n
<table:table-cell table:style-name="ce18" office:value-type="float" office:value="4" tal:attributes="office:value line/consumed_budget">\n <table:table-cell table:style-name="Level1" office:value-type="float" office:value="4" tal:attributes="office:value line/consumed_budget">\n
<text:p>4</text:p>\n <text:p>4</text:p>\n
</table:table-cell>\n </table:table-cell>\n
<table:table-cell table:style-name="ce18" office:value-type="float" office:value="5" tal:attributes="office:value line/available_budget">\n <table:table-cell table:style-name="Level1" office:value-type="float" office:value="5" tal:attributes="office:value line/available_budget">\n
<text:p>5</text:p>\n <text:p>5</text:p>\n
</table:table-cell>\n </table:table-cell>\n
<table:table-cell table:style-name="ce23" office:value-type="percentage" office:value="0.06" tal:attributes="office:value line/consumed_ratio">\n <table:table-cell table:style-name="Level1" office:value-type="percentage" office:value="0.06" tal:attributes="office:value line/consumed_ratio">\n
<text:p>6,00%</text:p>\n <text:p>6,00%</text:p>\n
</table:table-cell>\n </table:table-cell>\n
<table:table-cell table:style-name="ce27" table:number-columns-repeated="1016"/>\n
</table:table-row>\n
\n
\n
<table:table-row table:style-name="ro5" tal:condition="python: line.get(\'is_total_level_1\') and not line.get(\'is_last_line\')">\n
<table:table-cell table:style-name="ce7"/>\n
<table:table-cell table:style-name="ce13" office:value-type="string">\n
<text:p>TOTAL <tal:block tal:replace="line/title"/></text:p>\n
</table:table-cell>\n
<table:table-cell table:style-name="ce15" office:value-type="float" office:value="1" tal:attributes="office:value line/initial_budget">\n
<text:p>1</text:p>\n
</table:table-cell>\n
<table:table-cell table:style-name="ce15" office:value-type="float" office:value="2" tal:attributes="office:value line/current_budget">\n
<text:p>2</text:p>\n
</table:table-cell>\n
<table:table-cell table:style-name="ce15" office:value-type="float" office:value="3" tal:attributes="office:value line/engaged_budget">\n
<text:p>3</text:p>\n
</table:table-cell>\n
<table:table-cell table:style-name="ce15" office:value-type="float" office:value="4" tal:attributes="office:value line/consumed_budget">\n
<text:p>4</text:p>\n
</table:table-cell>\n
<table:table-cell table:style-name="ce15" office:value-type="float" office:value="5" tal:attributes="office:value line/available_budget">\n
<text:p>5</text:p>\n
</table:table-cell>\n
<table:table-cell table:style-name="ce24" office:value-type="percentage" office:value="0.06" tal:attributes="office:value line/consumed_ratio">\n
<text:p>6,00%</text:p>\n
</table:table-cell>\n
<table:table-cell table:style-name="ce26" table:number-columns-repeated="248"/>\n
<table:table-cell table:number-columns-repeated="768"/>\n <table:table-cell table:number-columns-repeated="768"/>\n
</table:table-row>\n </table:table-row>\n
\n \n
\n <table:table-row table:style-name="Level2" \n
<table:table-row table:style-name="ro4" tal:condition="line/is_last_line | nothing">\n tal:condition="line/is_level_2 | nothing">\n
<table:table-cell table:style-name="ce7"/>\n <tal:block tal:define="style python:line.get(\'style\', \'Level2\')">\n
<table:table-cell table:style-name="ce13" office:value-type="string">\n <table:table-cell table:style-name="Level2Cell1"\n
<text:p>TOTAL <tal:block tal:replace="line/title"/></text:p>\n tal:attributes="table:style-name string:${style}Cell1">\n
</table:table-cell>\n <text:p tal:content="line/title">$level 2</text:p>\n
<table:table-cell table:style-name="ce15" office:value-type="float" office:value="1" tal:attributes="office:value line/initial_budget">\n </table:table-cell>\n
<text:p>1</text:p>\n <table:table-cell table:style-name="ce18" office:value-type="float" office:value="1" tal:attributes="office:value line/initial_budget; table:style-name style">\n
</table:table-cell>\n <text:p>1</text:p>\n
<table:table-cell table:style-name="ce15" office:value-type="float" office:value="2" tal:attributes="office:value line/current_budget">\n </table:table-cell>\n
<text:p>2</text:p>\n <table:table-cell table:style-name="ce18" office:value-type="float" office:value="2" tal:attributes="office:value line/current_budget; table:style-name style">\n
</table:table-cell>\n <text:p>2</text:p>\n
<table:table-cell table:style-name="ce15" office:value-type="float" office:value="3" tal:attributes="office:value line/engaged_budget">\n </table:table-cell>\n
<text:p>3</text:p>\n <table:table-cell table:style-name="ce18" office:value-type="float" office:value="3" tal:attributes="office:value line/engaged_budget; table:style-name style">\n
</table:table-cell>\n <text:p>3</text:p>\n
<table:table-cell table:style-name="ce15" office:value-type="float" office:value="4" tal:attributes="office:value line/consumed_budget">\n </table:table-cell>\n
<text:p>4</text:p>\n <table:table-cell table:style-name="ce18" office:value-type="float" office:value="4" tal:attributes="office:value line/consumed_budget; table:style-name style">\n
</table:table-cell>\n <text:p>4</text:p>\n
<table:table-cell table:style-name="ce15" office:value-type="float" office:value="5" tal:attributes="office:value line/available_budget">\n </table:table-cell>\n
<text:p>5</text:p>\n <table:table-cell table:style-name="ce18" office:value-type="float" office:value="5" tal:attributes="office:value line/available_budget; table:style-name style">\n
</table:table-cell>\n <text:p>5</text:p>\n
<table:table-cell table:style-name="ce24" office:value-type="percentage" office:value="0.06" tal:attributes="office:value line/consumed_ratio">\n </table:table-cell>\n
<text:p>6,00%</text:p>\n <table:table-cell table:style-name="ce23" office:value-type="percentage" office:value="0.06" tal:attributes="office:value line/consumed_ratio; table:style-name style">\n
</table:table-cell>\n <text:p>6,00%</text:p>\n
<table:table-cell table:style-name="ce26" table:number-columns-repeated="248"/>\n </table:table-cell>\n
<table:table-cell table:number-columns-repeated="768"/>\n <table:table-cell table:number-columns-repeated="768"/>\n
</tal:block>\n
</table:table-row>\n </table:table-row>\n
\n
<tal:block tal:condition="python: same_type(line, [])">\n
<table:table-row-group table:display="false">\n
<tal:block tal:repeat="subline line">\n
<table:table-row table:style-name="Level3" \n
tal:attributes="table:visibility python: repeat[\'subline\'].first and \'collapse\' or None"\n
tal:condition="subline/is_level_3 | nothing">\n
<table:table-cell table:style-name="Level3Cell1" office:value-type="string">\n
<text:p><tal:block tal:replace="subline/title"/></text:p>\n
</table:table-cell>\n
<table:table-cell table:style-name="Level3" office:value-type="float" office:value="1" tal:attributes="office:value subline/initial_budget">\n
<text:p>1</text:p>\n
</table:table-cell>\n
<table:table-cell table:style-name="Level3" office:value-type="float" office:value="2" tal:attributes="office:value subline/current_budget">\n
<text:p>2</text:p>\n
</table:table-cell>\n
<table:table-cell table:style-name="Level3" office:value-type="float" office:value="3" tal:attributes="office:value subline/engaged_budget">\n
<text:p>3</text:p>\n
</table:table-cell>\n
<table:table-cell table:style-name="Level3" office:value-type="float" office:value="4" tal:attributes="office:value subline/consumed_budget">\n
<text:p>4</text:p>\n
</table:table-cell>\n
<table:table-cell table:style-name="Level3" office:value-type="float" office:value="5" tal:attributes="office:value subline/available_budget">\n
<text:p>5</text:p>\n
</table:table-cell>\n
<table:table-cell table:style-name="Level3" office:value-type="percentage" office:value="0.06" tal:attributes="office:value subline/consumed_ratio">\n
<text:p>6,00%</text:p>\n
</table:table-cell>\n
<table:table-cell table:number-columns-repeated="1016"/>\n
</table:table-row>\n
</tal:block>\n
</table:table-row-group>\n
</tal:block>\n
\n \n
</tal:block>\n </tal:block>\n
</table:table>\n </table:table>\n
......
...@@ -11,7 +11,7 @@ ...@@ -11,7 +11,7 @@
<dictionary> <dictionary>
<item> <item>
<key> <string>_EtagSupport__etag</string> </key> <key> <string>_EtagSupport__etag</string> </key>
<value> <string>ts57189905.65</string> </value> <value> <string>ts57433893.89</string> </value>
</item> </item>
<item> <item>
<key> <string>__name__</string> </key> <key> <string>__name__</string> </key>
...@@ -23,291 +23,291 @@ ...@@ -23,291 +23,291 @@
</item> </item>
<item> <item>
<key> <string>data</string> </key> <key> <string>data</string> </key>
<value> <string encoding="base64">UEsDBBQAAAAAAC2MYjuFbDmKLgAAAC4AAAAIAAAAbWltZXR5cGVhcHBsaWNhdGlvbi92bmQub2Fz <value> <string encoding="base64">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 IHhtbG5zOm9mZmljZT0idXJuOm9hc2lzOm5hbWVzOnRjOm9wZW5kb2N1bWVudDp4bWxuczpvZmZp
TmrikMXC1WZTG+t8YJrMFwiJskmbVWdlQ6b/El9od4YypCpiXwp3Q5SZRPk5abKbT2TTUc3sk05M Y2U6MS4wIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgeG1sbnM6
LgiynvKzUlJOO2w7kch7UcO0FQuUbszYgU/I063lRHS6vbHz7+LfwRHCuLO7Dx8+3ErlwqTEr4FW ZGM9Imh0dHA6Ly9wdXJsLm9yZy9kYy9lbGVtZW50cy8xLjEvIiB4bWxuczptZXRhPSJ1cm46b2Fz
jYdSHNSPLVUhWGTnM5U9+UDFjE9t7pSUgVxZLU+5PotAf4WntH3OBB0M8wX6CLfbRa2xS8HfMDzQ aXM6bmFtZXM6dGM6b3BlbmRvY3VtZW50OnhtbG5zOm1ldGE6MS4wIiB4bWxuczpvb289Imh0dHA6
bWvKX4rZs0yz+CmmC+3QyZPEn38uaCkTszJokRnms7Xc0OftG/f7VGGREYnssI4sgWR5KyqKKBNF Ly9vcGVub2ZmaWNlLm9yZy8yMDA0L29mZmljZSIgb2ZmaWNlOnZlcnNpb249IjEuMiI+CiA8b2Zm
yKqkKBItSbiihHd/WqQCEGmUzU7TdqqeCVEGX1mEF1YnAsuFlCdkh7Z3222eMC67AHyzWFQKOFm5 aWNlOm1ldGE+CiAgCiAgCiAgCiAgCiAgCiAgCiAgPG1ldGE6Z2VuZXJhdG9yPk9wZW5PZmZpY2Uu
iYzIzZKD4O7/UEsHCGyv3v9XDAAAAJcAAFBLAwQUAAAAAAAtjGI7kZlpE8cEAADHBAAACAAAAG1l b3JnLzMuMCRVbml4IE9wZW5PZmZpY2Uub3JnX3Byb2plY3QvMzAwbTkkQnVpbGQtOTM1ODwvbWV0
dGEueG1sPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KCjxvZmZpY2U6ZG9j YTpnZW5lcmF0b3I+CiAgCiAgCiAgCiAgCiAgCiAgCiAgPG1ldGE6Y3JlYXRpb24tZGF0ZT4yMDA5
dW1lbnQtbWV0YSB4bWxuczpvZmZpY2U9InVybjpvYXNpczpuYW1lczp0YzpvcGVuZG9jdW1lbnQ6 LTAxLTIzVDEyOjA0OjMyPC9tZXRhOmNyZWF0aW9uLWRhdGU+CiAgCiAgCiAgCiAgCiAgCiAgCiAg
eG1sbnM6b2ZmaWNlOjEuMCIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxp PGRjOmRhdGU+MjAwOS0xMS0wNVQxNjoxMTowNzwvZGM6ZGF0ZT4KICAKICAKICAKICAKICAKICAK
bmsiIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIgeG1sbnM6bWV0 ICA8ZGM6bGFuZ3VhZ2U+ZnItRlI8L2RjOmxhbmd1YWdlPgogIAogIAogIAogIAogIAogIAogIDxt
YT0idXJuOm9hc2lzOm5hbWVzOnRjOm9wZW5kb2N1bWVudDp4bWxuczptZXRhOjEuMCIgeG1sbnM6 ZXRhOmVkaXRpbmctY3ljbGVzPjIyPC9tZXRhOmVkaXRpbmctY3ljbGVzPgogIAogIAogIAogIAog
b29vPSJodHRwOi8vb3Blbm9mZmljZS5vcmcvMjAwNC9vZmZpY2UiIG9mZmljZTp2ZXJzaW9uPSIx IAogIAogIDxtZXRhOmVkaXRpbmctZHVyYXRpb24+UFQxM0gwM00wMlM8L21ldGE6ZWRpdGluZy1k
LjIiPgogPG9mZmljZTptZXRhPgogIAogIAogIAogIAogIAogIDxtZXRhOmdlbmVyYXRvcj5PcGVu dXJhdGlvbj4KICAKICAKICAKICAKICAKICAKICA8ZGM6Y3JlYXRvcj5Kw6lyb21lIFBlcnJpbjwv
T2ZmaWNlLm9yZy8zLjAkVW5peCBPcGVuT2ZmaWNlLm9yZ19wcm9qZWN0LzMwMG05JEJ1aWxkLTkz ZGM6Y3JlYXRvcj4KICAKICAKICAKICAKICAKICAKICAKICAKICAKICAKICAKICAKICAKICAKICAK
NTg8L21ldGE6Z2VuZXJhdG9yPgogIAogIAogIAogIAogIAogIDxtZXRhOmNyZWF0aW9uLWRhdGU+ ICAKICAKICAKICAKICAKICAKICAKICAKICAKICAKICAKICAKICAKICAKICAKICA8bWV0YTpwcmlu
MjAwOS0wMS0yM1QxMjowNDozMjwvbWV0YTpjcmVhdGlvbi1kYXRlPgogIAogIAogIAogIAogIAog dGVkLWJ5PkrDqXJvbWUgUGVycmluPC9tZXRhOnByaW50ZWQtYnk+CiAgPG1ldGE6cHJpbnQtZGF0
IDxkYzpkYXRlPjIwMDktMTEtMDJUMTg6MzM6MjY8L2RjOmRhdGU+CiAgCiAgCiAgCiAgCiAgCiAg ZT4yMDA5LTExLTA1VDE0OjM3OjQwPC9tZXRhOnByaW50LWRhdGU+CiAgPG1ldGE6ZG9jdW1lbnQt
PGRjOmxhbmd1YWdlPmZyLUZSPC9kYzpsYW5ndWFnZT4KICAKICAKICAKICAKICAKICA8bWV0YTpl c3RhdGlzdGljIG1ldGE6dGFibGUtY291bnQ9IjMiIG1ldGE6Y2VsbC1jb3VudD0iNDYiIG1ldGE6
ZGl0aW5nLWN5Y2xlcz4xNzwvbWV0YTplZGl0aW5nLWN5Y2xlcz4KICAKICAKICAKICAKICAKICA8 b2JqZWN0LWNvdW50PSIwIi8+CiAgPG1ldGE6dXNlci1kZWZpbmVkIG1ldGE6bmFtZT0iSW5mbyAx
bWV0YTplZGl0aW5nLWR1cmF0aW9uPlBUMTFIMDRNNTdTPC9tZXRhOmVkaXRpbmctZHVyYXRpb24+ Ii8+CiAgPG1ldGE6dXNlci1kZWZpbmVkIG1ldGE6bmFtZT0iSW5mbyAyIi8+CiAgPG1ldGE6dXNl
CiAgCiAgCiAgCiAgCiAgCiAgPGRjOmNyZWF0b3I+SsOpcm9tZSBQZXJyaW48L2RjOmNyZWF0b3I+ ci1kZWZpbmVkIG1ldGE6bmFtZT0iSW5mbyAzIi8+CiAgPG1ldGE6dXNlci1kZWZpbmVkIG1ldGE6
CiAgCiAgCiAgCiAgCiAgCiAgCiAgCiAgCiAgCiAgCiAgCiAgCiAgCiAgCiAgCiAgCiAgCiAgCiAg bmFtZT0iSW5mbyA0Ii8+PC9vZmZpY2U6bWV0YT4KPC9vZmZpY2U6ZG9jdW1lbnQtbWV0YT5QSwME
CiAgCiAgCiAgCiAgCiAgCiAgCiAgPG1ldGE6ZG9jdW1lbnQtc3RhdGlzdGljIG1ldGE6dGFibGUt FAAIAAgAY3llOwAAAAAAAAAAAAAAABgAAABUaHVtYm5haWxzL3RodW1ibmFpbC5wbmftWPc3XHHT
Y291bnQ9IjMiIG1ldGE6Y2VsbC1jb3VudD0iNjYiIG1ldGE6b2JqZWN0LWNvdW50PSIwIi8+CiAg 17voQbArRLSIkgRRV69B9BJddCHBqkGityzRe9ToVvSy2NWCFaKHLNFWXb3Xd/OU8573nPec5x94
PG1ldGE6dXNlci1kZWZpbmVkIG1ldGE6bmFtZT0iSW5mbyAxIi8+CiAgPG1ldGE6dXNlci1kZWZp 7i/3njl3Zr535jPzmbnROloqlGT3yHBwcCjVVBV1sfdRHBxcHBIi7BMCc7aLg8O8paYop++bjcmR
bmVkIG1ldGE6bmFtZT0iSW5mbyAyIi8+CiAgPG1ldGE6dXNlci1kZWZpbmVkIG1ldGE6bmFtZT0i dWVVuu1z4Ppo9xXHVQ5ugleU/vF7RFOUgJz11z8prDGMNnJwpSWlwWL2b3RkrtH0jeQWAyW+8K86
SW5mbyAzIi8+CiAgPG1ldGE6dXNlci1kZWZpbmVkIG1ldGE6bmFtZT0iSW5mbyA0Ii8+PC9vZmZp 7Q6kCe94o1x9Y3t05xFg3M85SyrYd004VJ+TFaysCkC5dLfd83b9Hnt6tp2ghn91wAJkUr3b6uo8
Y2U6bWV0YT4KPC9vZmZpY2U6ZG9jdW1lbnQtbWV0YT5QSwMEFAAIAAgALYxiOwAAAAAAAAAAAAAA JT0Pt69uf3B27PLLq7pJvRulAqlm54eoKkDBtsPA55IFUx2Wem6RsxOJO5x81yamlO1SfwjPpAWP
ABgAAABUaHVtYm5haWxzL3RodW1ibmFpbC5wbmftV2k4FO67Hik0DSpky0gqUlEI2SNEthlDjK2S Ss1kfx/U3w4MqHUelmk9O5iPatJrTrGJZDzJsdYBFd0Xvz4dd5Zuqi5xKDHoX2ZzPm4zaPDz0as2
XfZtjH3NHlnHMjQMxlpEjPWHiOyG1NiXkbHvYzDH/5zz6VznOp/Oh/PhvNd1X+/74f3wvPfzPPf7 H7SgFUsqK+MNpwDYnbUGdrJZzPhEyOEmRuAsbYj/ztfqANMWQ4jlnLS4tNXQAAnhB2s8bCu5wOlV
3NH6uhrMQB4gAABg1nz+DHq2EwAAOgATw9npVodEKQDAdUnz2VOYb/bapJITmy0/4+a0ZmFyu/4K 8S+VySIjax3ph9yCmuVXNX40SgeYokyYuNkjEwSirvPwZvf0eiIj2bS9g2dNIZhN99ByOICe2omE
E8P1EtgXOf0nBfS1zxizQrR0o2qjl4MFU7Xcoj6dl7384uEMqHzhYcodhyhZaMlbieDk4RDjT6r9 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 b25maWd1cmF0aW9uczIvbWVudWJhci9QSwMEFAAAAAAAY3llOwAAAAAAAAAAAAAAABgAAABDb25m
AAAAHwAAAENvbmZpZ3VyYXRpb25zMi9pbWFnZXMvQml0bWFwcy9QSwMEFAAAAAAALYxiOwAAAAAA aWd1cmF0aW9uczIvdG9vbGJhci9QSwMEFAAAAAAAY3llOwAAAAAAAAAAAAAAAB8AAABDb25maWd1
AAAAAAAAABoAAABDb25maWd1cmF0aW9uczIvc3RhdHVzYmFyL1BLAwQUAAgACAAtjGI7AAAAAAAA cmF0aW9uczIvaW1hZ2VzL0JpdG1hcHMvUEsDBBQAAAAAAGN5ZTsAAAAAAAAAAAAAAAAaAAAAQ29u
AAAAAAAADAAAAHNldHRpbmdzLnhtbM1abXeiOhD+vr/Cw9d7uiK23aundQ9qXdutbcV3vgVIJTUk ZmlndXJhdGlvbnMyL3N0YXR1c2Jhci9QSwMEFAAIAAgAY3llOwAAAAAAAAAAAAAAAAwAAABzZXR0
bBJ86a+/QbSnS8ViBc/1i0eSzDMzmckzE7z6ufRwYQ4ZR5RcK6XvqlKAxKYOItNrZdBvnf2r/Kx9 aW5ncy54bWzNWm1zqjoQ/n5+hcPXO62Ibe/RaT2Dtvbl1Fbxpcq3AKmmhoSTBNH++htEOz1UFCs4
+3ZFn5+RDasOtQMPEnHGoRByDi/I9YRXo+FrJWCkSgFHvEqAB3lV2FXqQ7JdVn0/u7pGi54sMSKz 1y8OJNlnd9nNsxu4/DV3cWEGGUeUXCmlU1UpQGJTB5HxldLvNU9+Kr9qP35c0tdXZMOqQ23fhUSc
a8UVwq8Wi4vF4vui/J2yabFUqVSK69HtVJuSZzRNCxXNfg9FKX0DChdEyqzBNFU9L0a/lcJGyXe+ cCiEnMMLcj3h1Wj4SvEZqVLAEa8S4EJeFXaVepCsl1U/z64u0aI7c4zI9EqZCOFVi8UgCE6D8ill
0ZTat8LWE1sHyEeFqw1K9HWGBPRCBxU2j0P9rhWJW50juHhzXSht59q/1w0RRxaGOoOgT31lOyhW 42KpUqkUl6PrqTYlr2icFiqa/RmKUvoBFC6IlFmCaap6VoyulcJKyU++0ZTaj8LaE2sHyFuFyxVK
vhxERCg19ar4UcjBwu/hs8hP+gg5wt0lXvtxWTrPBKIN0dTdacKP88MgzjzgnyHiwCV04nBwsdm4 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
DwAPAO4DAABGOwAAAAA=</string> </value> AAAAAAAAAAAA4zkAAE1FVEEtSU5GL21hbmlmZXN0LnhtbFBLBQYAAAAADwAPAO4DAABwOwAAAAA=</string> </value>
</item> </item>
<item> <item>
<key> <string>precondition</string> </key> <key> <string>precondition</string> </key>
...@@ -315,7 +315,7 @@ DwAPAO4DAABGOwAAAAA=</string> </value> ...@@ -315,7 +315,7 @@ DwAPAO4DAABGOwAAAAA=</string> </value>
</item> </item>
<item> <item>
<key> <string>size</string> </key> <key> <string>size</string> </key>
<value> <int>16202</int> </value> <value> <int>16244</int> </value>
</item> </item>
<item> <item>
<key> <string>title</string> </key> <key> <string>title</string> </key>
......
251 254
\ No newline at end of file \ No newline at end of file
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment