@fin.cx/tax 2.0.0 → 2.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist_ts/00_commitinfo_data.js +1 -1
- package/dist_ts/index.d.ts +2 -0
- package/dist_ts/index.js +3 -1
- package/dist_ts/rates.d.ts +112 -0
- package/dist_ts/rates.js +136 -0
- package/dist_ts/ustva.d.ts +18 -0
- package/dist_ts/ustva.js +62 -25
- package/dist_ts/ustva.types.d.ts +4 -2
- package/dist_ts/zm.d.ts +92 -0
- package/dist_ts/zm.js +100 -0
- package/package.json +4 -4
- package/readme.md +14 -2
- package/ts/00_commitinfo_data.ts +1 -1
- package/ts/index.ts +2 -0
- package/ts/rates.ts +180 -0
- package/ts/ustva.ts +61 -22
- package/ts/ustva.types.ts +4 -2
- package/ts/zm.ts +166 -0
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
*/
|
|
4
4
|
export const commitinfo = {
|
|
5
5
|
name: '@fin.cx/tax',
|
|
6
|
-
version: '2.
|
|
6
|
+
version: '2.2.0',
|
|
7
7
|
description: 'German tax computation engine: UStVA Kennzahl aggregation from ledger balances with form rounding, Zahllast and reconciliation checks — exact cents'
|
|
8
8
|
};
|
|
9
9
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiMDBfY29tbWl0aW5mb19kYXRhLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vdHMvMDBfY29tbWl0aW5mb19kYXRhLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sVUFBVSxHQUFHO0lBQ3hCLElBQUksRUFBRSxhQUFhO0lBQ25CLE9BQU8sRUFBRSxPQUFPO0lBQ2hCLFdBQVcsRUFBRSxxSkFBcUo7Q0FDbkssQ0FBQSJ9
|
package/dist_ts/index.d.ts
CHANGED
package/dist_ts/index.js
CHANGED
|
@@ -1,4 +1,6 @@
|
|
|
1
1
|
export * from './ustva.types.js';
|
|
2
2
|
export * from './ustva.accounts.js';
|
|
3
3
|
export * from './ustva.js';
|
|
4
|
-
|
|
4
|
+
export * from './zm.js';
|
|
5
|
+
export * from './rates.js';
|
|
6
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi90cy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGtCQUFrQixDQUFDO0FBQ2pDLGNBQWMscUJBQXFCLENBQUM7QUFDcEMsY0FBYyxZQUFZLENBQUM7QUFDM0IsY0FBYyxTQUFTLENBQUM7QUFDeEIsY0FBYyxZQUFZLENBQUMifQ==
|
|
@@ -0,0 +1,112 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The rates of German VAT, dated: which rates German law sets for a supply
|
|
3
|
+
* carried out on a day, and the transition rules the administration granted
|
|
4
|
+
* around the rate changes of 2020 and 2021. The rate in force when the supply
|
|
5
|
+
* is carried out applies (§ 27 Abs. 1 Satz 1 UStG).
|
|
6
|
+
*/
|
|
7
|
+
/** A rate German law sets for a supply, and the days it applies to: from `from`, until `to` inclusive when it ended. */
|
|
8
|
+
export interface IGermanVatRate {
|
|
9
|
+
ratePercent: number;
|
|
10
|
+
/** `YYYY-MM-DD` */
|
|
11
|
+
from: string;
|
|
12
|
+
/** `YYYY-MM-DD`, inclusive; absent while the rate is in force */
|
|
13
|
+
to?: string;
|
|
14
|
+
/** the rate this is: the general rate, the reduced rate, the 0 % of § 12 Abs. 3 UStG, or an average rate of § 24 Abs. 1 Satz 1 UStG by its number */
|
|
15
|
+
provision: 'general' | 'reduced' | 'zero' | 'average_nr1' | 'average_nr2' | 'average_nr3';
|
|
16
|
+
/** the provision that sets the rate for these days, and the act that set it */
|
|
17
|
+
basis: string;
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* The rates of German VAT, dated. The table begins on 2007-01-01.
|
|
21
|
+
* - The general rate, 19 % (§ 12 Abs. 1 UStG, since Art. 4 Nr. 1
|
|
22
|
+
* Haushaltsbegleitgesetz 2006, BGBl. I S. 1402, from 2007-01-01), and the
|
|
23
|
+
* reduced rate, 7 % (§ 12 Abs. 2 UStG). From 2020-07-01 to 2020-12-31, 16 %
|
|
24
|
+
* and 5 % in their place (§ 28 Abs. 1, 2 UStG, Art. 3 Zweites
|
|
25
|
+
* Corona-Steuerhilfegesetz, BGBl. I 2020 S. 1512).
|
|
26
|
+
* - § 24 Abs. 1 Satz 1 Nr. 2 UStG (Sägewerkserzeugnisse, Getränke and
|
|
27
|
+
* alkoholische Flüssigkeiten of a farmer or forester taxed by average
|
|
28
|
+
* rates): 19 %, the rate it states as read on gesetze-im-internet.de on
|
|
29
|
+
* 2026-09-27; 16 % from 2020-07-01 to 2020-12-31 (§ 24 Abs. 1 Satz 1 Nr. 2
|
|
30
|
+
* i. V. m. § 28 Abs. 3 UStG, Art. 3 Zweites Corona-Steuerhilfegesetz, BGBl. I
|
|
31
|
+
* 2020 S. 1512, as the BMF letter of 30 June 2020, Rz. 1, cites it; the act's
|
|
32
|
+
* own text was not read). That 19 % applied from 2007-01-01 is not verified
|
|
33
|
+
* from the amending act: the table starts it there with the general rate.
|
|
34
|
+
* - The average rates of § 24 Abs. 1 Satz 1 UStG, at which a farmer or
|
|
35
|
+
* forester taxed by them charges VAT on the invoice; the recipient deducts
|
|
36
|
+
* it as input tax (§ 15 Abs. 1 Satz 1 Nr. 1 UStG). Each from the amending
|
|
37
|
+
* act's text:
|
|
38
|
+
* - Nr. 1, forestry products: 5,5 % from 2007-01-01 (Art. 4 Nr. 2
|
|
39
|
+
* Buchst. a Doppelbuchst. aa Haushaltsbegleitgesetz 2006, "5 Prozent"
|
|
40
|
+
* replaced by "5,5 Prozent"); unchanged since.
|
|
41
|
+
* - Nr. 3, the other supplies: 10,7 % from 2007-01-01 (the same, Doppelbuchst.
|
|
42
|
+
* cc, "9 Prozent" by "10,7 Prozent"); 9,5 % from 2022-01-01 (Art. 1 Nr. 5
|
|
43
|
+
* Gesetz zur Umsetzung unionsrechtlicher Vorgaben im Umsatzsteuerrecht of
|
|
44
|
+
* 21.12.2021, BGBl. I S. 5250); 9,0 % from 2023-01-01 (Art. 12 Nr. 3 Achtes
|
|
45
|
+
* Gesetz zur Änderung von Verbrauchsteuergesetzen of 24.10.2022, BGBl. I
|
|
46
|
+
* S. 1838); 8,4 % from 2024-12-06 (Art. 24 Nr. 13 Jahressteuergesetz 2024
|
|
47
|
+
* of 02.12.2024, BGBl. 2024 I Nr. 387, in force the day after its
|
|
48
|
+
* promulgation on 2024-12-05, Art. 56 Abs. 1); 7,8 % from 2025-01-01
|
|
49
|
+
* (Art. 25 Nr. 21 of the same, Art. 56 Abs. 7), the rate § 24 Abs. 1 Satz 1
|
|
50
|
+
* Nr. 3 UStG states as read on gesetze-im-internet.de on 2026-09-25.
|
|
51
|
+
* - 0 % for the supplies of § 12 Abs. 3 UStG (photovoltaic installations:
|
|
52
|
+
* the modules and components delivered to their operator, their
|
|
53
|
+
* intra-Community acquisition, import and installation) from 2023-01-01
|
|
54
|
+
* (Art. 16 Nr. 5 Jahressteuergesetz 2022 of 16.12.2022, BGBl. I S. 2294,
|
|
55
|
+
* in force on 2023-01-01 by its Art. 43; the amending text as read on
|
|
56
|
+
* buzer.de on 2026-09-28, § 12 Abs. 3 as read on gesetze-im-internet.de).
|
|
57
|
+
*/
|
|
58
|
+
export declare const GERMAN_VAT_RATES: readonly IGermanVatRate[];
|
|
59
|
+
/**
|
|
60
|
+
* The rates of German VAT for a supply carried out on a day (`YYYY-MM-DD`),
|
|
61
|
+
* each once, in the order of `GERMAN_VAT_RATES`. `undefined` for a day before
|
|
62
|
+
* the table begins (2007-01-01): the table holds no law for it.
|
|
63
|
+
*/
|
|
64
|
+
export declare function germanVatRatesOn(dayArg: string): readonly number[] | undefined;
|
|
65
|
+
/**
|
|
66
|
+
* A rate the administration names for some supplies of some days around a
|
|
67
|
+
* change of the rates, with its source and the supplies it covers. Whether a
|
|
68
|
+
* supply is one of them is a fact the caller states; this table cannot tell.
|
|
69
|
+
*/
|
|
70
|
+
export interface IGermanVatRateConcession {
|
|
71
|
+
ratePercent: number;
|
|
72
|
+
/**
|
|
73
|
+
* `required`: the letter says the rate is to be applied ("sind … anzuwenden");
|
|
74
|
+
* `accepted`: the letter allows it or does not object to it ("wird
|
|
75
|
+
* zugelassen", "wird nicht beanstandet"), and the law's rate of the day may be
|
|
76
|
+
* applied as well.
|
|
77
|
+
*/
|
|
78
|
+
standing: 'required' | 'accepted';
|
|
79
|
+
/** `YYYY-MM-DD` */
|
|
80
|
+
from: string;
|
|
81
|
+
/** `YYYY-MM-DD`, inclusive */
|
|
82
|
+
to: string;
|
|
83
|
+
/** the BMF letter, its GZ and its Rz. */
|
|
84
|
+
source: string;
|
|
85
|
+
/** the supplies it covers, and what it allows */
|
|
86
|
+
covers: string;
|
|
87
|
+
}
|
|
88
|
+
/**
|
|
89
|
+
* The transition rules of the administration around the rate changes of
|
|
90
|
+
* 1 July 2020 and 1 January 2021, each read in the letter itself (the copies of
|
|
91
|
+
* 8 July 2020 and 5 November 2020 in the Internet Archive of the PDFs on
|
|
92
|
+
* bundesfinanzministerium.de, read 2026-09-27):
|
|
93
|
+
* - Rz. 44 of the letter of 30 June 2020 allows the new rates on
|
|
94
|
+
* Bewirtungsleistungen in the night of 30 June to 1 July 2020 (accepted), and
|
|
95
|
+
* Rz. 22 of the letter of 4 November 2020 requires them on Beherbergungen of
|
|
96
|
+
* that night (required), which Rz. 44 had left out.
|
|
97
|
+
* - Rz. 46 of the letter of 30 June 2020 accepts the old rates, 19 and
|
|
98
|
+
* 7 percent, on supplies to entrepreneurs in July 2020, with the input tax
|
|
99
|
+
* deduction of the stated tax.
|
|
100
|
+
* - Rz. 22 of the letter of 4 November 2020 allows 16 and 5 percent on
|
|
101
|
+
* Bewirtungsleistungen and Beherbergungen in the night of 31 December 2020
|
|
102
|
+
* to 1 January 2021.
|
|
103
|
+
* Not here: Rz. 47 of the letter of 30 June 2020 applies its rules "entsprechend"
|
|
104
|
+
* to the rise on 1 January 2021; the letters grant no deduction of 16 or
|
|
105
|
+
* 5 percent stated on a supply of January 2021 beyond the night above, except
|
|
106
|
+
* for advance payment invoices issued before 2021 (4 November 2020, Rz. 1 and
|
|
107
|
+
* 2), whose case needs the invoice's date. No letter on the § 24 changes of
|
|
108
|
+
* 2022, 2023, 2024-12-06 and 2025 was found.
|
|
109
|
+
*/
|
|
110
|
+
export declare const GERMAN_VAT_RATE_CONCESSIONS: readonly IGermanVatRateConcession[];
|
|
111
|
+
/** The transition rules that cover a day of supply (`YYYY-MM-DD`), in the order of `GERMAN_VAT_RATE_CONCESSIONS`. */
|
|
112
|
+
export declare function germanVatRateConcessionsOn(dayArg: string): readonly IGermanVatRateConcession[];
|
package/dist_ts/rates.js
ADDED
|
@@ -0,0 +1,136 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The rates of German VAT, dated: which rates German law sets for a supply
|
|
3
|
+
* carried out on a day, and the transition rules the administration granted
|
|
4
|
+
* around the rate changes of 2020 and 2021. The rate in force when the supply
|
|
5
|
+
* is carried out applies (§ 27 Abs. 1 Satz 1 UStG).
|
|
6
|
+
*/
|
|
7
|
+
const GENERAL = '§ 12 Abs. 1 UStG (Art. 4 Nr. 1 Haushaltsbegleitgesetz 2006, BGBl. I S. 1402)';
|
|
8
|
+
const REDUCED = '§ 12 Abs. 2 UStG';
|
|
9
|
+
const TEMPORARY = '§ 28 Abs. 1, 2 UStG (Art. 3 Zweites Corona-Steuerhilfegesetz, BGBl. I 2020 S. 1512)';
|
|
10
|
+
const SPECIAL_AVERAGE = '§ 24 Abs. 1 Satz 1 Nr. 2 UStG';
|
|
11
|
+
const FORESTRY = '§ 24 Abs. 1 Satz 1 Nr. 1 UStG (Art. 4 Nr. 2 Buchst. a Doppelbuchst. aa Haushaltsbegleitgesetz 2006)';
|
|
12
|
+
const AVERAGE_OTHER = '§ 24 Abs. 1 Satz 1 Nr. 3 UStG';
|
|
13
|
+
const ZERO = '§ 12 Abs. 3 UStG (Art. 16 Nr. 5 Jahressteuergesetz 2022 vom 16.12.2022, BGBl. I S. 2294, in force 2023-01-01 by its Art. 43)';
|
|
14
|
+
/**
|
|
15
|
+
* The rates of German VAT, dated. The table begins on 2007-01-01.
|
|
16
|
+
* - The general rate, 19 % (§ 12 Abs. 1 UStG, since Art. 4 Nr. 1
|
|
17
|
+
* Haushaltsbegleitgesetz 2006, BGBl. I S. 1402, from 2007-01-01), and the
|
|
18
|
+
* reduced rate, 7 % (§ 12 Abs. 2 UStG). From 2020-07-01 to 2020-12-31, 16 %
|
|
19
|
+
* and 5 % in their place (§ 28 Abs. 1, 2 UStG, Art. 3 Zweites
|
|
20
|
+
* Corona-Steuerhilfegesetz, BGBl. I 2020 S. 1512).
|
|
21
|
+
* - § 24 Abs. 1 Satz 1 Nr. 2 UStG (Sägewerkserzeugnisse, Getränke and
|
|
22
|
+
* alkoholische Flüssigkeiten of a farmer or forester taxed by average
|
|
23
|
+
* rates): 19 %, the rate it states as read on gesetze-im-internet.de on
|
|
24
|
+
* 2026-09-27; 16 % from 2020-07-01 to 2020-12-31 (§ 24 Abs. 1 Satz 1 Nr. 2
|
|
25
|
+
* i. V. m. § 28 Abs. 3 UStG, Art. 3 Zweites Corona-Steuerhilfegesetz, BGBl. I
|
|
26
|
+
* 2020 S. 1512, as the BMF letter of 30 June 2020, Rz. 1, cites it; the act's
|
|
27
|
+
* own text was not read). That 19 % applied from 2007-01-01 is not verified
|
|
28
|
+
* from the amending act: the table starts it there with the general rate.
|
|
29
|
+
* - The average rates of § 24 Abs. 1 Satz 1 UStG, at which a farmer or
|
|
30
|
+
* forester taxed by them charges VAT on the invoice; the recipient deducts
|
|
31
|
+
* it as input tax (§ 15 Abs. 1 Satz 1 Nr. 1 UStG). Each from the amending
|
|
32
|
+
* act's text:
|
|
33
|
+
* - Nr. 1, forestry products: 5,5 % from 2007-01-01 (Art. 4 Nr. 2
|
|
34
|
+
* Buchst. a Doppelbuchst. aa Haushaltsbegleitgesetz 2006, "5 Prozent"
|
|
35
|
+
* replaced by "5,5 Prozent"); unchanged since.
|
|
36
|
+
* - Nr. 3, the other supplies: 10,7 % from 2007-01-01 (the same, Doppelbuchst.
|
|
37
|
+
* cc, "9 Prozent" by "10,7 Prozent"); 9,5 % from 2022-01-01 (Art. 1 Nr. 5
|
|
38
|
+
* Gesetz zur Umsetzung unionsrechtlicher Vorgaben im Umsatzsteuerrecht of
|
|
39
|
+
* 21.12.2021, BGBl. I S. 5250); 9,0 % from 2023-01-01 (Art. 12 Nr. 3 Achtes
|
|
40
|
+
* Gesetz zur Änderung von Verbrauchsteuergesetzen of 24.10.2022, BGBl. I
|
|
41
|
+
* S. 1838); 8,4 % from 2024-12-06 (Art. 24 Nr. 13 Jahressteuergesetz 2024
|
|
42
|
+
* of 02.12.2024, BGBl. 2024 I Nr. 387, in force the day after its
|
|
43
|
+
* promulgation on 2024-12-05, Art. 56 Abs. 1); 7,8 % from 2025-01-01
|
|
44
|
+
* (Art. 25 Nr. 21 of the same, Art. 56 Abs. 7), the rate § 24 Abs. 1 Satz 1
|
|
45
|
+
* Nr. 3 UStG states as read on gesetze-im-internet.de on 2026-09-25.
|
|
46
|
+
* - 0 % for the supplies of § 12 Abs. 3 UStG (photovoltaic installations:
|
|
47
|
+
* the modules and components delivered to their operator, their
|
|
48
|
+
* intra-Community acquisition, import and installation) from 2023-01-01
|
|
49
|
+
* (Art. 16 Nr. 5 Jahressteuergesetz 2022 of 16.12.2022, BGBl. I S. 2294,
|
|
50
|
+
* in force on 2023-01-01 by its Art. 43; the amending text as read on
|
|
51
|
+
* buzer.de on 2026-09-28, § 12 Abs. 3 as read on gesetze-im-internet.de).
|
|
52
|
+
*/
|
|
53
|
+
export const GERMAN_VAT_RATES = [
|
|
54
|
+
{ ratePercent: 19, from: '2007-01-01', to: '2020-06-30', provision: 'general', basis: GENERAL },
|
|
55
|
+
{ ratePercent: 19, from: '2021-01-01', provision: 'general', basis: GENERAL },
|
|
56
|
+
{ ratePercent: 7, from: '2007-01-01', to: '2020-06-30', provision: 'reduced', basis: REDUCED },
|
|
57
|
+
{ ratePercent: 7, from: '2021-01-01', provision: 'reduced', basis: REDUCED },
|
|
58
|
+
{ ratePercent: 0, from: '2023-01-01', provision: 'zero', basis: ZERO },
|
|
59
|
+
{ ratePercent: 16, from: '2020-07-01', to: '2020-12-31', provision: 'general', basis: `${TEMPORARY}, in place of the rate of § 12 Abs. 1 UStG` },
|
|
60
|
+
{ ratePercent: 5, from: '2020-07-01', to: '2020-12-31', provision: 'reduced', basis: `${TEMPORARY}, in place of the rate of § 12 Abs. 2 UStG` },
|
|
61
|
+
{ ratePercent: 19, from: '2007-01-01', to: '2020-06-30', provision: 'average_nr2', basis: `${SPECIAL_AVERAGE} (the act that set 19 % from 2007-01-01 not verified)` },
|
|
62
|
+
{ ratePercent: 19, from: '2021-01-01', provision: 'average_nr2', basis: `${SPECIAL_AVERAGE} (19 % as read on gesetze-im-internet.de, 2026-09-27)` },
|
|
63
|
+
{ ratePercent: 16, from: '2020-07-01', to: '2020-12-31', provision: 'average_nr2', basis: `${SPECIAL_AVERAGE} i. V. m. § 28 Abs. 3 UStG (Art. 3 Zweites Corona-Steuerhilfegesetz, BGBl. I 2020 S. 1512, as cited by BMF 30.06.2020 Rz. 1)` },
|
|
64
|
+
{ ratePercent: 5.5, from: '2007-01-01', provision: 'average_nr1', basis: FORESTRY },
|
|
65
|
+
{ ratePercent: 10.7, from: '2007-01-01', to: '2021-12-31', provision: 'average_nr3', basis: `${AVERAGE_OTHER} (Art. 4 Nr. 2 Buchst. a Doppelbuchst. cc Haushaltsbegleitgesetz 2006)` },
|
|
66
|
+
{ ratePercent: 9.5, from: '2022-01-01', to: '2022-12-31', provision: 'average_nr3', basis: `${AVERAGE_OTHER} (Art. 1 Nr. 5 Gesetz zur Umsetzung unionsrechtlicher Vorgaben im Umsatzsteuerrecht, BGBl. I 2021 S. 5250)` },
|
|
67
|
+
{ ratePercent: 9, from: '2023-01-01', to: '2024-12-05', provision: 'average_nr3', basis: `${AVERAGE_OTHER} (Art. 12 Nr. 3 Achtes Gesetz zur Änderung von Verbrauchsteuergesetzen, BGBl. I 2022 S. 1838)` },
|
|
68
|
+
{ ratePercent: 8.4, from: '2024-12-06', to: '2024-12-31', provision: 'average_nr3', basis: `${AVERAGE_OTHER} (Art. 24 Nr. 13 Jahressteuergesetz 2024, BGBl. 2024 I Nr. 387)` },
|
|
69
|
+
{ ratePercent: 7.8, from: '2025-01-01', provision: 'average_nr3', basis: `${AVERAGE_OTHER} (Art. 25 Nr. 21 Jahressteuergesetz 2024, BGBl. 2024 I Nr. 387)` },
|
|
70
|
+
];
|
|
71
|
+
const TABLE_BEGINS = '2007-01-01';
|
|
72
|
+
const assertDay = (dayArg) => {
|
|
73
|
+
const match = /^(\d{4})-(\d{2})-(\d{2})$/.exec(dayArg);
|
|
74
|
+
const date = match ? new Date(Date.UTC(Number(match[1]), Number(match[2]) - 1, Number(match[3]))) : undefined;
|
|
75
|
+
if (!date || date.toISOString().slice(0, 10) !== dayArg) {
|
|
76
|
+
throw new Error(`a day of supply is written YYYY-MM-DD, got '${dayArg}'`);
|
|
77
|
+
}
|
|
78
|
+
};
|
|
79
|
+
/**
|
|
80
|
+
* The rates of German VAT for a supply carried out on a day (`YYYY-MM-DD`),
|
|
81
|
+
* each once, in the order of `GERMAN_VAT_RATES`. `undefined` for a day before
|
|
82
|
+
* the table begins (2007-01-01): the table holds no law for it.
|
|
83
|
+
*/
|
|
84
|
+
export function germanVatRatesOn(dayArg) {
|
|
85
|
+
assertDay(dayArg);
|
|
86
|
+
if (dayArg < TABLE_BEGINS) {
|
|
87
|
+
return undefined;
|
|
88
|
+
}
|
|
89
|
+
return [...new Set(GERMAN_VAT_RATES
|
|
90
|
+
.filter((rateArg) => rateArg.from <= dayArg && (rateArg.to === undefined || dayArg <= rateArg.to))
|
|
91
|
+
.map((rateArg) => rateArg.ratePercent))];
|
|
92
|
+
}
|
|
93
|
+
const BMF_2020_06_30 = 'BMF-Schreiben vom 30. Juni 2020, III C 2 - S 7030/20/10009 :004, BStBl I S. 584';
|
|
94
|
+
const BMF_2020_11_04 = 'BMF-Schreiben vom 4. November 2020, III C 2 - S 7030/20/10009 :016';
|
|
95
|
+
const NIGHT_2020_06_30_BEWIRTUNG = 'Bewirtungsleistungen (food and drink for consumption on the spot, tobacco and the like) in the night of 30 June to 1 July 2020, at the rates in force from 1 July 2020 ("wird zugelassen")';
|
|
96
|
+
const NIGHT_2020_06_30_BEHERBERGUNG = 'Beherbergungen and the services that go with them in the night of 30 June to 1 July 2020, at the rates in force from 1 July 2020 ("sind … anzuwenden"; the letter of 30 June 2020, Rz. 44, had left them out)';
|
|
97
|
+
const JULY_2020 = '("wird es … nicht beanstandet") a supply to an entrepreneur carried out in July 2020 whose invoice states the rate in force before 1 July 2020 and whose supplier paid that tax: the invoice need not be corrected, and a recipient entitled to deduct input tax deducts the tax as stated (for § 13b supplies, the tax the recipient computed)';
|
|
98
|
+
const NIGHT_2020_12_31 = 'Bewirtungsleistungen, and Beherbergungen with the services that go with them, in the night of 31 December 2020 to 1 January 2021, at the rates of 16 and 5 percent ("wird zugelassen")';
|
|
99
|
+
/**
|
|
100
|
+
* The transition rules of the administration around the rate changes of
|
|
101
|
+
* 1 July 2020 and 1 January 2021, each read in the letter itself (the copies of
|
|
102
|
+
* 8 July 2020 and 5 November 2020 in the Internet Archive of the PDFs on
|
|
103
|
+
* bundesfinanzministerium.de, read 2026-09-27):
|
|
104
|
+
* - Rz. 44 of the letter of 30 June 2020 allows the new rates on
|
|
105
|
+
* Bewirtungsleistungen in the night of 30 June to 1 July 2020 (accepted), and
|
|
106
|
+
* Rz. 22 of the letter of 4 November 2020 requires them on Beherbergungen of
|
|
107
|
+
* that night (required), which Rz. 44 had left out.
|
|
108
|
+
* - Rz. 46 of the letter of 30 June 2020 accepts the old rates, 19 and
|
|
109
|
+
* 7 percent, on supplies to entrepreneurs in July 2020, with the input tax
|
|
110
|
+
* deduction of the stated tax.
|
|
111
|
+
* - Rz. 22 of the letter of 4 November 2020 allows 16 and 5 percent on
|
|
112
|
+
* Bewirtungsleistungen and Beherbergungen in the night of 31 December 2020
|
|
113
|
+
* to 1 January 2021.
|
|
114
|
+
* Not here: Rz. 47 of the letter of 30 June 2020 applies its rules "entsprechend"
|
|
115
|
+
* to the rise on 1 January 2021; the letters grant no deduction of 16 or
|
|
116
|
+
* 5 percent stated on a supply of January 2021 beyond the night above, except
|
|
117
|
+
* for advance payment invoices issued before 2021 (4 November 2020, Rz. 1 and
|
|
118
|
+
* 2), whose case needs the invoice's date. No letter on the § 24 changes of
|
|
119
|
+
* 2022, 2023, 2024-12-06 and 2025 was found.
|
|
120
|
+
*/
|
|
121
|
+
export const GERMAN_VAT_RATE_CONCESSIONS = [
|
|
122
|
+
{ ratePercent: 16, standing: 'accepted', from: '2020-06-30', to: '2020-06-30', source: `${BMF_2020_06_30}, Rz. 44; ${BMF_2020_11_04}, Rz. 22`, covers: NIGHT_2020_06_30_BEWIRTUNG },
|
|
123
|
+
{ ratePercent: 5, standing: 'accepted', from: '2020-06-30', to: '2020-06-30', source: `${BMF_2020_06_30}, Rz. 44; ${BMF_2020_11_04}, Rz. 22`, covers: NIGHT_2020_06_30_BEWIRTUNG },
|
|
124
|
+
{ ratePercent: 16, standing: 'required', from: '2020-06-30', to: '2020-06-30', source: `${BMF_2020_11_04}, Rz. 22`, covers: NIGHT_2020_06_30_BEHERBERGUNG },
|
|
125
|
+
{ ratePercent: 5, standing: 'required', from: '2020-06-30', to: '2020-06-30', source: `${BMF_2020_11_04}, Rz. 22`, covers: NIGHT_2020_06_30_BEHERBERGUNG },
|
|
126
|
+
{ ratePercent: 19, standing: 'accepted', from: '2020-07-01', to: '2020-07-31', source: `${BMF_2020_06_30}, Rz. 46`, covers: JULY_2020 },
|
|
127
|
+
{ ratePercent: 7, standing: 'accepted', from: '2020-07-01', to: '2020-07-31', source: `${BMF_2020_06_30}, Rz. 46`, covers: JULY_2020 },
|
|
128
|
+
{ ratePercent: 16, standing: 'accepted', from: '2021-01-01', to: '2021-01-01', source: `${BMF_2020_11_04}, Rz. 22`, covers: NIGHT_2020_12_31 },
|
|
129
|
+
{ ratePercent: 5, standing: 'accepted', from: '2021-01-01', to: '2021-01-01', source: `${BMF_2020_11_04}, Rz. 22`, covers: NIGHT_2020_12_31 },
|
|
130
|
+
];
|
|
131
|
+
/** The transition rules that cover a day of supply (`YYYY-MM-DD`), in the order of `GERMAN_VAT_RATE_CONCESSIONS`. */
|
|
132
|
+
export function germanVatRateConcessionsOn(dayArg) {
|
|
133
|
+
assertDay(dayArg);
|
|
134
|
+
return GERMAN_VAT_RATE_CONCESSIONS.filter((entryArg) => entryArg.from <= dayArg && dayArg <= entryArg.to);
|
|
135
|
+
}
|
|
136
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmF0ZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi90cy9yYXRlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7R0FLRztBQWVILE1BQU0sT0FBTyxHQUFHLDhFQUE4RSxDQUFDO0FBQy9GLE1BQU0sT0FBTyxHQUFHLGtCQUFrQixDQUFDO0FBQ25DLE1BQU0sU0FBUyxHQUFHLHFGQUFxRixDQUFDO0FBQ3hHLE1BQU0sZUFBZSxHQUFHLCtCQUErQixDQUFDO0FBQ3hELE1BQU0sUUFBUSxHQUFHLHFHQUFxRyxDQUFDO0FBQ3ZILE1BQU0sYUFBYSxHQUFHLCtCQUErQixDQUFDO0FBQ3RELE1BQU0sSUFBSSxHQUFHLDhIQUE4SCxDQUFDO0FBRTVJOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQXNDRztBQUNILE1BQU0sQ0FBQyxNQUFNLGdCQUFnQixHQUE4QjtJQUN6RCxFQUFFLFdBQVcsRUFBRSxFQUFFLEVBQUUsSUFBSSxFQUFFLFlBQVksRUFBRSxFQUFFLEVBQUUsWUFBWSxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFBRTtJQUMvRixFQUFFLFdBQVcsRUFBRSxFQUFFLEVBQUUsSUFBSSxFQUFFLFlBQVksRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxPQUFPLEVBQUU7SUFDN0UsRUFBRSxXQUFXLEVBQUUsQ0FBQyxFQUFFLElBQUksRUFBRSxZQUFZLEVBQUUsRUFBRSxFQUFFLFlBQVksRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxPQUFPLEVBQUU7SUFDOUYsRUFBRSxXQUFXLEVBQUUsQ0FBQyxFQUFFLElBQUksRUFBRSxZQUFZLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFFO0lBQzVFLEVBQUUsV0FBVyxFQUFFLENBQUMsRUFBRSxJQUFJLEVBQUUsWUFBWSxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUs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
|
package/dist_ts/ustva.d.ts
CHANGED
|
@@ -1,2 +1,20 @@
|
|
|
1
1
|
import type { IUstvaInput, IUstvaResult } from './ustva.types.js';
|
|
2
|
+
/**
|
|
3
|
+
* The labels of the Kennzahlen this module fills. Kz 21, 45 and 87 carry the
|
|
4
|
+
* titles of their fields in ELSTER's "Anleitung zur UStVA 2026" (read
|
|
5
|
+
* 2026-09-25); Kz 46, 73 and 84, the fields of section D of the USt 1 A 2026
|
|
6
|
+
* (BMF, 29.12.2025), their texts there.
|
|
7
|
+
*/
|
|
8
|
+
export declare const USTVA_KENNZAHL_LABELS: Readonly<Record<number, string>>;
|
|
9
|
+
/**
|
|
10
|
+
* The Kennzahlen this module fills, in the order of the UStVA 2026 form
|
|
11
|
+
* (ELSTER, "Anleitung zur UStVA 2026"): taxable supplies (81, 86, 87), tax-free
|
|
12
|
+
* supplies (41, 43, 48), intra-Community acquisitions (89, 93), the tax the
|
|
13
|
+
* recipient owes (46/47, 73/74, 84/85), supplies whose recipient owes the tax (60),
|
|
14
|
+
* services in the rest of the Community (21), other non-taxable turnover (45),
|
|
15
|
+
* input tax (66, 61, 62, 67), the Sondervorauszahlung (39) and the result (83).
|
|
16
|
+
* A Kennzahl computed but not listed here is reported as an issue, never
|
|
17
|
+
* dropped.
|
|
18
|
+
*/
|
|
19
|
+
export declare const USTVA_KENNZAHL_ORDER: readonly number[];
|
|
2
20
|
export declare function computeUstva(input: IUstvaInput): IUstvaResult;
|
package/dist_ts/ustva.js
CHANGED
|
@@ -21,19 +21,30 @@
|
|
|
21
21
|
import { vatFromNetCents } from '@fin.cx/calculation';
|
|
22
22
|
import { getChart } from '@fin.cx/chartdata';
|
|
23
23
|
import { VAT_ACCOUNTS } from './ustva.accounts.js';
|
|
24
|
-
|
|
24
|
+
/**
|
|
25
|
+
* The labels of the Kennzahlen this module fills. Kz 21, 45 and 87 carry the
|
|
26
|
+
* titles of their fields in ELSTER's "Anleitung zur UStVA 2026" (read
|
|
27
|
+
* 2026-09-25); Kz 46, 73 and 84, the fields of section D of the USt 1 A 2026
|
|
28
|
+
* (BMF, 29.12.2025), their texts there.
|
|
29
|
+
*/
|
|
30
|
+
export const USTVA_KENNZAHL_LABELS = {
|
|
25
31
|
81: 'Steuerpflichtige Umsätze 19 %',
|
|
26
32
|
86: 'Steuerpflichtige Umsätze 7 %',
|
|
33
|
+
87: 'Steuerpflichtige Lieferungen und sonstige Leistungen (0 %)',
|
|
27
34
|
89: 'Innergemeinschaftliche Erwerbe 19 %',
|
|
28
35
|
93: 'Innergemeinschaftliche Erwerbe 7 %',
|
|
29
36
|
41: 'Steuerfreie innergemeinschaftliche Lieferungen',
|
|
30
37
|
43: 'Steuerfreie Umsätze mit Vorsteuerabzug (u. a. Ausfuhr)',
|
|
31
38
|
48: 'Steuerfreie Umsätze ohne Vorsteuerabzug',
|
|
32
|
-
46: 'Sonstige Leistungen
|
|
39
|
+
46: 'Sonstige Leistungen nach § 3a Absatz 2 UStG eines im übrigen Gemeinschaftsgebiet ansässigen Unternehmers (§ 13b Absatz 1 UStG)',
|
|
33
40
|
47: 'Steuer zu Kennzahl 46',
|
|
34
|
-
|
|
41
|
+
73: 'Umsätze, die unter das GrEStG fallen (§ 13b Absatz 2 Nummer 3 UStG)',
|
|
42
|
+
74: 'Steuer zu Kennzahl 73',
|
|
43
|
+
84: 'Andere Leistungen (§ 13b Absatz 2 Nummer 1, 2, 4 bis 12 UStG)',
|
|
35
44
|
85: 'Steuer zu Kennzahl 84',
|
|
36
45
|
60: 'Steuerpflichtige Umsätze, für die der Leistungsempfänger die Steuer schuldet (§13b)',
|
|
46
|
+
21: 'Sonstige Leistungen im übrigen Gemeinschaftsgebiet',
|
|
47
|
+
45: 'Übrige nicht steuerbare Umsätze (Leistungsort nicht im Inland)',
|
|
37
48
|
66: 'Vorsteuer aus Rechnungen anderer Unternehmer',
|
|
38
49
|
61: 'Vorsteuer aus innergemeinschaftlichem Erwerb',
|
|
39
50
|
62: 'Entrichtete Einfuhrumsatzsteuer',
|
|
@@ -41,8 +52,17 @@ const KENNZAHL_LABELS = {
|
|
|
41
52
|
39: 'Anrechnung der Sondervorauszahlung (Dauerfristverlängerung)',
|
|
42
53
|
83: 'Verbleibende Umsatzsteuer-Vorauszahlung / Überschuss',
|
|
43
54
|
};
|
|
44
|
-
/**
|
|
45
|
-
|
|
55
|
+
/**
|
|
56
|
+
* The Kennzahlen this module fills, in the order of the UStVA 2026 form
|
|
57
|
+
* (ELSTER, "Anleitung zur UStVA 2026"): taxable supplies (81, 86, 87), tax-free
|
|
58
|
+
* supplies (41, 43, 48), intra-Community acquisitions (89, 93), the tax the
|
|
59
|
+
* recipient owes (46/47, 73/74, 84/85), supplies whose recipient owes the tax (60),
|
|
60
|
+
* services in the rest of the Community (21), other non-taxable turnover (45),
|
|
61
|
+
* input tax (66, 61, 62, 67), the Sondervorauszahlung (39) and the result (83).
|
|
62
|
+
* A Kennzahl computed but not listed here is reported as an issue, never
|
|
63
|
+
* dropped.
|
|
64
|
+
*/
|
|
65
|
+
export const USTVA_KENNZAHL_ORDER = [81, 86, 87, 41, 43, 48, 89, 93, 46, 47, 73, 74, 84, 85, 60, 21, 45, 66, 61, 62, 67, 39, 83];
|
|
46
66
|
/** full euros, cents truncated toward zero (form rule for bases) */
|
|
47
67
|
function truncateToEur(cents) {
|
|
48
68
|
return Math.trunc(cents / 100);
|
|
@@ -157,30 +177,34 @@ export function computeUstva(input) {
|
|
|
157
177
|
const kz93Cents = scenario.intraEuAcquisitionReducedCents ?? 0;
|
|
158
178
|
let kz46Cents = scenario.reverseChargeServicesEuCents ?? 0;
|
|
159
179
|
let kz46Source = '(scenario)';
|
|
180
|
+
const kz73Cents = scenario.reverseChargeRealEstateCents ?? 0;
|
|
160
181
|
const kz84Cents = scenario.reverseChargeOtherCents ?? 0;
|
|
161
182
|
const hasRcScenario = scenario.reverseChargeServicesEuCents !== undefined ||
|
|
183
|
+
scenario.reverseChargeRealEstateCents !== undefined ||
|
|
162
184
|
scenario.reverseChargeOtherCents !== undefined;
|
|
163
185
|
if (!hasRcScenario && ledgerRcOutputCents !== 0) {
|
|
164
186
|
kz46Cents = Math.round((ledgerRcOutputCents * 100) / 19);
|
|
165
187
|
kz46Source = '(derived)';
|
|
166
188
|
derived.push(`Kz 46 derived from §13b output tax movement (${ledgerRcOutputCents} cents / 19 %) — split vs Kz 84 unknown without scenario bases`);
|
|
167
189
|
}
|
|
168
|
-
// §13b tax split:
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
kz47Cents = ledgerRcOutputCents;
|
|
190
|
+
// §13b tax split over Kz 47, 74 and 85: each base's 19 %, the last base carrying what keeps the total identical to
|
|
191
|
+
// the ledger movement; a single base carries the whole movement
|
|
192
|
+
const rcTaxCents = new Map();
|
|
193
|
+
const rcBases = [[47, kz46Cents], [74, kz73Cents], [85, kz84Cents]].filter(([, cents]) => cents !== 0);
|
|
194
|
+
if (rcBases.length > 0) {
|
|
195
|
+
let rest = ledgerRcOutputCents;
|
|
196
|
+
rcBases.forEach(([taxKennzahl, baseCents], index) => {
|
|
197
|
+
const cents = index === rcBases.length - 1 ? rest : vatFromNetCents(baseCents, 19);
|
|
198
|
+
rcTaxCents.set(taxKennzahl, cents);
|
|
199
|
+
rest -= cents;
|
|
200
|
+
});
|
|
180
201
|
}
|
|
181
202
|
else if (ledgerRcOutputCents !== 0) {
|
|
182
|
-
|
|
203
|
+
rcTaxCents.set(47, ledgerRcOutputCents); // derived path above set Kz 46
|
|
183
204
|
}
|
|
205
|
+
const kz47Cents = rcTaxCents.get(47) ?? 0;
|
|
206
|
+
const kz74Cents = rcTaxCents.get(74) ?? 0;
|
|
207
|
+
const kz85Cents = rcTaxCents.get(85) ?? 0;
|
|
184
208
|
// consistency: scenario bases × rate must reproduce the ledger tax
|
|
185
209
|
if (kz89Source === '(scenario)' && kz89Cents !== 0) {
|
|
186
210
|
const expected = vatFromNetCents(kz89Cents, 19);
|
|
@@ -191,7 +215,7 @@ export function computeUstva(input) {
|
|
|
191
215
|
}
|
|
192
216
|
}
|
|
193
217
|
if (hasRcScenario) {
|
|
194
|
-
const expected = vatFromNetCents(kz46Cents, 19) + vatFromNetCents(kz84Cents, 19);
|
|
218
|
+
const expected = vatFromNetCents(kz46Cents, 19) + vatFromNetCents(kz73Cents, 19) + vatFromNetCents(kz84Cents, 19);
|
|
195
219
|
const diff = ledgerRcOutputCents - expected;
|
|
196
220
|
checks.push(`§13b: ledger output tax ${ledgerRcOutputCents} vs 19 % of scenario bases ${expected} (diff ${diff})`);
|
|
197
221
|
if (Math.abs(diff) > tolerance) {
|
|
@@ -208,7 +232,7 @@ export function computeUstva(input) {
|
|
|
208
232
|
kennzahl,
|
|
209
233
|
kind,
|
|
210
234
|
value,
|
|
211
|
-
label:
|
|
235
|
+
label: USTVA_KENNZAHL_LABELS[kennzahl] ?? `Kennzahl ${kennzahl}`,
|
|
212
236
|
accounts,
|
|
213
237
|
});
|
|
214
238
|
};
|
|
@@ -226,6 +250,10 @@ export function computeUstva(input) {
|
|
|
226
250
|
put(46, 'baseEur', truncateToEur(kz46Cents), [kz46Source]);
|
|
227
251
|
if (kz47Cents !== 0)
|
|
228
252
|
put(47, 'taxCents', kz47Cents, VAT_ACCOUNTS[input.chart].outputReverseCharge);
|
|
253
|
+
if (kz73Cents !== 0)
|
|
254
|
+
put(73, 'baseEur', truncateToEur(kz73Cents), ['(scenario)']);
|
|
255
|
+
if (kz74Cents !== 0)
|
|
256
|
+
put(74, 'taxCents', kz74Cents, VAT_ACCOUNTS[input.chart].outputReverseCharge);
|
|
229
257
|
if (kz84Cents !== 0)
|
|
230
258
|
put(84, 'baseEur', truncateToEur(kz84Cents), ['(scenario)']);
|
|
231
259
|
if (kz85Cents !== 0)
|
|
@@ -241,6 +269,7 @@ export function computeUstva(input) {
|
|
|
241
269
|
const zahllastCents = formDomesticTaxCents +
|
|
242
270
|
formIgeTaxCents +
|
|
243
271
|
kz47Cents +
|
|
272
|
+
kz74Cents +
|
|
244
273
|
kz85Cents -
|
|
245
274
|
inputTaxCents -
|
|
246
275
|
sondervorauszahlung;
|
|
@@ -256,11 +285,19 @@ export function computeUstva(input) {
|
|
|
256
285
|
if (kzValue(61) !== 0 || ledgerIgeOutputCents !== 0) {
|
|
257
286
|
checks.push(`igE input vs output tax: Kz 61 ${kzValue(61)} vs ledger igE output ${ledgerIgeOutputCents} (diff ${igeDeductionDiff}; non-zero = partial deduction or inconsistency)`);
|
|
258
287
|
}
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
288
|
+
// every § 13b tax field the recipient owes, the GrEStG's Kz 74 included, against its deduction
|
|
289
|
+
const rcOutputCents = kz47Cents + kz74Cents + kz85Cents;
|
|
290
|
+
const rcDeductionDiff = kzValue(67) - rcOutputCents;
|
|
291
|
+
if (kzValue(67) !== 0 || kz47Cents !== 0 || kz74Cents !== 0 || kz85Cents !== 0) {
|
|
292
|
+
checks.push(`§13b input vs output tax: Kz 67 ${kzValue(67)} vs Kz 47+74+85 ${rcOutputCents} (diff ${rcDeductionDiff}; non-zero = partial deduction or inconsistency)`);
|
|
293
|
+
}
|
|
294
|
+
const kennzahlen = USTVA_KENNZAHL_ORDER.filter((kennzahl) => values.has(kennzahl)).map((kennzahl) => values.get(kennzahl));
|
|
295
|
+
// a figure the form order does not place would be left out of the filing: say so instead
|
|
296
|
+
for (const [kennzahl, value] of values) {
|
|
297
|
+
if (!USTVA_KENNZAHL_ORDER.includes(kennzahl)) {
|
|
298
|
+
issues.push(`Kennzahl ${kennzahl} (from ${value.accounts.join(', ')}) has no place in this module's form order — it cannot be filed; add it to USTVA_KENNZAHL_ORDER`);
|
|
299
|
+
}
|
|
262
300
|
}
|
|
263
|
-
const kennzahlen = KENNZAHL_ORDER.filter((kennzahl) => values.has(kennzahl)).map((kennzahl) => values.get(kennzahl));
|
|
264
301
|
return {
|
|
265
302
|
chart: input.chart,
|
|
266
303
|
year: input.year,
|
|
@@ -277,4 +314,4 @@ export function computeUstva(input) {
|
|
|
277
314
|
issues,
|
|
278
315
|
};
|
|
279
316
|
}
|
|
280
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXN0dmEuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi90cy91c3R2YS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQW1CRztBQUNILE9BQU8sRUFBRSxlQUFlLEVBQWUsTUFBTSxxQkFBcUIsQ0FBQztBQUNuRSxPQUFPLEVBQUUsUUFBUSxFQUFzQixNQUFNLG1CQUFtQixDQUFDO0FBQ2pFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQVNuRCxNQUFNLGVBQWUsR0FBMkI7SUFDOUMsRUFBRSxFQUFFLCtCQUErQjtJQUNuQyxFQUFFLEVBQUUsOEJBQThCO0lBQ2xDLEVBQUUsRUFBRSxxQ0FBcUM7SUFDekMsRUFBRSxFQUFFLG9DQUFvQztJQUN4QyxFQUFFLEVBQUUsZ0RBQWdEO0lBQ3BELEVBQUUsRUFBRSx3REFBd0Q7SUFDNUQsRUFBRSxFQUFFLHlDQUF5QztJQUM3QyxFQUFFLEVBQUUsZ0VBQWdFO0lBQ3BFLEVBQUUsRUFBRSx1QkFBdUI7SUFDM0IsRUFBRSxFQUFFLG1FQUFtRTtJQUN2RSxFQUFFLEVBQUUsdUJBQXVCO0lBQzNCLEVBQUUsRUFBRSxxRkFBcUY7SUFDekYsRUFBRSxFQUFFLDhDQUE4QztJQUNsRCxFQUFFLEVBQUUsOENBQThDO0lBQ2xELEVBQUUsRUFBRSxpQ0FBaUM7SUFDckMsRUFBRSxFQUFFLGlEQUFpRDtJQUNyRCxFQUFFLEVBQUUsNkRBQTZEO0lBQ2pFLEVBQUUsRUFBRSxzREFBc0Q7Q0FDM0QsQ0FBQztBQUVGLDZDQUE2QztBQUM3QyxNQUFNLGNBQWMsR0FBRyxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUM7QUFFaEcsb0VBQW9FO0FBQ3BFLFNBQVMsYUFBYSxDQUFDLEtBQWE7SUFDbEMsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssR0FBRyxHQUFHLENBQUMsQ0FBQztBQUNqQyxDQUFDO0FBRUQsNEVBQTRFO0FBQzVFLFNBQVMsWUFBWSxDQUFDLE9BQWUsRUFBRSxXQUFtQjtJQUN4RCxPQUFPLE9BQU8sR0FBRyxXQUFXLENBQUM7QUFDL0IsQ0FBQztBQUVELFNBQVMsb0JBQW9CLENBQUMsS0FBd0IsRUFBRSxhQUFxQjtJQUMzRSxNQUFNLFVBQVUsR0FBRyxhQUFhLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDcEMsT0FBTyxLQUFLLEtBQUssT0FBTyxDQUFDLENBQUMsQ0FBQyxVQUFVLEtBQUssR0FBRyxDQUFDLENBQUMsQ0FBQyxVQUFVLEtBQUssR0FBRyxDQUFDO0FBQ3JFLENBQUM7QUFFRCxNQUFNLFVBQVUsWUFBWSxDQUFDLEtBQWtCO0lBQzdDLE1BQU0sT0FBTyxHQUFHLFFBQVEsQ0FBQyxLQUFLLENBQUMsS0FBSyxFQUFFLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNsRCxNQUFNLFFBQVEsR0FBRyxJQUFJLEdBQUcsQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDLE9BQU8sRUFBRSxFQUFFLENBQUMsQ0FBQyxPQUFPLENBQUMsYUFBYSxFQUFFLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUM5RixNQUFNLFdBQVcsR0FBbUIsRUFBRSxHQUFHLFlBQVksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLEVBQUUsR0FBRyxLQUFLLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDM0YsTUFBTSxNQUFNLEdBQUcsSUFBSSxHQUFHLENBQUMsS0FBSyxDQUFDLGNBQWMsSUFBSSxFQUFFLENBQUMsQ0FBQztJQUNuRCxNQUFNLFNBQVMsR0FBRyxLQUFLLENBQUMsNEJBQTRCLElBQUksR0FBRyxDQUFDO0lBQzVELE1BQU0sTUFBTSxHQUFhLEVBQUUsQ0FBQztJQUM1QixNQUFNLE1BQU0sR0FBYSxFQUFFLENBQUM7SUFFNUIsMEVBQTBFO0lBQzFFLE1BQU0sYUFBYSxHQUFHLElBQUksR0FBRyxFQUFrQixDQUFDO0lBQ2hELE1BQU0sWUFBWSxHQUFHLElBQUksR0FBRyxFQUFrQixDQUFDO0lBQy9DLE1BQU0sWUFBWSxHQUFHLElBQUksR0FBRyxFQUFvQixDQUFDO0lBQ2pELE1BQU0sVUFBVSxHQUFHLENBQ2pCLE1BQTJCLEVBQzNCLFFBQWdCLEVBQ2hCLEtBQWEsRUFDYixhQUFxQixFQUNmLEVBQUU7UUFDUixNQUFNLENBQUMsR0FBRyxDQUFDLFFBQVEsRUFBRSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDLEdBQUcsS0FBSyxDQUFDLENBQUM7UUFDMUQsTUFBTSxJQUFJLEdBQUcsWUFBWSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDOUMsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUFDO1lBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUM1RCxZQUFZLENBQUMsR0FBRyxDQUFDLFFBQVEsRUFBRSxJQUFJLENBQUMsQ0FBQztJQUNuQyxDQUFDLENBQUM7SUFFRixJQUFJLHlCQUF5QixHQUFHLENBQUMsQ0FBQztJQUNsQyxJQUFJLHdCQUF3QixHQUFHLENBQUMsQ0FBQztJQUNqQyxJQUFJLHdCQUF3QixHQUFHLENBQUMsQ0FBQztJQUNqQyxJQUFJLG9CQUFvQixHQUFHLENBQUMsQ0FBQztJQUM3QixJQUFJLG1CQUFtQixHQUFHLENBQUMsQ0FBQztJQUM1QixNQUFNLGVBQWUsR0FBYSxFQUFFLENBQUM7SUFFckMsS0FBSyxNQUFNLFFBQVEsSUFBSSxLQUFLLENBQUMsU0FBUyxFQUFFLENBQUM7UUFDdkMsSUFBSSxRQUFRLENBQUMsV0FBVyxLQUFLLENBQUM7WUFBRSxTQUFTO1FBQ3pDLE1BQU0sRUFBRSxhQUFhLEVBQUUsV0FBVyxFQUFFLEdBQUcsUUFBUSxDQUFDO1FBRWhELGlEQUFpRDtRQUNqRCxJQUFJLFdBQVcsQ0FBQyxjQUFjLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxFQUFFLENBQUM7WUFDdkQseUJBQXlCLElBQUksQ0FBQyxXQUFXLENBQUM7WUFDMUMsU0FBUztRQUNYLENBQUM7UUFDRCxJQUFJLFdBQVcsQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxFQUFFLENBQUM7WUFDdEQsd0JBQXdCLElBQUksQ0FBQyxXQUFXLENBQUM7WUFDekMsU0FBUztRQUNYLENBQUM7UUFDRCxJQUFJLFdBQVcsQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxFQUFFLENBQUM7WUFDdEQsd0JBQXdCLElBQUksQ0FBQyxXQUFXLENBQUM7WUFDekMsU0FBUztRQUNYLENBQUM7UUFDRCxJQUFJLFdBQVcsQ0FBQyx3QkFBd0IsQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUFDLEVBQUUsQ0FBQztZQUNqRSxvQkFBb0IsSUFBSSxDQUFDLFdBQVcsQ0FBQztZQUNyQyxTQUFTO1FBQ1gsQ0FBQztRQUNELElBQUksV0FBVyxDQUFDLG1CQUFtQixDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUMsRUFBRSxDQUFDO1lBQzVELG1CQUFtQixJQUFJLENBQUMsV0FBVyxDQUFDO1lBQ3BDLFNBQVM7UUFDWCxDQUFDO1FBQ0QsSUFBSSxXQUFXLENBQUMsbUNBQW1DLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxFQUFFLENBQUM7WUFDNUUsTUFBTSxDQUFDLElBQUksQ0FDVCxXQUFXLGFBQWEscUdBQXFHLENBQUMsV0FBVyxzR0FBc0csV0FBVyxDQUFDLHdCQUF3QixDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUNoUyxDQUFDO1lBQ0YsU0FBUztRQUNYLENBQUM7UUFFRCxNQUFNLE9BQU8sR0FBRyxRQUFRLENBQUMsR0FBRyxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBQzVDLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUNiLE1BQU0sT0FBTyxHQUFHLE1BQU0sQ0FBQyxRQUFRLENBQUMsYUFBYSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1lBQ25ELElBQUksT0FBTyxJQUFJLEtBQUssSUFBSSxPQUFPLElBQUksS0FBSztnQkFBRSxTQUFTLENBQUMsb0JBQW9CO1lBQ3hFLElBQUksb0JBQW9CLENBQUMsS0FBSyxDQUFDLEtBQUssRUFBRSxhQUFhLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsYUFBYSxDQUFDLEVBQUUsQ0FBQztnQkFDbkYsTUFBTSxDQUFDLElBQUksQ0FDVCx5QkFBeUIsYUFBYSxrQkFBa0IsS0FBSyxDQUFDLEtBQUssSUFBSSxLQUFLLENBQUMsSUFBSSxnREFBZ0QsQ0FDbEksQ0FBQztZQUNKLENBQUM7aUJBQU0sQ0FBQztnQkFDTixlQUFlLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1lBQ3RDLENBQUM7WUFDRCxTQUFTO1FBQ1gsQ0FBQztRQUVELElBQUksT0FBTyxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQ2xCLElBQUksT0FBTyxDQUFDLEtBQUssQ0FBQyxJQUFJLEtBQUssTUFBTSxFQUFFLENBQUM7Z0JBQ2xDLCtEQUErRDtnQkFDL0QsVUFBVSxDQUFDLGFBQWEsRUFBRSxPQUFPLENBQUMsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDLFdBQVcsRUFBRSxhQUFhLENBQUMsQ0FBQztZQUNqRixDQUFDO2lCQUFNLENBQUM7Z0JBQ04saURBQWlEO2dCQUNqRCxNQUFNLElBQUksR0FBRyxPQUFPLENBQUMsV0FBVyxLQUFLLE9BQU8sSUFBSSxPQUFPLENBQUMsV0FBVyxLQUFLLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztnQkFDM0YsVUFBVSxDQUFDLFlBQVksRUFBRSxPQUFPLENBQUMsS0FBSyxDQUFDLFFBQVEsRUFBRSxJQUFJLEdBQUcsV0FBVyxFQUFFLGFBQWEsQ0FBQyxDQUFDO1lBQ3RGLENBQUM7WUFDRCxTQUFTO1FBQ1gsQ0FBQztRQUVELElBQUksT0FBTyxDQUFDLFdBQVcsS0FBSyxTQUFTLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLGFBQWEsQ0FBQyxFQUFFLENBQUM7WUFDcEUsTUFBTSxDQUFDLElBQUksQ0FDVCxtQkFBbUIsYUFBYSxLQUFLLE9BQU8sQ0FBQyxXQUFXLDhFQUE4RSxDQUN2SSxDQUFDO1FBQ0osQ0FBQztJQUNILENBQUM7SUFFRCxJQUFJLGVBQWUsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFLENBQUM7UUFDL0IsTUFBTSxDQUFDLElBQUksQ0FBQyxxREFBcUQsZUFBZSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDakcsQ0FBQztJQUNELElBQUksd0JBQXdCLEtBQUssQ0FBQyxFQUFFLENBQUM7UUFDbkMsTUFBTSxDQUFDLElBQUksQ0FDVCwrQ0FBK0Msd0JBQXdCLDBFQUEwRSxDQUNsSixDQUFDO0lBQ0osQ0FBQztJQUVELDJFQUEyRTtJQUMzRSxNQUFNLFFBQVEsR0FBRyxLQUFLLENBQUMsYUFBYSxJQUFJLEVBQUUsQ0FBQztJQUMzQyxNQUFNLE9BQU8sR0FBYSxFQUFFLENBQUM7SUFFN0IsSUFBSSxTQUFTLEdBQUcsUUFBUSxDQUFDLCtCQUErQixJQUFJLENBQUMsQ0FBQztJQUM5RCxJQUFJLFVBQVUsR0FBRyxZQUFZLENBQUM7SUFDOUIsSUFBSSxRQUFRLENBQUMsK0JBQStCLEtBQUssU0FBUyxJQUFJLG9CQUFvQixLQUFLLENBQUMsRUFBRSxDQUFDO1FBQ3pGLFNBQVMsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsb0JBQW9CLEdBQUcsR0FBRyxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUM7UUFDMUQsVUFBVSxHQUFHLFdBQVcsQ0FBQztRQUN6QixPQUFPLENBQUMsSUFBSSxDQUFDLCtDQUErQyxvQkFBb0IsZ0JBQWdCLENBQUMsQ0FBQztJQUNwRyxDQUFDO0lBQ0QsTUFBTSxTQUFTLEdBQUcsUUFBUSxDQUFDLDhCQUE4QixJQUFJLENBQUMsQ0FBQztJQUUvRCxJQUFJLFNBQVMsR0FBRyxRQUFRLENBQUMsNEJBQTRCLElBQUksQ0FBQyxDQUFDO0lBQzNELElBQUksVUFBVSxHQUFHLFlBQVksQ0FBQztJQUM5QixNQUFNLFNBQVMsR0FBRyxRQUFRLENBQUMsdUJBQXVCLElBQUksQ0FBQyxDQUFDO0lBQ3hELE1BQU0sYUFBYSxHQUNqQixRQUFRLENBQUMsNEJBQTRCLEtBQUssU0FBUztRQUNuRCxRQUFRLENBQUMsdUJBQXVCLEtBQUssU0FBUyxDQUFDO0lBQ2pELElBQUksQ0FBQyxhQUFhLElBQUksbUJBQW1CLEtBQUssQ0FBQyxFQUFFLENBQUM7UUFDaEQsU0FBUyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxtQkFBbUIsR0FBRyxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQztRQUN6RCxVQUFVLEdBQUcsV0FBVyxDQUFDO1FBQ3pCLE9BQU8sQ0FBQyxJQUFJLENBQ1YsZ0RBQWdELG1CQUFtQixnRUFBZ0UsQ0FDcEksQ0FBQztJQUNKLENBQUM7SUFFRCxrRUFBa0U7SUFDbEUsSUFBSSxTQUFTLEdBQUcsQ0FBQyxDQUFDO0lBQ2xCLElBQUksU0FBUyxHQUFHLENBQUMsQ0FBQztJQUNsQixJQUFJLFNBQVMsS0FBSyxDQUFDLElBQUksU0FBUyxLQUFLLENBQUMsRUFBRSxDQUFDO1FBQ3ZDLFNBQVMsR0FBRyxlQUFlLENBQUMsU0FBUyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQzNDLFNBQVMsR0FBRyxtQkFBbUIsR0FBRyxTQUFTLENBQUM7SUFDOUMsQ0FBQztTQUFNLElBQUksU0FBUyxLQUFLLENBQUMsRUFBRSxDQUFDO1FBQzNCLFNBQVMsR0FBRyxtQkFBbUIsQ0FBQztJQUNsQyxDQUFDO1NBQU0sSUFBSSxTQUFTLEtBQUssQ0FBQyxFQUFFLENBQUM7UUFDM0IsU0FBUyxHQUFHLG1CQUFtQixDQUFDO0lBQ2xDLENBQUM7U0FBTSxJQUFJLG1CQUFtQixLQUFLLENBQUMsRUFBRSxDQUFDO1FBQ3JDLFNBQVMsR0FBRyxtQkFBbUIsQ0FBQyxDQUFDLCtCQUErQjtJQUNsRSxDQUFDO0lBRUQsbUVBQW1FO0lBQ25FLElBQUksVUFBVSxLQUFLLFlBQVksSUFBSSxTQUFTLEtBQUssQ0FBQyxFQUFFLENBQUM7UUFDbkQsTUFBTSxRQUFRLEdBQUcsZUFBZSxDQUFDLFNBQVMsRUFBRSxFQUFFLENBQUMsQ0FBQztRQUNoRCxNQUFNLElBQUksR0FBRyxvQkFBb0IsR0FBRyxRQUFRLENBQUM7UUFDN0MsTUFBTSxDQUFDLElBQUksQ0FBQywrQkFBK0Isb0JBQW9CLDZCQUE2QixRQUFRLFVBQVUsSUFBSSxHQUFHLENBQUMsQ0FBQztRQUN2SCxJQUFJLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEdBQUcsU0FBUyxFQUFFLENBQUM7WUFDL0IsTUFBTSxDQUFDLElBQUksQ0FBQyxvRUFBb0UsSUFBSSxRQUFRLENBQUMsQ0FBQztRQUNoRyxDQUFDO0lBQ0gsQ0FBQztJQUNELElBQUksYUFBYSxFQUFFLENBQUM7UUFDbEIsTUFBTSxRQUFRLEdBQUcsZUFBZSxDQUFDLFNBQVMsRUFBRSxFQUFFLENBQUMsR0FBRyxlQUFlLENBQUMsU0FBUyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQ2pGLE1BQU0sSUFBSSxHQUFHLG1CQUFtQixHQUFHLFFBQVEsQ0FBQztRQUM1QyxNQUFNLENBQUMsSUFBSSxDQUFDLDJCQUEyQixtQkFBbUIsOEJBQThCLFFBQVEsVUFBVSxJQUFJLEdBQUcsQ0FBQyxDQUFDO1FBQ25ILElBQUksSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsR0FBRyxTQUFTLEVBQUUsQ0FBQztZQUMvQixNQUFNLENBQUMsSUFBSSxDQUFDLHVFQUF1RSxJQUFJLFFBQVEsQ0FBQyxDQUFDO1FBQ25HLENBQUM7SUFDSCxDQUFDO0lBQ0QsTUFBTSxDQUFDLElBQUksQ0FBQyxHQUFHLE9BQU8sQ0FBQyxDQUFDO0lBRXhCLDJFQUEyRTtJQUMzRSxNQUFNLE1BQU0sR0FBRyxJQUFJLEdBQUcsRUFBMEIsQ0FBQztJQUNqRCxNQUFNLEdBQUcsR0FBRyxDQUFDLFFBQWdCLEVBQUUsSUFBbUIsRUFBRSxLQUFhLEVBQUUsUUFBa0IsRUFBUSxFQUFFO1FBQzdGLElBQUksS0FBSyxLQUFLLENBQUMsSUFBSSxRQUFRLENBQUMsTUFBTSxLQUFLLENBQUM7WUFBRSxPQUFPO1FBQ2pELE1BQU0sQ0FBQyxHQUFHLENBQUMsUUFBUSxFQUFFO1lBQ25CLFFBQVE7WUFDUixJQUFJO1lBQ0osS0FBSztZQUNMLEtBQUssRUFBRSxlQUFlLENBQUMsUUFBUSxDQUFDLElBQUksWUFBWSxRQUFRLEVBQUU7WUFDMUQsUUFBUTtTQUNULENBQUMsQ0FBQztJQUNMLENBQUMsQ0FBQztJQUVGLEtBQUssTUFBTSxDQUFDLFFBQVEsRUFBRSxLQUFLLENBQUMsSUFBSSxhQUFhLEVBQUUsQ0FBQztRQUM5QyxHQUFHLENBQUMsUUFBUSxFQUFFLFNBQVMsRUFBRSxhQUFhLENBQUMsS0FBSyxDQUFDLEVBQUUsWUFBWSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQztJQUNuRixDQUFDO0lBQ0QsS0FBSyxNQUFNLENBQUMsUUFBUSxFQUFFLEtBQUssQ0FBQyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBQzdDLEdBQUcsQ0FBQyxRQUFRLEVBQUUsVUFBVSxFQUFFLEtBQUssRUFBRSxZQUFZLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDO0lBQ3JFLENBQUM7SUFDRCxJQUFJLFNBQVMsS0FBSyxDQUFDO1FBQUUsR0FBRyxDQUFDLEVBQUUsRUFBRSxTQUFTLEVBQUUsYUFBYSxDQUFDLFNBQVMsQ0FBQyxFQUFFLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQztJQUNoRixJQUFJLFNBQVMsS0FBSyxDQUFDO1FBQUUsR0FBRyxDQUFDLEVBQUUsRUFBRSxTQUFTLEVBQUUsYUFBYSxDQUFDLFNBQVMsQ0FBQyxFQUFFLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQztJQUNsRixJQUFJLFNBQVMsS0FBSyxDQUFDO1FBQUUsR0FBRyxDQUFDLEVBQUUsRUFBRSxTQUFTLEVBQUUsYUFBYSxDQUFDLFNBQVMsQ0FBQyxFQUFFLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQztJQUNoRixJQUFJLFNBQVMsS0FBSyxDQUFDO1FBQUUsR0FBRyxDQUFDLEVBQUUsRUFBRSxVQUFVLEVBQUUsU0FBUyxFQUFFLFlBQVksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUMsbUJBQW1CLENBQUMsQ0FBQztJQUNuRyxJQUFJLFNBQVMsS0FBSyxDQUFDO1FBQUUsR0FBRyxDQUFDLEVBQUUsRUFBRSxTQUFTLEVBQUUsYUFBYSxDQUFDLFNBQVMsQ0FBQyxFQUFFLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQztJQUNsRixJQUFJLFNBQVMsS0FBSyxDQUFDO1FBQUUsR0FBRyxDQUFDLEVBQUUsRUFBRSxVQUFVLEVBQUUsU0FBUyxFQUFFLFlBQVksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUMsbUJBQW1CLENBQUMsQ0FBQztJQUNuRyxNQUFNLG1CQUFtQixHQUFHLEtBQUssQ0FBQyx3QkFBd0IsSUFBSSxDQUFDLENBQUM7SUFDaEUsSUFBSSxtQkFBbUIsS0FBSyxDQUFDO1FBQUUsR0FBRyxDQUFDLEVBQUUsRUFBRSxVQUFVLEVBQUUsbUJBQW1CLEVBQUUsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDO0lBRXJGLE1BQU0sT0FBTyxHQUFHLENBQUMsUUFBZ0IsRUFBVSxFQUFFLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsRUFBRSxLQUFLLElBQUksQ0FBQyxDQUFDO0lBRS9FLDRFQUE0RTtJQUM1RSxNQUFNLG9CQUFvQixHQUN4QixZQUFZLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxHQUFHLFlBQVksQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDL0QsTUFBTSxlQUFlLEdBQUcsWUFBWSxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsR0FBRyxZQUFZLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQ3JGLE1BQU0sYUFBYSxHQUFHLE9BQU8sQ0FBQyxFQUFFLENBQUMsR0FBRyxPQUFPLENBQUMsRUFBRSxDQUFDLEdBQUcsT0FBTyxDQUFDLEVBQUUsQ0FBQyxHQUFHLE9BQU8sQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUM1RSxNQUFNLGFBQWEsR0FDakIsb0JBQW9CO1FBQ3BCLGVBQWU7UUFDZixTQUFTO1FBQ1QsU0FBUztRQUNULGFBQWE7UUFDYixtQkFBbUIsQ0FBQztJQUN0QixHQUFHLENBQUMsRUFBRSxFQUFFLFVBQVUsRUFBRSxhQUFhLEVBQUUsQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDO0lBRW5ELDZFQUE2RTtJQUM3RSxNQUFNLG9CQUFvQixHQUN4Qix5QkFBeUIsR0FBRyx3QkFBd0IsR0FBRyx3QkFBd0IsQ0FBQztJQUNsRixNQUFNLHdCQUF3QixHQUFHLG9CQUFvQixHQUFHLG9CQUFvQixDQUFDO0lBQzdFLE1BQU0sQ0FBQyxJQUFJLENBQ1QsK0JBQStCLG9CQUFvQixZQUFZLG9CQUFvQixVQUFVLHdCQUF3QixHQUFHLENBQ3pILENBQUM7SUFDRixJQUFJLElBQUksQ0FBQyxHQUFHLENBQUMsd0JBQXdCLENBQUMsR0FBRyxTQUFTLEVBQUUsQ0FBQztRQUNuRCxNQUFNLENBQUMsSUFBSSxDQUNULDBFQUEwRSx3QkFBd0IscUJBQXFCLFNBQVMsa0NBQWtDLENBQ25LLENBQUM7SUFDSixDQUFDO0lBQ0QsTUFBTSxnQkFBZ0IsR0FBRyxPQUFPLENBQUMsRUFBRSxDQUFDLEdBQUcsb0JBQW9CLENBQUM7SUFDNUQsSUFBSSxPQUFPLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxJQUFJLG9CQUFvQixLQUFLLENBQUMsRUFBRSxDQUFDO1FBQ3BELE1BQU0sQ0FBQyxJQUFJLENBQ1Qsa0NBQWtDLE9BQU8sQ0FBQyxFQUFFLENBQUMseUJBQXlCLG9CQUFvQixVQUFVLGdCQUFnQixrREFBa0QsQ0FDdkssQ0FBQztJQUNKLENBQUM7SUFDRCxNQUFNLGVBQWUsR0FBRyxPQUFPLENBQUMsRUFBRSxDQUFDLEdBQUcsQ0FBQyxTQUFTLEdBQUcsU0FBUyxDQUFDLENBQUM7SUFDOUQsSUFBSSxPQUFPLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxJQUFJLFNBQVMsS0FBSyxDQUFDLElBQUksU0FBUyxLQUFLLENBQUMsRUFBRSxDQUFDO1FBQzVELE1BQU0sQ0FBQyxJQUFJLENBQ1QsbUNBQW1DLE9BQU8sQ0FBQyxFQUFFLENBQUMsZ0JBQWdCLFNBQVMsR0FBRyxTQUFTLFVBQVUsZUFBZSxrREFBa0QsQ0FDL0osQ0FBQztJQUNKLENBQUM7SUFFRCxNQUFNLFVBQVUsR0FBRyxjQUFjLENBQUMsTUFBTSxDQUFDLENBQUMsUUFBUSxFQUFFLEVBQUUsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUM5RSxDQUFDLFFBQVEsRUFBRSxFQUFFLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUUsQ0FDcEMsQ0FBQztJQUVGLE9BQU87UUFDTCxLQUFLLEVBQUUsS0FBSyxDQUFDLEtBQUs7UUFDbEIsSUFBSSxFQUFFLEtBQUssQ0FBQyxJQUFJO1FBQ2hCLE1BQU0sRUFBRSxLQUFLLENBQUMsTUFBTTtRQUNwQixjQUFjLEVBQUUsS0FBSyxDQUFDLGNBQWMsSUFBSSxNQUFNO1FBQzlDLFVBQVU7UUFDVixhQUFhO1FBQ2IsY0FBYyxFQUFFO1lBQ2Qsb0JBQW9CO1lBQ3BCLGtCQUFrQixFQUFFLG9CQUFvQjtZQUN4Qyx3QkFBd0I7WUFDeEIsTUFBTTtTQUNQO1FBQ0QsTUFBTTtLQUNQLENBQUM7QUFDSixDQUFDIn0=
|
|
317
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXN0dmEuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi90cy91c3R2YS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQW1CRztBQUNILE9BQU8sRUFBRSxlQUFlLEVBQWUsTUFBTSxxQkFBcUIsQ0FBQztBQUNuRSxPQUFPLEVBQUUsUUFBUSxFQUFzQixNQUFNLG1CQUFtQixDQUFDO0FBQ2pFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQVNuRDs7Ozs7R0FLRztBQUNILE1BQU0sQ0FBQyxNQUFNLHFCQUFxQixHQUFxQztJQUNyRSxFQUFFLEVBQUUsK0JBQStCO0lBQ25DLEVBQUUsRUFBRSw4QkFBOEI7SUFDbEMsRUFBRSxFQUFFLDREQUE0RDtJQUNoRSxFQUFFLEVBQUUscUNBQXFDO0lBQ3pDLEVBQUUsRUFBRSxvQ0FBb0M7SUFDeEMsRUFBRSxFQUFFLGdEQUFnRDtJQUNwRCxFQUFFLEVBQUUsd0RBQXdEO0lBQzVELEVBQUUsRUFBRSx5Q0FBeUM7SUFDN0MsRUFBRSxFQUFFLGdJQUFnSTtJQUNwSSxFQUFFLEVBQUUsdUJBQXVCO0lBQzNCLEVBQUUsRUFBRSxxRUFBcUU7SUFDekUsRUFBRSxFQUFFLHVCQUF1QjtJQUMzQixFQUFFLEVBQUUsK0RBQStEO0lBQ25FLEVBQUUsRUFBRSx1QkFBdUI7SUFDM0IsRUFBRSxFQUFFLHFGQUFxRjtJQUN6RixFQUFFLEVBQUUsb0RBQW9EO0lBQ3hELEVBQUUsRUFBRSxnRUFBZ0U7SUFDcEUsRUFBRSxFQUFFLDhDQUE4QztJQUNsRCxFQUFFLEVBQUUsOENBQThDO0lBQ2xELEVBQUUsRUFBRSxpQ0FBaUM7SUFDckMsRUFBRSxFQUFFLGlEQUFpRDtJQUNyRCxFQUFFLEVBQUUsNkRBQTZEO0lBQ2pFLEVBQUUsRUFBRSxzREFBc0Q7Q0FDM0QsQ0FBQztBQUVGOzs7Ozs7Ozs7R0FTRztBQUNILE1BQU0sQ0FBQyxNQUFNLG9CQUFvQixHQUFzQixDQUFD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
|
package/dist_ts/ustva.types.d.ts
CHANGED
|
@@ -16,9 +16,11 @@ export interface IScenarioBaseInput {
|
|
|
16
16
|
intraEuAcquisitionStandardCents?: TCents;
|
|
17
17
|
/** igE 7 % net bases -> Kz 93 */
|
|
18
18
|
intraEuAcquisitionReducedCents?: TCents;
|
|
19
|
-
/** §13b sonstige Leistungen
|
|
19
|
+
/** §13b Abs. 1: sonstige Leistungen of an entrepreneur established in another member state -> Kz 46/47 */
|
|
20
20
|
reverseChargeServicesEuCents?: TCents;
|
|
21
|
-
/**
|
|
21
|
+
/** §13b Abs. 2 Nr. 3: Umsätze, die unter das GrEStG fallen -> Kz 73/74 */
|
|
22
|
+
reverseChargeRealEstateCents?: TCents;
|
|
23
|
+
/** the other §13b inputs, Abs. 2 Nr. 1, 2, 4 bis 12 -> Kz 84/85 */
|
|
22
24
|
reverseChargeOtherCents?: TCents;
|
|
23
25
|
}
|
|
24
26
|
/**
|