diff --git a/office-alexander-logistics-app/src/main/resources/META-INF/persistence.xml b/office-alexander-logistics-app/src/main/resources/META-INF/persistence.xml
index 303852f..9344add 100644
--- a/office-alexander-logistics-app/src/main/resources/META-INF/persistence.xml
+++ b/office-alexander-logistics-app/src/main/resources/META-INF/persistence.xml
@@ -9,7 +9,7 @@
org.eclipse.persistence.jpa.PersistenceProvider
${imixs-office.jta-data-source}
lib/imixs-workflow-engine-${org.imixs.workflow.version}.jar
- lib/imixs-marty-ejb-${org.imixs.marty.version}.jar
+ lib/imixs-marty-${org.imixs.marty.version}.jar
diff --git a/office-alexander-logistics-app/src/main/webapp/js/imixs-office.workitem.custom.js b/office-alexander-logistics-app/src/main/webapp/js/imixs-office.workitem.custom.js
index 6003079..b12836c 100644
--- a/office-alexander-logistics-app/src/main/webapp/js/imixs-office.workitem.custom.js
+++ b/office-alexander-logistics-app/src/main/webapp/js/imixs-office.workitem.custom.js
@@ -1,25 +1,106 @@
// custom scripts
+// Zusatzfunktionen zur schnelleren Datumseingabe
/**
- * Hier fuellen wir die Buchungsperiode falls nichts eingetragen
- * - Change 9.2.2021 - keine Vorbefuellung mehr!
*
*/
$(document).ready(function() {
- // check data-item invoice-date and invoice-period....
- /* - disabled 9.2.2021
- date = $("input[data-item='invoice.date']");
- period=$("input[data-item='invoice.period']");
- if (period && date) {
- if (date.val()!="" && period.val()=="") {
- // no data - so build the period from 05.12.2020
- part1=date.val().substring(6,10);
- part2=date.val().substring(3,5);
- newval=""+part1 +part2;
- $("input[data-item='invoice.period']").val(newval);
+ /*
+ * Hier berechnen wir anhand der Eingabe im Feld alexander-logistic-date-days
+ * ein neues Datum auf basis des Rechnungsdatum (date_invoice)
+ */
+ $(".alexander-logistic-date-days").change(function(e) {
+ var days = $(this).val();
+ if (days=='') {
+ return true;
}
+
+ // find the basis date 'date_invoice'
+ var basisDateString=$("input[id$='date_invoice']").val();
+ const parts = basisDateString.split(".");
+ var basisDay=parts[0];
+ var basisMonth=parts[1];
+ var basisYear=parts[2];
+
+
+ var basisDate = new Date();
+ basisDate.setFullYear(basisYear);
+ basisDate.setMonth(basisMonth-1);
+ basisDate.setDate(basisDay);
+
+
+ // get days,month,year from
+ var newDate = new Date(basisDate.getTime() + (days * 24 * 60 * 60 * 1000));
+
+ var day = '' + newDate.getDate();
+ if (day.length == 1) {
+ day = '0' + day;
+ }
+ var month = '' + (newDate.getMonth() + 1);
+ if (month.length == 1) {
+ month = '0' + month;
+ }
+ var year = '' + newDate.getFullYear();
+ year = year.substring(2);
+
+ // ddmmyy
+ var dateFormated = day + month + year;
+ //alert(dateFormated);
+
+ var dateInput=$(this).next();
+ dateInput.val(dateFormated);
+ validateBuchungsDatum(dateInput);
+
+ // clear input
+ $(this).val('');
+
+ });
+
+});
+
+
+
+// erweitere datums eingabe
+// TTMM
+// TTMMYY
+// TT-MM-YY
+// TT.MM.YY
+// jahreszahl falls zweistellig
+function validateBuchungsDatum(item) {
+
+ //var mhd = $("[id$=mhdinput_id]");
+ var mhd = $(item);
+ var text = $(mhd).val();
+
+ while (text.indexOf('-') > -1) {
+ text = text.replace("-", ".");
}
- */
-
-});
\ No newline at end of file
+ var d = new Date();
+
+ // check for TTMMYY
+ if (text.length == 6 && text.indexOf('.') == -1) {
+ text = text.substring(0, 2) + "." + text.substring(2, 4)
+ + ".20" + text.substring(4);
+ }
+
+ // check for TTMM
+ if (text.length == 4 && text.indexOf('.') == -1) {
+ text = text.substring(0, 2) + "." + text.substring(2);
+ text = text + "." + d.getFullYear();
+ }
+
+ // check for missing full year
+ var n = text.lastIndexOf(".");
+ if (n > 0 && n > text.length - 4) {
+ // we insert 20
+ var left = text.substring(0, n + 1);
+ var right = text.substring(n + 1);
+ text = left + "20" + right;
+ }
+
+ // update field....
+ $(mhd).val(text);
+
+
+}
diff --git a/office-alexander-logistics-app/src/main/webapp/layout/css/custom.css b/office-alexander-logistics-app/src/main/webapp/layout/css/custom.css
index 94f58e1..47eb6c4 100644
--- a/office-alexander-logistics-app/src/main/webapp/layout/css/custom.css
+++ b/office-alexander-logistics-app/src/main/webapp/layout/css/custom.css
@@ -1,2 +1,10 @@
/* Custom Design */
+
+.alexander-logistic-date {
+ width: 110px !important;
+ background: url(./calendar_14.png) no-repeat scroll left center white
+ !important;
+ background-position: 4px 6px, center !important;
+ padding-left: 22px !important;
+}
\ No newline at end of file
diff --git a/office-alexander-logistics-app/src/main/webapp/pages/workitems/parts/alexander/datumseingabe.xhtml b/office-alexander-logistics-app/src/main/webapp/pages/workitems/parts/alexander/datumseingabe.xhtml
new file mode 100644
index 0000000..c1975b7
--- /dev/null
+++ b/office-alexander-logistics-app/src/main/webapp/pages/workitems/parts/alexander/datumseingabe.xhtml
@@ -0,0 +1,19 @@
+
+
+
+
+
+
+
+
+
+
+
diff --git a/office-alexander-logistics-app/src/main/webapp/pages/workitems/parts/alexander/datumseingabe_tage.xhtml b/office-alexander-logistics-app/src/main/webapp/pages/workitems/parts/alexander/datumseingabe_tage.xhtml
new file mode 100644
index 0000000..bc544c8
--- /dev/null
+++ b/office-alexander-logistics-app/src/main/webapp/pages/workitems/parts/alexander/datumseingabe_tage.xhtml
@@ -0,0 +1,22 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/workflow/rechnungseingang-de-1.2.12.bpmn b/workflow/rechnungseingang-de-1.2.12.bpmn
new file mode 100644
index 0000000..88755a3
--- /dev/null
+++ b/workflow/rechnungseingang-de-1.2.12.bpmn
@@ -0,0 +1,6681 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Task_2
+ ExclusiveGateway_1
+ StartEvent_1
+ IntermediateCatchEvent_3
+ IntermediateCatchEvent_6
+ IntermediateCatchEvent_27
+ Task_14
+ EventBasedGateway_1
+ Task_13
+ IntermediateCatchEvent_30
+ Task_10
+ IntermediateCatchEvent_13
+ EndEvent_4
+ EndEvent_5
+ IntermediateCatchEvent_5000-20
+ IntermediateCatchEvent_31
+ IntermediateCatchEvent_40
+ IntermediateThrowEvent_4
+ EventBasedGateway_3
+ IntermediateCatchEvent_19
+ IntermediateThrowEvent_3
+ IntermediateCatchEvent_49
+
+
+ EndEvent_1
+ IntermediateCatchEvent_12
+ Task_4
+ IntermediateCatchEvent_25
+ Task_12
+ Task_5005
+ IntermediateCatchEvent_32
+ EventBasedGateway_2
+ IntermediateCatchEvent_42
+ IntermediateCatchEvent_26
+ IntermediateCatchEvent_21
+ IntermediateThrowEvent_2
+ IntermediateCatchEvent_28
+ IntermediateCatchEvent_2
+ ExclusiveGateway_6
+ IntermediateCatchEvent_5005-20
+ IntermediateCatchEvent_5005-30
+ IntermediateThrowEvent_8
+ IntermediateCatchEvent_36
+ IntermediateCatchEvent_5005-10
+ ExclusiveGateway_7
+
+
+ ExclusiveGateway_3
+ Task_18
+ IntermediateCatchEvent_51
+ IntermediateThrowEvent_6
+ IntermediateCatchEvent_53
+ Task_17
+ EventBasedGateway_6
+ IntermediateCatchEvent_47
+ EventBasedGateway_5
+ IntermediateCatchEvent_43
+ IntermediateCatchEvent_44
+ IntermediateCatchEvent_54
+ IntermediateThrowEvent_7
+ ExclusiveGateway_8
+ IntermediateCatchEvent_52
+
+
+ IntermediateCatchEvent_10
+ IntermediateCatchEvent_11
+ IntermediateThrowEvent_5
+ IntermediateCatchEvent_1
+ IntermediateCatchEvent_9
+ IntermediateCatchEvent_45
+ Task_1
+
+
+ Task_3
+ IntermediateCatchEvent_35
+ EndEvent_3
+ Task_5000
+ IntermediateCatchEvent_5000-10
+ IntermediateCatchEvent_33
+ IntermediateCatchEvent_4
+ IntermediateCatchEvent_38
+ ExclusiveGateway_2
+ IntermediateCatchEvent_15
+ EndEvent_6
+ Task_6
+ IntermediateCatchEvent_39
+ IntermediateCatchEvent_17
+ Task_15
+ EventBasedGateway_4
+ IntermediateCatchEvent_14
+ Task_16
+ Task_7
+ IntermediateCatchEvent_5
+ IntermediateCatchEvent_37
+ IntermediateCatchEvent_18
+ IntermediateCatchEvent_24
+ Task_8
+ IntermediateCatchEvent_20
+ IntermediateCatchEvent_22
+ Task_11
+ IntermediateCatchEvent_34
+ IntermediateCatchEvent_8
+ IntermediateCatchEvent_16
+ Task_5
+ Task_9
+ IntermediateThrowEvent_1
+ IntermediateCatchEvent_7
+ IntermediateCatchEvent_23
+ IntermediateCatchEvent_41
+ EndEvent_2
+ IntermediateCatchEvent_46
+ IntermediateCatchEvent_48
+ IntermediateCatchEvent_29
+
+
+
+
+
+
+
+
+ txtlastcomment
+numsequencenumber_sub]]>
+
+
+
+
+
+
+
+
+ _imgnumsequencenumber: cdtr.name invoice.number (invoice.currency invoice.total) space.name]]>
+
+
+ true
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ $workflowgroup - $workflowstatus]]>
+ SequenceFlow_31
+ SequenceFlow_1
+ SequenceFlow_32
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ]]>
+
+
+
+
+
+
+
+
+
+
+
+ false
+
+
+
+ SequenceFlow_31
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ home]]>
+
+
+
+
+
+
+
+
+ space.name]]>
+
+
+ false
+
+
+
+
+
+
+ SequenceFlow_46
+ SequenceFlow_24
+
+
+ SequenceFlow_0
+ SequenceFlow_15
+ SequenceFlow_21
+ SequenceFlow_33
+
+
+
+ SequenceFlow_0
+
+
+
+
+
+
+
+
+ txtlastcomment]]>
+
+
+
+
+
+
+
+
+ _imgnumsequencenumber: cdtr.name invoice.number (invoice.currency invoice.total) space.name]]>
+
+
+ true
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ $workflowgroup - $workflowstatus]]>
+ SequenceFlow_38
+ SequenceFlow_75
+ SequenceFlow_83
+ SequenceFlow_106
+ SequenceFlow_37
+ SequenceFlow_10
+
+
+
+
+
+
+
+
+
+
+
+ _subject]]>
+
+
+
+
+
+
+
+
+ _amount (Brutto € _amount_brutto)
+_description]]>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ home
+- space.name
+
+cargosoft-export-1.0
+1000
+100
+(?!txtworkflowhistory)(^[a-zA-Z]|^_)
+]]>
+
+
+
+
+
+
+
+
+
+
+
+ false
+
+
+ 0 && (parseFloat(a)!=parseFloat(b)) ) {
+ result.isValid=false;
+ result.errorMessage="Der Rechnungsbetrag " + a+ " stimmt nicht mit dem Positionsbetrag " + b + " überein.";
+ }]]>
+
+
+
+ SequenceFlow_8
+ SequenceFlow_111
+ SequenceFlow_51
+
+
+ DataOutput_1
+
+
+ DataOutput_1
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+false]]>
+
+
+
+
+
+
+
+
+
+
+
+ false
+
+
+
+ SequenceFlow_38
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ home
+- space.name
+
+false]]>
+
+
+
+
+
+
+
+
+
+
+
+ false
+
+
+
+
+
+
+ SequenceFlow_10
+ SequenceFlow_97
+ SequenceFlow_110
+
+
+ SequenceFlow_37
+ SequenceFlow_8
+ SequenceFlow_54
+ SequenceFlow_96
+
+
+
+
+
+
+
+
+
+ txtlastcomment]]>
+
+
+
+
+
+
+
+
+ cdtr.name invoice.number (invoice.currency invoice.total) space.name]]>
+
+
+ true
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ $workflowgroup - $workflowstatus]]>
+ SequenceFlow_33
+ SequenceFlow_95
+ SequenceFlow_49
+ SequenceFlow_20
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+]]>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+suggest
+false]]>
+
+
+
+
+
+
+
+
+
+
+
+ false
+
+
+
+
+ SequenceFlow_22
+ SequenceFlow_77
+
+
+
+
+
+
+
+ txtlastcomment
+numsequencenumber_sub]]>
+
+
+
+
+
+
+
+
+ _imgnumsequencenumber: cdtr.name invoice.number (invoice.currency invoice.total) space.name]]>
+
+
+ true
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ $workflowgroup - $workflowstatus]]>
+ SequenceFlow_67
+ SequenceFlow_56
+ SequenceFlow_55
+ SequenceFlow_50
+ SequenceFlow_81
+ SequenceFlow_88
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ home
+false]]>
+
+
+
+
+
+
+
+
+
+
+
+ false
+
+
+
+
+
+
+ SequenceFlow_29
+ SequenceFlow_2
+
+
+ SequenceFlow_32
+ SequenceFlow_29
+ SequenceFlow_30
+
+
+
+
+
+
+
+
+
+
+ _subject]]>
+
+
+
+
+
+
+
+
+ _amount (Brutto € _amount_brutto)
+_description]]>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ home]]>
+
+
+
+
+
+
+
+
+
+
+
+ false
+
+
+
+
+
+
+ SequenceFlow_30
+ SequenceFlow_72
+ SequenceFlow_67
+
+
+
+
+
+
+
+
+
+
+ txtlastcomment
+numsequencenumber_sub]]>
+
+
+
+
+
+
+
+
+ numsequencenumber: cdtr.name invoice.number (invoice.currency invoice.total) space.name]]>
+
+
+ true
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ $workflowgroup - $workflowstatus]]>
+ SequenceFlow_25
+ SequenceFlow_44
+ SequenceFlow_52
+ SequenceFlow_58
+ SequenceFlow_90
+ SequenceFlow_47
+
+
+ SequenceFlow_47
+
+
+
+
+
+
+
+
+
+
+
+
+ _subject]]>
+
+
+
+
+
+
+
+
+ _amount (Brutto € _amount_brutto)
+_description]]>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ home]]>
+
+
+
+
+
+
+
+
+
+
+
+ false
+
+
+
+ SequenceFlow_55
+ SequenceFlow_12
+
+
+
+ SequenceFlow_18
+ SequenceFlow_1
+ SequenceFlow_68
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ false
+
+
+
+
+
+ SequenceFlow_6
+ SequenceFlow_18
+
+
+ SequenceFlow_51
+ SequenceFlow_6
+
+
+
+ SequenceFlow_15
+
+
+
+
+
+
+
+ SequenceFlow_12
+ SequenceFlow_53
+ SequenceFlow_19
+ SequenceFlow_25
+ SequenceFlow_4
+
+
+
+
+
+
+
+
+
+
+
+
+
+ SequenceFlow_19
+ SequenceFlow_23
+
+
+
+
+
+ workitem['payment.type'][0]=="direct_debit"
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+- Rechnungscontrolling
]]>
+
+
+
+
+
+
+
+
+
+
+
+ false
+
+
+
+ SequenceFlow_21
+
+
+
+
+
+
+
+
+
+
+ txtlastcomment]]>
+
+
+
+
+
+
+
+
+ numsequencenumber: cdtr.name invoice.number (invoice.currency invoice.total) space.name]]>
+
+
+ true
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ $workflowgroup - $workflowstatus]]>
+ SequenceFlow_24
+ SequenceFlow_26
+ SequenceFlow_11
+ SequenceFlow_118
+ SequenceFlow_28
+ SequenceFlow_36
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ]]>
+
+
+
+
+
+
+
+
+
+
+
+ false
+
+
+
+ SequenceFlow_26
+
+
+
+
+
+
+
+
+
+
+
+ _subject]]>
+
+
+
+
+
+
+
+
+ _amount (Brutto € _amount_brutto)
+_description]]>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ home
+- space.name
]]>
+
+
+
+
+
+
+
+
+ space.name ]]>
+
+
+ false
+
+
+
+
+
+
+ SequenceFlow_28
+ SequenceFlow_105
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ home
+- space.name
+false]]>
+
+
+
+
+
+
+
+
+
+
+
+ false
+
+
+
+
+
+
+ SequenceFlow_36
+ SequenceFlow_35
+
+
+ SequenceFlow_35
+
+
+
+
+
+ SequenceFlow_39
+
+
+
+
+
+
+
+
+ txtlastcomment]]>
+
+
+
+
+
+
+
+
+ numsequencenumber: cdtr.name invoice.number (invoice.currency invoice.total) space.name]]>
+
+
+ true
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ $workflowgroup - $workflowstatus]]>
+ SequenceFlow_39
+ SequenceFlow_59
+ SequenceFlow_40
+
+
+ SequenceFlow_40
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ home]]>
+
+
+
+
+
+
+
+
+ space.name]]>
+
+
+ false
+
+
+
+ SequenceFlow_11
+
+
+
+
+
+
+
+
+ txtlastcomment
+numsequencenumber_sub]]>
+
+
+
+
+
+
+
+
+ numsequencenumber: cdtr.name invoice.number (invoice.currency invoice.total) space.name]]>
+
+
+ true
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ $workflowgroup - $workflowstatus]]>
+ SequenceFlow_23
+ SequenceFlow_45
+ SequenceFlow_41
+ SequenceFlow_14
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ false
+
+
+ SequenceFlow_14
+ SequenceFlow_42
+
+
+
+
+
+
+
+
+
+
+ txtlastcomment
+numsequencenumber_sub]]>
+
+
+
+
+
+
+
+
+ numsequencenumber: cdtr.name invoice.number (invoice.currency invoice.total) space.name]]>
+
+
+ true
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ $workflowgroup - $workflowstatus]]>
+ SequenceFlow_42
+ SequenceFlow_3
+ SequenceFlow_43
+ SequenceFlow_27
+
+
+
+
+
+
+
+
+
+
+ _subject]]>
+
+
+
+
+
+
+
+
+ _amount (Brutto € _amount_brutto)
+_description]]>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ home]]>
+
+
+
+
+
+
+
+
+
+
+
+ false
+
+
+
+ SequenceFlow_43
+ SequenceFlow_5
+ SequenceFlow_44
+
+
+
+
+
+
+
+
+
+ Wollen Sie den SEPA Export wirklich wiederholen?]]>
+
+
+ SequenceFlow_27
+ SequenceFlow_45
+
+
+
+
+
+
+
+
+
+
+
+
+ _subject]]>
+
+
+
+
+
+
+
+
+ _amount (Brutto € _amount_brutto)
+_description]]>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ home]]>
+
+
+
+
+
+
+
+
+
+
+
+ false
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ SequenceFlow_50
+ SequenceFlow_53
+
+
+
+
+
+
+
+
+
+
+ cdtr.name invoice.number]]>
+
+
+
+
+
+
+
+
+ cdtr.name
+Rechnungsnummer: invoice.number
+Betrag: invoice.total invoice.currency
+
+
+]]>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ home
+false]]>
+
+
+
+
+
+
+
+
+
+
+
+ false
+
+
+
+
+
+
+
+
+
+ SequenceFlow_54
+ SequenceFlow_7
+
+
+
+
+ SequenceFlow_63
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+]]>
+
+
+
+
+
+
+
+
+ txtlastcomment
+numsequencenumber_sub]]>
+
+
+
+
+
+
+
+
+ numsequencenumber: cdtr.name invoice.number (invoice.currency invoice.total) space.name]]>
+
+
+ true
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ $workflowgroup - $workflowstatus]]>
+ SequenceFlow_17
+ SequenceFlow_60
+ SequenceFlow_9
+
+
+ SequenceFlow_9
+
+
+
+ SequenceFlow_17
+
+
+
+
+ SequenceFlow_20
+ SequenceFlow_65
+ SequenceFlow_71
+ SequenceFlow_22
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ home
+false
+Wollen Sie den Vorgang wirklich löschen?]]>
+
+
+
+
+
+
+
+
+
+
+
+ false
+
+
+
+
+
+
+ SequenceFlow_49
+ SequenceFlow_76
+ SequenceFlow_48
+
+
+ SequenceFlow_48
+
+
+
+
+
+
+
+
+
+
+ txtlastcomment
+numsequencenumber_sub]]>
+
+
+
+
+
+
+
+
+ _imgnumsequencenumber: cdtr.name invoice.number (invoice.currency invoice.total) space.name]]>
+
+
+ true
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ $workflowgroup - $workflowstatus]]>
+ SequenceFlow_2
+ SequenceFlow_78
+ SequenceFlow_89
+ SequenceFlow_72
+ SequenceFlow_86
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ]]>
+
+
+
+
+
+
+
+
+
+
+
+ false
+
+
+
+ SequenceFlow_3
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ]]>
+
+
+
+
+
+
+
+
+
+
+
+ false
+
+
+
+ SequenceFlow_52
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ]]>
+
+
+
+
+
+
+
+
+
+
+
+ false
+
+
+
+ SequenceFlow_60
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ]]>
+
+
+
+
+
+
+
+
+
+
+
+ false
+
+
+
+ SequenceFlow_59
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ suggest
+false
+
+ gutschriftabgleich-de-1.0
+ 5001
+ 980
+ ]]>
+
+
+
+
+
+
+
+
+
+
+
+ false
+
+
+
+
+
+
+ SequenceFlow_65
+ SequenceFlow_69
+
+
+
+
+
+ workitem['payment.type'][0]=="credit"
+
+
+
+
+
+
+
+ txtlastcomment]]>
+
+
+
+
+
+
+
+
+ cdtr.name invoice.number (invoice.currency invoice.total) space.name]]>
+
+
+ true
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ $workflowgroup - $workflowstatus]]>
+ SequenceFlow_69
+ SequenceFlow_70
+
+
+
+ SequenceFlow_70
+
+
+
+
+
+
+
+
+ txtlastcomment
+numsequencenumber_sub]]>
+
+
+
+
+
+
+
+
+ numsequencenumber: cdtr.name invoice.number (invoice.currency invoice.total) space.name]]>
+
+
+ true
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ $workflowgroup - $workflowstatus]]>
+ SequenceFlow_4
+ SequenceFlow_34
+ SequenceFlow_5
+
+
+ workitem['payment.type'][0]=="no_sepa"
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+]]>
+
+
+
+
+
+
+
+
+ txtlastcomment]]>
+
+
+
+
+
+
+
+
+ _imgnumsequencenumber: cdtr.name invoice.number (invoice.currency invoice.total) space.name]]>
+
+
+ true
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ $workflowgroup - $workflowstatus]]>
+ SequenceFlow_7
+ SequenceFlow_62
+ SequenceFlow_61
+ SequenceFlow_73
+
+
+
+
+
+
+
+
+ cdtr.name invoice.number]]>
+
+
+
+
+
+
+
+
+ cdtr.name
+Rechnungsnummer: invoice.number
+Betrag: invoice.total invoice.currency
+
+
+]]>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ home
+false
+Wollen Sie den Vorgang wirklich archivieren?]]>
+
+
+
+
+
+
+
+
+
+
+
+ false
+
+
+
+
+
+
+
+ SequenceFlow_61
+ SequenceFlow_63
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ]]>
+
+
+
+
+
+
+
+
+
+
+
+ false
+
+
+
+ SequenceFlow_62
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ]]>
+
+
+
+
+
+
+
+
+
+
+
+ false
+
+
+
+ SequenceFlow_56
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ suggest
+false
+
+ rechnungseingang-sachrechnung-de-1.0
+ 5001
+ 980
+ ]]>
+
+
+
+
+
+
+
+
+
+
+
+ false
+
+
+
+
+
+
+ SequenceFlow_71
+ SequenceFlow_64
+
+
+
+
+
+
+
+
+ txtlastcomment]]>
+
+
+
+
+
+
+
+
+ cdtr.name invoice.number (invoice.currency invoice.total) space.name]]>
+
+
+ true
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ $workflowgroup - $workflowstatus]]>
+ SequenceFlow_64
+ SequenceFlow_66
+
+
+ SequenceFlow_66
+
+
+
+
+
+
+
+
+
+
+ txtlastcomment]]>
+
+
+
+
+
+
+
+
+ cdtr.name invoice.number (invoice.currency invoice.total) space.name]]>
+
+
+ true
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ $workflowgroup - $workflowstatus]]>
+ SequenceFlow_74
+ SequenceFlow_77
+ SequenceFlow_46
+ SequenceFlow_85
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ]]>
+
+
+
+
+
+
+
+
+
+
+
+ false
+
+
+
+
+ SequenceFlow_74
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ home
+- space.name
+false]]>
+
+
+
+
+
+
+
+
+
+
+
+ false
+
+
+
+
+
+
+ SequenceFlow_73
+ SequenceFlow_75
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ]]>
+
+
+
+
+
+
+
+
+
+
+
+ false
+
+
+
+ SequenceFlow_78
+
+
+
+
+
+
+
+
+ txtlastcomment]]>
+
+
+
+
+
+
+
+
+ numsequencenumber: cdtr.name invoice.number (invoice.currency invoice.total) space.name]]>
+
+
+ true
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ $workflowgroup - $workflowstatus]]>
+ SequenceFlow_68
+ SequenceFlow_79
+ SequenceFlow_57
+
+
+
+
+
+
+
+
+
+
+ _subject]]>
+
+
+
+
+
+
+
+
+ _amount (Brutto € _amount_brutto)
+_description]]>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ home]]>
+
+
+
+
+
+
+
+
+
+
+
+ false
+
+
+
+ SequenceFlow_57
+ SequenceFlow_58
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ]]>
+
+
+
+
+
+
+
+
+
+
+
+ false
+
+
+
+ SequenceFlow_79
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ home
+false
+Wollen Sie den Vorgang wirklich löschen?]]>
+
+
+
+
+
+
+
+
+
+
+
+ false
+
+
+
+
+
+
+ SequenceFlow_81
+ SequenceFlow_80
+
+
+ SequenceFlow_80
+
+
+
+
+
+ SequenceFlow_82
+
+
+
+
+
+
+
+ txtlastcomment
+numsequencenumber_sub]]>
+
+
+
+
+
+
+
+
+ numsequencenumber: cdtr.name invoice.number (invoice.currency invoice.total) space.name]]>
+
+
+ true
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ $workflowgroup - $workflowstatus]]>
+ SequenceFlow_84
+ SequenceFlow_87
+ SequenceFlow_82
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ]]>
+
+
+
+
+
+
+
+
+
+
+
+ false
+
+
+
+ SequenceFlow_84
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ home
+false]]>
+
+
+
+
+
+
+
+
+
+
+
+ false
+
+
+
+
+
+
+ SequenceFlow_86
+ SequenceFlow_87
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ home
+false]]>
+
+
+
+
+
+
+
+
+
+
+
+ false
+
+
+
+
+
+
+ SequenceFlow_88
+ SequenceFlow_89
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ home
+false
+
]]>
+
+
+
+
+
+
+
+
+
+
+
+ false
+
+
+
+
+
+
+ SequenceFlow_83
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ home
+false
+Wollen Sie den Vorgang wirklich archivieren?]]>
+
+
+
+
+
+
+
+
+
+
+
+ false
+
+
+
+
+
+
+ SequenceFlow_16
+ SequenceFlow_13
+
+
+ SequenceFlow_13
+
+
+
+
+
+ SequenceFlow_85
+ SequenceFlow_76
+ SequenceFlow_16
+
+
+
+ SequenceFlow_90
+
+
+
+
+
+
+
+
+
+
+
+
+ _subject]]>
+
+
+
+
+
+
+
+
+ _amount (Brutto € _amount_brutto)
+_description]]>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ home
+false
+- space.name
]]>
+
+
+
+
+
+
+
+
+ sb.assist]]>
+
+
+ false
+
+
+
+
+
+
+ SequenceFlow_96
+ SequenceFlow_91
+
+
+
+
+
+
+
+ txtlastcomment]]>
+
+
+
+
+
+
+
+
+ _imgnumsequencenumber: cdtr.name invoice.number (invoice.currency invoice.total) space.name]]>
+
+
+ true
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ $workflowgroup - $workflowstatus]]>
+ SequenceFlow_91
+ SequenceFlow_92
+ SequenceFlow_94
+ SequenceFlow_117
+ SequenceFlow_101
+ SequenceFlow_93
+
+
+
+
+
+
+
+
+ txtlastcomment]]>
+
+
+
+
+
+
+
+
+ _imgnumsequencenumber: cdtr.name invoice.number (invoice.currency invoice.total) space.name]]>
+
+
+ true
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ $workflowgroup - $workflowstatus]]>
+ SequenceFlow_102
+ SequenceFlow_114
+ SequenceFlow_109
+ SequenceFlow_112
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ]]>
+
+
+
+
+
+
+
+
+
+
+
+ false
+
+
+
+ SequenceFlow_94
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ home
+false
+
]]>
+
+
+
+
+
+
+
+
+
+
+
+ false
+
+
+
+
+
+
+ SequenceFlow_92
+
+
+
+
+
+ SequenceFlow_101
+ SequenceFlow_98
+ SequenceFlow_111
+
+
+
+
+
+
+
+ cdtr.name invoice.number]]>
+
+
+
+
+
+
+
+
+ cdtr.name
+Rechnungsnummer: invoice.number
+Betrag: invoice.total invoice.currency
+
+
+]]>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ home
+false]]>
+
+
+
+
+
+
+
+
+
+
+
+ false
+
+
+
+
+
+
+
+
+
+ SequenceFlow_98
+ SequenceFlow_102
+
+
+
+
+
+
+
+
+
+
+
+ cdtr.name invoice.number]]>
+
+
+
+
+
+
+
+
+ cdtr.name
+Rechnungsnummer: invoice.number
+Betrag: invoice.total invoice.currency
+
+
+]]>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ home
+false
+Wollen Sie den Vorgang wirklich archivieren?]]>
+
+
+
+
+
+
+
+
+
+
+
+ false
+
+
+
+
+
+
+
+ SequenceFlow_109
+ SequenceFlow_108
+
+
+
+ SequenceFlow_108
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ home
+- space.name
+false]]>
+
+
+
+
+
+
+
+
+
+
+
+ false
+
+
+
+
+
+
+ SequenceFlow_112
+ SequenceFlow_113
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ]]>
+
+
+
+
+
+
+
+
+
+
+
+ false
+
+
+
+ SequenceFlow_114
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ false
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ SequenceFlow_99
+ SequenceFlow_103
+
+
+
+
+ SequenceFlow_93
+ SequenceFlow_97
+ SequenceFlow_99
+
+
+
+
+
+ SequenceFlow_105
+ SequenceFlow_106
+ SequenceFlow_107
+
+
+
+
+ workitem['sb.assist'] && ( workitem['sb.assist'][0]!="-" && workitem['sb.assist'][0]!="")
+
+
+ SequenceFlow_103
+
+
+
+ SequenceFlow_110
+
+
+
+
+ SequenceFlow_113
+ SequenceFlow_107
+ SequenceFlow_117
+
+
+
+ SequenceFlow_118
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ]]>
+
+
+
+
+
+
+
+
+
+
+
+ false
+
+
+
+ SequenceFlow_34
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ]]>
+
+
+
+
+
+
+
+
+
+
+
+ false
+
+
+
+ SequenceFlow_41
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ posteingang-de-1.0
+ 100
+ 20
+ ]]>
+
+
+
+
+
+
+
+
+
+
+
+ false
+
+
+ SequenceFlow_95
+
+
+
+
+
+ Es handelt sich um einen SEPA Lauf. Die Rechnung muss explizit freigegeben werden.
+
+Ändern von IBAN und Fälligkeit ist hier möglich
+
+
+
+ Datenübergabe an Cargosoft.
+
+Export erfolgt über eine asynchrone Verarbeitung im Modell 'cargosoft-export'
+
+
+
+
+ Liegt eine Logistik Leistung vor, wird ein Fachbereich ausgewählt
+
+
+
+ Buchhaltung setzt Flag, wenn Mahnung eingetroffen ist
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file