Skip to content

Commit 50a8f63

Browse files
committed
update sdk to OAS version 33
1 parent 31e0a39 commit 50a8f63

File tree

24 files changed

+165
-57
lines changed

24 files changed

+165
-57
lines changed

docs/v4/accounting/index.html

Lines changed: 16 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -4262,6 +4262,9 @@
42624262
"type" : "string",
42634263
"description" : "Number of invoice or credit note you are applying payment to e.g. INV-4003"
42644264
},
4265+
"BatchPayment" : {
4266+
"$ref" : "#/components/schemas/BatchPayment"
4267+
},
42654268
"Account" : {
42664269
"$ref" : "#/components/schemas/Account"
42674270
},
@@ -5619,7 +5622,7 @@
56195622
"ReportTaxType" : {
56205623
"type" : "string",
56215624
"description" : "See ReportTaxTypes",
5622-
"enum" : [ "AVALARA", "BASEXCLUDED", "CAPITALSALESOUTPUT", "CAPITALEXPENSESINPUT", "ECOUTPUT", "ECOUTPUTSERVICES", "ECINPUT", "ECACQUISITIONS", "EXEMPTEXPENSES", "EXEMPTINPUT", "EXEMPTOUTPUT", "GSTONIMPORTS", "INPUT", "INPUTTAXED", "MOSSSALES", "NONE", "NONEOUTPUT", "OUTPUT", "PURCHASESINPUT", "SALESOUTPUT", "EXEMPTCAPITAL", "EXEMPTEXPORT", "CAPITALEXINPUT", "GSTONCAPIMPORTS", "GSTONCAPITALIMPORTS", "REVERSECHARGES", "PAYMENTS", "INVOICE", "CASH", "ACCRUAL", "FLATRATECASH", "FLATRATEACCRUAL", "ACCRUALS", "TXCA", "SRCAS", "DSOUTPUT", "BLINPUT2", "EPINPUT", "IMINPUT2", "MEINPUT", "IGDSINPUT2", "ESN33OUTPUT", "OPINPUT", "OSOUTPUT", "TXN33INPUT", "TXESSINPUT", "TXREINPUT", "TXPETINPUT", "NRINPUT", "ES33OUTPUT", "ZERORATEDINPUT", "ZERORATEDOUTPUT", "DRCHARGESUPPLY", "DRCHARGE", "CAPINPUT", "CAPIMPORTS", "IMINPUT", "INPUT2", "CIUINPUT", "SRINPUT", "OUTPUT2", "SROUTPUT", "CAPOUTPUT", "SROUTPUT2", "CIUOUTPUT", "ZROUTPUT", "ZREXPORT", "ACC28PLUS", "ACCUPTO28", "OTHEROUTPUT", "SHOUTPUT", "ZRINPUT", "BADDEBT", "OTHERINPUT", "BADDEBTRELIEF", "IGDSINPUT3", "SROVR", "TOURISTREFUND", "TXRCN33INPUT", "TXRCREINPUT", "TXRCESSINPUT", "TXRCTSINPUT", "CAPEXINPUT", "UNDEFINED", "CAPEXOUTPUT", "ZEROEXPOUTPUT", "GOODSIMPORT", "NONEINPUT", "NOTREPORTED" ]
5625+
"enum" : [ "AVALARA", "BASEXCLUDED", "CAPITALSALESOUTPUT", "CAPITALEXPENSESINPUT", "ECOUTPUT", "ECOUTPUTSERVICES", "ECINPUT", "ECACQUISITIONS", "EXEMPTEXPENSES", "EXEMPTINPUT", "EXEMPTOUTPUT", "GSTONIMPORTS", "INPUT", "INPUTTAXED", "MOSSSALES", "NONE", "NONEOUTPUT", "OUTPUT", "PURCHASESINPUT", "SALESOUTPUT", "EXEMPTCAPITAL", "EXEMPTEXPORT", "CAPITALEXINPUT", "GSTONCAPIMPORTS", "GSTONCAPITALIMPORTS", "REVERSECHARGES", "PAYMENTS", "INVOICE", "CASH", "ACCRUAL", "FLATRATECASH", "FLATRATEACCRUAL", "ACCRUALS", "TXCA", "SRCAS", "DSOUTPUT", "BLINPUT2", "EPINPUT", "IMINPUT2", "MEINPUT", "IGDSINPUT2", "ESN33OUTPUT", "OPINPUT", "OSOUTPUT", "TXN33INPUT", "TXESSINPUT", "TXREINPUT", "TXPETINPUT", "NRINPUT", "ES33OUTPUT", "ZERORATEDINPUT", "ZERORATEDOUTPUT", "DRCHARGESUPPLY", "DRCHARGE", "CAPINPUT", "CAPIMPORTS", "IMINPUT", "INPUT2", "CIUINPUT", "SRINPUT", "OUTPUT2", "SROUTPUT", "CAPOUTPUT", "SROUTPUT2", "CIUOUTPUT", "ZROUTPUT", "ZREXPORT", "ACC28PLUS", "ACCUPTO28", "OTHEROUTPUT", "SHOUTPUT", "ZRINPUT", "BADDEBT", "OTHERINPUT", "BADDEBTRELIEF", "IGDSINPUT3", "SROVR", "TOURISTREFUND", "TXRCN33INPUT", "TXRCREINPUT", "TXRCESSINPUT", "TXRCTSINPUT", "CAPEXINPUT", "UNDEFINED", "CAPEXOUTPUT", "ZEROEXPOUTPUT", "GOODSIMPORT", "NONEINPUT", "NOTREPORTED", "SROVRRS", "SROVRLVG", "SRLVG" ]
56235626
},
56245627
"CanApplyToAssets" : {
56255628
"type" : "boolean",
@@ -5684,7 +5687,7 @@
56845687
"title" : "",
56855688
"type" : "string",
56865689
"description" : "See Tax Types – can only be used on update calls",
5687-
"enum" : [ "OUTPUT", "INPUT", "CAPEXINPUT", "EXEMPTEXPORT", "EXEMPTEXPENSES", "EXEMPTCAPITAL", "EXEMPTOUTPUT", "INPUTTAXED", "BASEXCLUDED", "GSTONCAPIMPORTS", "GSTONIMPORTS", "NONE", "INPUT2", "ZERORATED", "OUTPUT2", "CAPEXINPUT2", "CAPEXOUTPUT", "CAPEXOUTPUT2", "CAPEXSRINPUT", "CAPEXSROUTPUT", "ECACQUISITIONS", "ECZRINPUT", "ECZROUTPUT", "ECZROUTPUTSERVICES", "EXEMPTINPUT", "REVERSECHARGES", "RRINPUT", "RROUTPUT", "SRINPUT", "SROUTPUT", "ZERORATEDINPUT", "ZERORATEDOUTPUT", "BLINPUT", "DSOUTPUT", "EPINPUT", "ES33OUTPUT", "ESN33OUTPUT", "IGDSINPUT2", "IMINPUT2", "MEINPUT", "NRINPUT", "OPINPUT", "OSOUTPUT", "TXESSINPUT", "TXN33INPUT", "TXPETINPUT", "TXREINPUT", "INPUT3", "INPUT4", "OUTPUT3", "OUTPUT4", "SROUTPUT2", "TXCA", "SRCAS", "BLINPUT2", "DRCHARGESUPPLY20", "DRCHARGE20", "DRCHARGESUPPLY5", "DRCHARGE5", "BADDEBTRELIEF", "IGDSINPUT3", "SROVR", "TOURISTREFUND", "TXRCN33INPUT", "TXRCREINPUT", "TXRCESSINPUT", "TXRCTSINPUT" ]
5690+
"enum" : [ "OUTPUT", "INPUT", "CAPEXINPUT", "EXEMPTEXPORT", "EXEMPTEXPENSES", "EXEMPTCAPITAL", "EXEMPTOUTPUT", "INPUTTAXED", "BASEXCLUDED", "GSTONCAPIMPORTS", "GSTONIMPORTS", "NONE", "INPUT2", "ZERORATED", "OUTPUT2", "CAPEXINPUT2", "CAPEXOUTPUT", "CAPEXOUTPUT2", "CAPEXSRINPUT", "CAPEXSROUTPUT", "ECACQUISITIONS", "ECZRINPUT", "ECZROUTPUT", "ECZROUTPUTSERVICES", "EXEMPTINPUT", "REVERSECHARGES", "RRINPUT", "RROUTPUT", "SRINPUT", "SROUTPUT", "ZERORATEDINPUT", "ZERORATEDOUTPUT", "BLINPUT", "DSOUTPUT", "EPINPUT", "ES33OUTPUT", "ESN33OUTPUT", "IGDSINPUT2", "IMINPUT2", "MEINPUT", "NRINPUT", "OPINPUT", "OSOUTPUT", "TXESSINPUT", "TXN33INPUT", "TXPETINPUT", "TXREINPUT", "INPUT3", "INPUT4", "OUTPUT3", "OUTPUT4", "SROUTPUT2", "TXCA", "SRCAS", "BLINPUT2", "DRCHARGESUPPLY20", "DRCHARGE20", "DRCHARGESUPPLY5", "DRCHARGE5", "BADDEBTRELIEF", "IGDSINPUT3", "SROVR", "TOURISTREFUND", "TXRCN33INPUT", "TXRCREINPUT", "TXRCESSINPUT", "TXRCTSINPUT", "OUTPUTY23", "DSOUTPUTY23", "INPUTY23", "IMINPUT2Y23", "IGDSINPUT2Y23", "TXPETINPUTY23", "TXESSINPUTY23", "TXN33INPUTY23", "TXREINPUTY23", "TXCAY23", "BADDEBTRELIEFY23", "IGDSINPUT3Y23", "SROVRRSY23", "SROVRLVGY23", "SRLVGY23" ]
56885691
};
56895692
defs["TenNinetyNineContact"] = {
56905693
"title" : "",
@@ -6065,7 +6068,7 @@
60656068
<nav id="scrollingNav">
60666069
<ul class="sidenav nav nav-list">
60676070
<li class="nav-header" data-group="Accounting"><strong>SDK: </strong><span id='sdk-name'></span></li>
6068-
<li class="nav-header" data-group="Accounting"><strong>VSN: </strong>4.23.0</li>
6071+
<li class="nav-header" data-group="Accounting"><strong>VSN: </strong>4.24.0</li>
60696072
<li class="nav-header" data-group="Accounting"><a href="#api-Accounting">Methods</a></li>
60706073
<li data-group="Accounting" data-name="createAccount" class="">
60716074
<a href="#api-Accounting-createAccount">createAccount</a>
@@ -8583,9 +8586,12 @@ <h3>Usage and SDK Samples</h3>
85838586
paymentService.setPaymentServiceName("ACME Payments");
85848587
paymentService.setPaymentServiceUrl("https://www.payupnow.com/");
85858588
paymentService.setPayNowText("Pay Now");
8589+
8590+
PaymentServices paymentServices = new PaymentServices();
8591+
paymentServices.addPaymentServicesItem(paymentService);
85868592

85878593
try {
8588-
PaymentServices result = apiInstance.createBrandingThemePaymentServices(accessToken, xeroTenantId, brandingThemeID, paymentService);
8594+
PaymentServices result = apiInstance.createBrandingThemePaymentServices(accessToken, xeroTenantId, brandingThemeID, paymentServices);
85898595
System.out.println(result);
85908596
} catch (XeroException e) {
85918597
System.err.println("Exception when calling AccountingApi#createBrandingThemePaymentServices");
@@ -8675,15 +8681,15 @@ <h2>Parameters</h2>
86758681
<th>Description</th>
86768682
</tr>
86778683
<tr>
8678-
<td style="width:150px;">paymentService <span style="color:red;">*</span></td>
8684+
<td style="width:150px;">paymentServices <span style="color:red;">*</span></td>
86798685
<td>
86808686
<div class="json-schema-view">
86818687
<div class="primitive">
86828688
<span class="type">
8683-
PaymentService
8689+
PaymentServices
86848690
</span>
86858691
<div class="inner description marked">
8686-
PaymentService object in body of request
8692+
PaymentServices array with PaymentService object in body of request
86878693
</div>
86888694
</div>
86898695
<div class="inner required">
@@ -8692,13 +8698,13 @@ <h2>Parameters</h2>
86928698
</div>
86938699
<script type="application/ld+json">
86948700
{
8695-
"description" : "PaymentService object in body of request",
8701+
"description" : "PaymentServices array with PaymentService object in body of request",
86968702
"content" : {
86978703
"application/json" : {
86988704
"schema" : {
8699-
"$ref" : "#/components/schemas/PaymentService"
8705+
"$ref" : "#/components/schemas/PaymentServices"
87008706
},
8701-
"example" : "{ \"PaymentServiceID\": \"00000000-0000-0000-0000-000000000000\", \"PaymentServiceName\": \"Payments Service\", \"PaymentServiceUrl\": \"https://www.paymentservice.com/\", \"PayNowText\": \"Pay Now\" }"
8707+
"example" : "{ \"PaymentServices\": [ { \"PaymentServiceID\": \"54b3b4f6-0443-4fba-bcd1-61ec0c35ca55\", \"PaymentServiceName\": \"PayUpNow\", \"PaymentServiceUrl\": \"https://www.payupnow.com/\", \"PaymentServiceType\": \"Custom\", \"PayNowText\": \"Time To Pay\" } ] }"
87028708
}
87038709
},
87048710
"required" : true

docs/v4/appstore/index.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1230,7 +1230,7 @@
12301230
<nav id="scrollingNav">
12311231
<ul class="sidenav nav nav-list">
12321232
<li class="nav-header" data-group="AppStore"><strong>SDK: </strong><span id='sdk-name'></span></li>
1233-
<li class="nav-header" data-group="AppStore"><strong>VSN: </strong>4.23.0</li>
1233+
<li class="nav-header" data-group="AppStore"><strong>VSN: </strong>4.24.0</li>
12341234
<li class="nav-header" data-group="AppStore"><a href="#api-AppStore">Methods</a></li>
12351235
<li data-group="AppStore" data-name="getSubscription" class="">
12361236
<a href="#api-AppStore-getSubscription">getSubscription</a>

docs/v4/assets/index.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1388,7 +1388,7 @@
13881388
<nav id="scrollingNav">
13891389
<ul class="sidenav nav nav-list">
13901390
<li class="nav-header" data-group="Asset"><strong>SDK: </strong><span id='sdk-name'></span></li>
1391-
<li class="nav-header" data-group="Asset"><strong>VSN: </strong>4.23.0</li>
1391+
<li class="nav-header" data-group="Asset"><strong>VSN: </strong>4.24.0</li>
13921392
<li class="nav-header" data-group="Asset"><a href="#api-Asset">Methods</a></li>
13931393
<li data-group="Asset" data-name="createAsset" class="">
13941394
<a href="#api-Asset-createAsset">createAsset</a>

docs/v4/files/index.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1129,7 +1129,7 @@
11291129
<nav id="scrollingNav">
11301130
<ul class="sidenav nav nav-list">
11311131
<li class="nav-header" data-group="Files"><strong>SDK: </strong><span id='sdk-name'></span></li>
1132-
<li class="nav-header" data-group="Files"><strong>VSN: </strong>4.23.0</li>
1132+
<li class="nav-header" data-group="Files"><strong>VSN: </strong>4.24.0</li>
11331133
<li class="nav-header" data-group="Files"><a href="#api-Files">Methods</a></li>
11341134
<li data-group="Files" data-name="createFileAssociation" class="">
11351135
<a href="#api-Files-createFileAssociation">createFileAssociation</a>

docs/v4/finance/index.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2714,7 +2714,7 @@
27142714
<nav id="scrollingNav">
27152715
<ul class="sidenav nav nav-list">
27162716
<li class="nav-header" data-group="Finance"><strong>SDK: </strong><span id='sdk-name'></span></li>
2717-
<li class="nav-header" data-group="Finance"><strong>VSN: </strong>4.23.0</li>
2717+
<li class="nav-header" data-group="Finance"><strong>VSN: </strong>4.24.0</li>
27182718
<li class="nav-header" data-group="Finance"><a href="#api-Finance">Methods</a></li>
27192719
<li data-group="Finance" data-name="getAccountingActivityAccountUsage" class="">
27202720
<a href="#api-Finance-getAccountingActivityAccountUsage">getAccountingActivityAccountUsage</a>

docs/v4/payroll-au/index.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3343,7 +3343,7 @@
33433343
<nav id="scrollingNav">
33443344
<ul class="sidenav nav nav-list">
33453345
<li class="nav-header" data-group="PayrollAu"><strong>SDK: </strong><span id='sdk-name'></span></li>
3346-
<li class="nav-header" data-group="PayrollAu"><strong>VSN: </strong>4.23.0</li>
3346+
<li class="nav-header" data-group="PayrollAu"><strong>VSN: </strong>4.24.0</li>
33473347
<li class="nav-header" data-group="PayrollAu"><a href="#api-PayrollAu">Methods</a></li>
33483348
<li data-group="PayrollAu" data-name="createEmployee" class="">
33493349
<a href="#api-PayrollAu-createEmployee">createEmployee</a>

docs/v4/payroll-nz/index.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3834,7 +3834,7 @@
38343834
<nav id="scrollingNav">
38353835
<ul class="sidenav nav nav-list">
38363836
<li class="nav-header" data-group="PayrollNz"><strong>SDK: </strong><span id='sdk-name'></span></li>
3837-
<li class="nav-header" data-group="PayrollNz"><strong>VSN: </strong>4.23.0</li>
3837+
<li class="nav-header" data-group="PayrollNz"><strong>VSN: </strong>4.24.0</li>
38383838
<li class="nav-header" data-group="PayrollNz"><a href="#api-PayrollNz">Methods</a></li>
38393839
<li data-group="PayrollNz" data-name="approveTimesheet" class="">
38403840
<a href="#api-PayrollNz-approveTimesheet">approveTimesheet</a>

docs/v4/payroll-uk/index.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3506,7 +3506,7 @@
35063506
<nav id="scrollingNav">
35073507
<ul class="sidenav nav nav-list">
35083508
<li class="nav-header" data-group="PayrollUk"><strong>SDK: </strong><span id='sdk-name'></span></li>
3509-
<li class="nav-header" data-group="PayrollUk"><strong>VSN: </strong>4.23.0</li>
3509+
<li class="nav-header" data-group="PayrollUk"><strong>VSN: </strong>4.24.0</li>
35103510
<li class="nav-header" data-group="PayrollUk"><a href="#api-PayrollUk">Methods</a></li>
35113511
<li data-group="PayrollUk" data-name="approveTimesheet" class="">
35123512
<a href="#api-PayrollUk-approveTimesheet">approveTimesheet</a>

pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
<artifactId>xero-java</artifactId>
66
<packaging>jar</packaging>
77
<name>xero-java</name>
8-
<version>4.23.0</version>
8+
<version>4.24.0</version>
99
<url>https://github.com/XeroAPI/Xero-Java</url>
1010
<description>This is the official Java SDK for Xero API</description>
1111
<licenses>

src/main/java/com/xero/api/client/AccountingApi.java

Lines changed: 17 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
* Xero Accounting API
33
* No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
44
*
5-
* The version of the OpenAPI document: 2.31.0
5+
* The version of the OpenAPI document: 2.33.0
66
* Contact: api@xero.com
77
*
88
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
@@ -62,7 +62,6 @@
6262
import com.xero.models.accounting.Overpayments;
6363
import com.xero.models.accounting.Payment;
6464
import com.xero.models.accounting.PaymentDelete;
65-
import com.xero.models.accounting.PaymentService;
6665
import com.xero.models.accounting.PaymentServices;
6766
import com.xero.models.accounting.Payments;
6867
import com.xero.models.accounting.Prepayments;
@@ -101,7 +100,7 @@ public class AccountingApi {
101100
private ApiClient apiClient;
102101
private static AccountingApi instance = null;
103102
private String userAgent = "Default";
104-
private String version = "4.23.0";
103+
private String version = "4.24.0";
105104
static final Logger logger = LoggerFactory.getLogger(AccountingApi.class);
106105

107106
/** AccountingApi */
@@ -1788,19 +1787,22 @@ public HttpResponse createBatchPaymentHistoryRecordForHttpResponse(
17881787
*
17891788
* @param xeroTenantId Xero identifier for Tenant
17901789
* @param brandingThemeID Unique identifier for a Branding Theme
1791-
* @param paymentService PaymentService object in body of request
1790+
* @param paymentServices PaymentServices array with PaymentService object in body of request
17921791
* @param accessToken Authorization token for user set in header of each request
17931792
* @return PaymentServices
17941793
* @throws IOException if an error occurs while attempting to invoke the API *
17951794
*/
17961795
public PaymentServices createBrandingThemePaymentServices(
1797-
String accessToken, String xeroTenantId, UUID brandingThemeID, PaymentService paymentService)
1796+
String accessToken,
1797+
String xeroTenantId,
1798+
UUID brandingThemeID,
1799+
PaymentServices paymentServices)
17981800
throws IOException {
17991801
try {
18001802
TypeReference<PaymentServices> typeRef = new TypeReference<PaymentServices>() {};
18011803
HttpResponse response =
18021804
createBrandingThemePaymentServicesForHttpResponse(
1803-
accessToken, xeroTenantId, brandingThemeID, paymentService);
1805+
accessToken, xeroTenantId, brandingThemeID, paymentServices);
18041806
return apiClient.getObjectMapper().readValue(response.getContent(), typeRef);
18051807
} catch (HttpResponseException e) {
18061808
if (logger.isDebugEnabled()) {
@@ -1839,13 +1841,16 @@ public PaymentServices createBrandingThemePaymentServices(
18391841
*
18401842
* @param xeroTenantId Xero identifier for Tenant
18411843
* @param brandingThemeID Unique identifier for a Branding Theme
1842-
* @param paymentService PaymentService object in body of request
1844+
* @param paymentServices PaymentServices array with PaymentService object in body of request
18431845
* @param accessToken Authorization token for user set in header of each request
18441846
* @return HttpResponse
18451847
* @throws IOException if an error occurs while attempting to invoke the API
18461848
*/
18471849
public HttpResponse createBrandingThemePaymentServicesForHttpResponse(
1848-
String accessToken, String xeroTenantId, UUID brandingThemeID, PaymentService paymentService)
1850+
String accessToken,
1851+
String xeroTenantId,
1852+
UUID brandingThemeID,
1853+
PaymentServices paymentServices)
18491854
throws IOException {
18501855
// verify the required parameter 'xeroTenantId' is set
18511856
if (xeroTenantId == null) {
@@ -1857,10 +1862,10 @@ public HttpResponse createBrandingThemePaymentServicesForHttpResponse(
18571862
throw new IllegalArgumentException(
18581863
"Missing the required parameter 'brandingThemeID' when calling"
18591864
+ " createBrandingThemePaymentServices");
1860-
} // verify the required parameter 'paymentService' is set
1861-
if (paymentService == null) {
1865+
} // verify the required parameter 'paymentServices' is set
1866+
if (paymentServices == null) {
18621867
throw new IllegalArgumentException(
1863-
"Missing the required parameter 'paymentService' when calling"
1868+
"Missing the required parameter 'paymentServices' when calling"
18641869
+ " createBrandingThemePaymentServices");
18651870
}
18661871
if (accessToken == null) {
@@ -1886,7 +1891,7 @@ public HttpResponse createBrandingThemePaymentServicesForHttpResponse(
18861891
}
18871892

18881893
HttpContent content = null;
1889-
content = apiClient.new JacksonJsonHttpContent(paymentService);
1894+
content = apiClient.new JacksonJsonHttpContent(paymentServices);
18901895

18911896
Credential credential =
18921897
new Credential(BearerToken.authorizationHeaderAccessMethod()).setAccessToken(accessToken);

0 commit comments

Comments
 (0)