From 2b47fe92029f0baef26c150caa4d5e8cb15f7d9f Mon Sep 17 00:00:00 2001 From: Vladyslav_Prykhodko Date: Wed, 27 Jan 2021 13:38:12 +0200 Subject: [PATCH] Updated license header --- .../controller/DeviceLwm2mController.java | 2 +- .../service/lwm2m/LwM2MModelsRepository.java | 2 +- .../server/common/data/lwm2m/LwM2mInstance.java | 2 +- .../server/common/data/lwm2m/LwM2mObject.java | 2 +- .../server/common/data/lwm2m/LwM2mResource.java | 2 +- .../common/data/lwm2m/ServerSecurityConfig.java | 2 +- common/transport/lwm2m/pom.xml | 17 +++++++++++++++++ ...2MTransportBootstrapServerConfiguration.java | 2 +- ...wM2MTransportBootstrapServerInitializer.java | 2 +- .../LwM2MTransportContextBootstrap.java | 2 +- .../bootstrap/secure/LwM2MBootstrapConfig.java | 2 +- .../secure/LwM2MBootstrapSecurityStore.java | 2 +- .../bootstrap/secure/LwM2MBootstrapServers.java | 2 +- .../LwM2MInMemoryBootstrapConfigStore.java | 2 +- .../bootstrap/secure/LwM2MServerBootstrap.java | 2 +- .../LwM2mDefaultBootstrapSessionManager.java | 2 +- .../lwm2m/secure/LWM2MGenerationPSkRPkECC.java | 2 +- .../lwm2m/secure/LwM2MSecurityMode.java | 2 +- .../LwM2mCredentialsSecurityInfoValidator.java | 2 +- .../lwm2m/secure/LwM2mRPkCredentials.java | 2 +- .../lwm2m/secure/ReadResultSecurityStore.java | 2 +- .../lwm2m/server/LwM2MSessionMsgListener.java | 2 +- .../server/LwM2MTransportContextServer.java | 2 +- .../lwm2m/server/LwM2MTransportHandler.java | 2 +- .../lwm2m/server/LwM2MTransportRequest.java | 2 +- .../LwM2MTransportServerConfiguration.java | 2 +- .../server/LwM2MTransportServerInitializer.java | 2 +- .../lwm2m/server/LwM2MTransportService.java | 2 +- .../lwm2m/server/LwM2MTransportServiceImpl.java | 2 +- .../lwm2m/server/LwM2mServerListener.java | 2 +- .../lwm2m/server/adaptors/LwM2MJsonAdaptor.java | 2 +- .../server/adaptors/LwM2MTransportAdaptor.java | 2 +- .../client/AttrTelemetryObserveValue.java | 2 +- .../lwm2m/server/client/LwM2MClient.java | 2 +- .../lwm2m/server/client/ModelObject.java | 2 +- .../lwm2m/server/client/ResourceValue.java | 2 +- .../client/ResultsAnalyzerParameters.java | 2 +- .../secure/LwM2mInMemorySecurityStore.java | 2 +- .../lwm2m/utils/LwM2mValueConverterImpl.java | 2 +- .../transport/lwm2m/utils/TypeServer.java | 2 +- .../credentials/shell/lwM2M_credentials.sh | 2 +- .../lwm2m/LwM2MTransportConfigBootstrap.java | 2 +- .../lwm2m/LwM2MTransportConfigServer.java | 2 +- docker/tb-transports/lwm2m/conf/logback.xml | 2 +- .../lwm2m/conf/tb-lwm2m-transport.conf | 2 +- msa/transport/lwm2m/docker/Dockerfile | 2 +- .../lwm2m/docker/start-tb-lwm2m-transport.sh | 2 +- msa/transport/lwm2m/pom.xml | 2 +- transport/lwm2m/pom.xml | 2 +- transport/lwm2m/src/main/conf/logback.xml | 2 +- .../lwm2m/src/main/conf/tb-lwm2m-transport.conf | 2 +- .../data/credentials/shell/lwM2M_credentials.sh | 2 +- transport/lwm2m/src/main/data/models/10241.xml | 2 +- transport/lwm2m/src/main/data/models/10242.xml | 2 +- transport/lwm2m/src/main/data/models/10243.xml | 2 +- transport/lwm2m/src/main/data/models/10244.xml | 2 +- transport/lwm2m/src/main/data/models/10245.xml | 2 +- transport/lwm2m/src/main/data/models/10246.xml | 2 +- transport/lwm2m/src/main/data/models/10247.xml | 2 +- transport/lwm2m/src/main/data/models/10248.xml | 2 +- transport/lwm2m/src/main/data/models/10249.xml | 2 +- transport/lwm2m/src/main/data/models/10250.xml | 2 +- transport/lwm2m/src/main/data/models/10251.xml | 2 +- transport/lwm2m/src/main/data/models/10252.xml | 2 +- transport/lwm2m/src/main/data/models/10253.xml | 2 +- transport/lwm2m/src/main/data/models/10254.xml | 2 +- transport/lwm2m/src/main/data/models/10255.xml | 2 +- transport/lwm2m/src/main/data/models/10256.xml | 2 +- transport/lwm2m/src/main/data/models/10257.xml | 2 +- transport/lwm2m/src/main/data/models/10258.xml | 2 +- transport/lwm2m/src/main/data/models/10259.xml | 2 +- .../lwm2m/src/main/data/models/10260-2_0.xml | 2 +- transport/lwm2m/src/main/data/models/10262.xml | 2 +- transport/lwm2m/src/main/data/models/10263.xml | 2 +- transport/lwm2m/src/main/data/models/10264.xml | 2 +- transport/lwm2m/src/main/data/models/10265.xml | 2 +- transport/lwm2m/src/main/data/models/10266.xml | 2 +- transport/lwm2m/src/main/data/models/10267.xml | 2 +- transport/lwm2m/src/main/data/models/10268.xml | 2 +- transport/lwm2m/src/main/data/models/10269.xml | 2 +- transport/lwm2m/src/main/data/models/10270.xml | 2 +- transport/lwm2m/src/main/data/models/10271.xml | 2 +- transport/lwm2m/src/main/data/models/10272.xml | 2 +- transport/lwm2m/src/main/data/models/10273.xml | 2 +- transport/lwm2m/src/main/data/models/10274.xml | 2 +- transport/lwm2m/src/main/data/models/10275.xml | 2 +- transport/lwm2m/src/main/data/models/10276.xml | 2 +- transport/lwm2m/src/main/data/models/10277.xml | 2 +- transport/lwm2m/src/main/data/models/10278.xml | 2 +- transport/lwm2m/src/main/data/models/10279.xml | 2 +- transport/lwm2m/src/main/data/models/10280.xml | 2 +- transport/lwm2m/src/main/data/models/10281.xml | 2 +- transport/lwm2m/src/main/data/models/10282.xml | 2 +- transport/lwm2m/src/main/data/models/10283.xml | 2 +- transport/lwm2m/src/main/data/models/10284.xml | 2 +- transport/lwm2m/src/main/data/models/10286.xml | 2 +- transport/lwm2m/src/main/data/models/10290.xml | 2 +- transport/lwm2m/src/main/data/models/10291.xml | 2 +- transport/lwm2m/src/main/data/models/10292.xml | 2 +- transport/lwm2m/src/main/data/models/10299.xml | 2 +- transport/lwm2m/src/main/data/models/10300.xml | 2 +- .../lwm2m/src/main/data/models/10308-2_0.xml | 2 +- transport/lwm2m/src/main/data/models/10309.xml | 2 +- transport/lwm2m/src/main/data/models/10311.xml | 2 +- transport/lwm2m/src/main/data/models/10313.xml | 2 +- transport/lwm2m/src/main/data/models/10314.xml | 2 +- transport/lwm2m/src/main/data/models/10315.xml | 2 +- transport/lwm2m/src/main/data/models/10316.xml | 2 +- transport/lwm2m/src/main/data/models/10318.xml | 2 +- transport/lwm2m/src/main/data/models/10319.xml | 2 +- transport/lwm2m/src/main/data/models/10320.xml | 2 +- transport/lwm2m/src/main/data/models/10322.xml | 2 +- transport/lwm2m/src/main/data/models/10323.xml | 2 +- transport/lwm2m/src/main/data/models/10324.xml | 2 +- transport/lwm2m/src/main/data/models/10326.xml | 2 +- transport/lwm2m/src/main/data/models/10327.xml | 2 +- transport/lwm2m/src/main/data/models/10328.xml | 2 +- transport/lwm2m/src/main/data/models/10329.xml | 2 +- transport/lwm2m/src/main/data/models/10330.xml | 2 +- transport/lwm2m/src/main/data/models/10331.xml | 2 +- transport/lwm2m/src/main/data/models/10332.xml | 2 +- transport/lwm2m/src/main/data/models/10333.xml | 2 +- transport/lwm2m/src/main/data/models/10334.xml | 2 +- transport/lwm2m/src/main/data/models/10335.xml | 2 +- transport/lwm2m/src/main/data/models/10336.xml | 2 +- transport/lwm2m/src/main/data/models/10337.xml | 2 +- transport/lwm2m/src/main/data/models/10338.xml | 2 +- transport/lwm2m/src/main/data/models/10339.xml | 2 +- transport/lwm2m/src/main/data/models/10340.xml | 2 +- transport/lwm2m/src/main/data/models/10341.xml | 2 +- transport/lwm2m/src/main/data/models/10342.xml | 2 +- transport/lwm2m/src/main/data/models/10343.xml | 2 +- transport/lwm2m/src/main/data/models/10344.xml | 2 +- transport/lwm2m/src/main/data/models/10345.xml | 2 +- transport/lwm2m/src/main/data/models/10346.xml | 2 +- transport/lwm2m/src/main/data/models/10347.xml | 2 +- transport/lwm2m/src/main/data/models/10348.xml | 2 +- transport/lwm2m/src/main/data/models/10349.xml | 2 +- transport/lwm2m/src/main/data/models/10350.xml | 2 +- transport/lwm2m/src/main/data/models/10351.xml | 2 +- transport/lwm2m/src/main/data/models/10352.xml | 2 +- transport/lwm2m/src/main/data/models/10353.xml | 2 +- transport/lwm2m/src/main/data/models/10354.xml | 2 +- transport/lwm2m/src/main/data/models/10355.xml | 2 +- transport/lwm2m/src/main/data/models/10356.xml | 2 +- transport/lwm2m/src/main/data/models/10357.xml | 2 +- transport/lwm2m/src/main/data/models/10358.xml | 2 +- transport/lwm2m/src/main/data/models/10359.xml | 2 +- transport/lwm2m/src/main/data/models/10360.xml | 2 +- transport/lwm2m/src/main/data/models/10361.xml | 2 +- transport/lwm2m/src/main/data/models/10362.xml | 2 +- transport/lwm2m/src/main/data/models/10363.xml | 2 +- transport/lwm2m/src/main/data/models/10364.xml | 2 +- transport/lwm2m/src/main/data/models/10365.xml | 2 +- transport/lwm2m/src/main/data/models/10366.xml | 2 +- transport/lwm2m/src/main/data/models/10368.xml | 2 +- transport/lwm2m/src/main/data/models/10369.xml | 2 +- transport/lwm2m/src/main/data/models/2048.xml | 2 +- transport/lwm2m/src/main/data/models/2049.xml | 2 +- transport/lwm2m/src/main/data/models/2050.xml | 2 +- transport/lwm2m/src/main/data/models/2051.xml | 2 +- transport/lwm2m/src/main/data/models/2052.xml | 2 +- transport/lwm2m/src/main/data/models/2053.xml | 2 +- transport/lwm2m/src/main/data/models/2054.xml | 2 +- transport/lwm2m/src/main/data/models/2055.xml | 2 +- transport/lwm2m/src/main/data/models/2056.xml | 2 +- transport/lwm2m/src/main/data/models/2057.xml | 2 +- transport/lwm2m/src/main/data/models/31024.xml | 2 +- transport/lwm2m/src/main/data/models/3200.xml | 2 +- transport/lwm2m/src/main/data/models/3201.xml | 2 +- transport/lwm2m/src/main/data/models/3202.xml | 2 +- transport/lwm2m/src/main/data/models/3203.xml | 2 +- transport/lwm2m/src/main/data/models/3300.xml | 2 +- transport/lwm2m/src/main/data/models/3301.xml | 2 +- transport/lwm2m/src/main/data/models/3302.xml | 2 +- transport/lwm2m/src/main/data/models/3303.xml | 2 +- transport/lwm2m/src/main/data/models/3304.xml | 2 +- transport/lwm2m/src/main/data/models/3305.xml | 2 +- transport/lwm2m/src/main/data/models/3306.xml | 2 +- transport/lwm2m/src/main/data/models/3308.xml | 2 +- transport/lwm2m/src/main/data/models/3310.xml | 2 +- transport/lwm2m/src/main/data/models/3311.xml | 2 +- transport/lwm2m/src/main/data/models/3312.xml | 2 +- transport/lwm2m/src/main/data/models/3313.xml | 2 +- transport/lwm2m/src/main/data/models/3314.xml | 2 +- transport/lwm2m/src/main/data/models/3315.xml | 2 +- transport/lwm2m/src/main/data/models/3316.xml | 2 +- transport/lwm2m/src/main/data/models/3317.xml | 2 +- transport/lwm2m/src/main/data/models/3318.xml | 2 +- transport/lwm2m/src/main/data/models/3319.xml | 2 +- transport/lwm2m/src/main/data/models/3320.xml | 2 +- transport/lwm2m/src/main/data/models/3321.xml | 2 +- transport/lwm2m/src/main/data/models/3322.xml | 2 +- transport/lwm2m/src/main/data/models/3323.xml | 2 +- transport/lwm2m/src/main/data/models/3324.xml | 2 +- transport/lwm2m/src/main/data/models/3325.xml | 2 +- transport/lwm2m/src/main/data/models/3326.xml | 2 +- transport/lwm2m/src/main/data/models/3327.xml | 2 +- transport/lwm2m/src/main/data/models/3328.xml | 2 +- transport/lwm2m/src/main/data/models/3329.xml | 2 +- transport/lwm2m/src/main/data/models/3330.xml | 2 +- transport/lwm2m/src/main/data/models/3331.xml | 2 +- transport/lwm2m/src/main/data/models/3332.xml | 2 +- transport/lwm2m/src/main/data/models/3333.xml | 2 +- transport/lwm2m/src/main/data/models/3334.xml | 2 +- transport/lwm2m/src/main/data/models/3335.xml | 2 +- transport/lwm2m/src/main/data/models/3336.xml | 2 +- transport/lwm2m/src/main/data/models/3337.xml | 2 +- transport/lwm2m/src/main/data/models/3338.xml | 2 +- transport/lwm2m/src/main/data/models/3339.xml | 2 +- transport/lwm2m/src/main/data/models/3340.xml | 2 +- transport/lwm2m/src/main/data/models/3341.xml | 2 +- transport/lwm2m/src/main/data/models/3342.xml | 2 +- transport/lwm2m/src/main/data/models/3343.xml | 2 +- transport/lwm2m/src/main/data/models/3344.xml | 2 +- transport/lwm2m/src/main/data/models/3345.xml | 2 +- transport/lwm2m/src/main/data/models/3346.xml | 2 +- transport/lwm2m/src/main/data/models/3347.xml | 2 +- transport/lwm2m/src/main/data/models/3348.xml | 2 +- transport/lwm2m/src/main/data/models/3349.xml | 2 +- transport/lwm2m/src/main/data/models/3350.xml | 2 +- transport/lwm2m/src/main/data/models/3351.xml | 2 +- transport/lwm2m/src/main/data/models/3352.xml | 2 +- transport/lwm2m/src/main/data/models/3353.xml | 2 +- transport/lwm2m/src/main/data/models/3354.xml | 2 +- transport/lwm2m/src/main/data/models/3355.xml | 2 +- transport/lwm2m/src/main/data/models/3356.xml | 2 +- transport/lwm2m/src/main/data/models/3357.xml | 2 +- transport/lwm2m/src/main/data/models/3358.xml | 2 +- transport/lwm2m/src/main/data/models/3359.xml | 2 +- transport/lwm2m/src/main/data/models/3360.xml | 2 +- transport/lwm2m/src/main/data/models/3361.xml | 2 +- transport/lwm2m/src/main/data/models/3362.xml | 2 +- transport/lwm2m/src/main/data/models/3363.xml | 2 +- transport/lwm2m/src/main/data/models/3364.xml | 2 +- transport/lwm2m/src/main/data/models/3365.xml | 2 +- transport/lwm2m/src/main/data/models/3366.xml | 2 +- transport/lwm2m/src/main/data/models/3367.xml | 2 +- transport/lwm2m/src/main/data/models/3368.xml | 2 +- transport/lwm2m/src/main/data/models/3369.xml | 2 +- transport/lwm2m/src/main/data/models/3370.xml | 2 +- transport/lwm2m/src/main/data/models/3371.xml | 2 +- transport/lwm2m/src/main/data/models/3372.xml | 2 +- transport/lwm2m/src/main/data/models/3373.xml | 2 +- transport/lwm2m/src/main/data/models/3374.xml | 2 +- transport/lwm2m/src/main/data/models/3375.xml | 2 +- transport/lwm2m/src/main/data/models/3376.xml | 2 +- transport/lwm2m/src/main/data/models/3377.xml | 2 +- transport/lwm2m/src/main/data/models/3378.xml | 2 +- transport/lwm2m/src/main/data/models/3379.xml | 2 +- .../lwm2m/src/main/data/models/3380-2_0.xml | 2 +- transport/lwm2m/src/main/data/models/3381.xml | 2 +- transport/lwm2m/src/main/data/models/3382.xml | 2 +- transport/lwm2m/src/main/data/models/3383.xml | 2 +- transport/lwm2m/src/main/data/models/3384.xml | 2 +- transport/lwm2m/src/main/data/models/3385.xml | 2 +- transport/lwm2m/src/main/data/models/3386.xml | 2 +- .../LWM2M_APN_Connection_Profile-v1_0_1.xml | 2 +- .../models/LWM2M_Bearer_Selection-v1_0_1.xml | 2 +- .../LWM2M_Cellular_Connectivity-v1_0_1.xml | 2 +- .../main/data/models/LWM2M_DevCapMgmt-v1_0.xml | 2 +- .../main/data/models/LWM2M_LOCKWIPE-v1_0_1.xml | 2 +- .../main/data/models/LWM2M_Portfolio-v1_0.xml | 2 +- .../models/LWM2M_Software_Component-v1_0.xml | 2 +- .../models/LWM2M_Software_Management-v1_0.xml | 2 +- .../models/LWM2M_WLAN_connectivity4-v1_0.xml | 2 +- .../main/data/models/LwM2M_EventLog-V1_0.xml | 2 +- .../ThingsboardLwm2mTransportApplication.java | 2 +- .../src/main/resources/tb-lwm2m-transport.yml | 2 +- .../lwm2m-device-config-server.component.html | 2 +- .../lwm2m-device-config-server.component.ts | 2 +- ...ofile-transport-configuration.component.html | 2 +- ...profile-transport-configuration.component.ts | 2 +- ...m2m-object-add-instances-list.component.html | 2 +- ...lwm2m-object-add-instances-list.component.ts | 2 +- .../lwm2m-object-add-instances.component.html | 2 +- .../lwm2m-object-add-instances.component.ts | 2 +- .../lwm2m/lwm2m-object-list.component.html | 3 +-- .../device/lwm2m/lwm2m-object-list.component.ts | 2 +- ...serve-attr-telemetry-resource.component.html | 2 +- ...observe-attr-telemetry-resource.component.ts | 2 +- .../lwm2m-observe-attr-telemetry.component.css | 3 +-- .../lwm2m-observe-attr-telemetry.component.html | 3 +-- .../lwm2m-observe-attr-telemetry.component.ts | 2 +- .../lwm2m/lwm2m-profile-components.module.ts | 2 +- .../device/lwm2m/profile-config.models.ts | 2 +- .../lwm2m/security-config-server.component.html | 2 +- .../lwm2m/security-config-server.component.ts | 2 +- .../device/lwm2m/security-config.component.html | 2 +- .../device/lwm2m/security-config.component.ts | 2 +- .../device/lwm2m/security-config.models.ts | 2 +- 291 files changed, 307 insertions(+), 293 deletions(-) diff --git a/application/src/main/java/org/thingsboard/server/controller/DeviceLwm2mController.java b/application/src/main/java/org/thingsboard/server/controller/DeviceLwm2mController.java index 4ddeff5af6..5f2e946f10 100644 --- a/application/src/main/java/org/thingsboard/server/controller/DeviceLwm2mController.java +++ b/application/src/main/java/org/thingsboard/server/controller/DeviceLwm2mController.java @@ -1,5 +1,5 @@ /** - * Copyright © 2016-2020 The Thingsboard Authors + * Copyright © 2016-2021 The Thingsboard Authors * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/application/src/main/java/org/thingsboard/server/service/lwm2m/LwM2MModelsRepository.java b/application/src/main/java/org/thingsboard/server/service/lwm2m/LwM2MModelsRepository.java index e909dd8741..81dd7d7e66 100644 --- a/application/src/main/java/org/thingsboard/server/service/lwm2m/LwM2MModelsRepository.java +++ b/application/src/main/java/org/thingsboard/server/service/lwm2m/LwM2MModelsRepository.java @@ -1,5 +1,5 @@ /** - * Copyright © 2016-2020 The Thingsboard Authors + * Copyright © 2016-2021 The Thingsboard Authors * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/common/data/src/main/java/org/thingsboard/server/common/data/lwm2m/LwM2mInstance.java b/common/data/src/main/java/org/thingsboard/server/common/data/lwm2m/LwM2mInstance.java index 4545e4dc0a..aeff342582 100644 --- a/common/data/src/main/java/org/thingsboard/server/common/data/lwm2m/LwM2mInstance.java +++ b/common/data/src/main/java/org/thingsboard/server/common/data/lwm2m/LwM2mInstance.java @@ -1,5 +1,5 @@ /** - * Copyright © 2016-2020 The Thingsboard Authors + * Copyright © 2016-2021 The Thingsboard Authors * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/common/data/src/main/java/org/thingsboard/server/common/data/lwm2m/LwM2mObject.java b/common/data/src/main/java/org/thingsboard/server/common/data/lwm2m/LwM2mObject.java index 4bd700fdf9..6401e8a31a 100644 --- a/common/data/src/main/java/org/thingsboard/server/common/data/lwm2m/LwM2mObject.java +++ b/common/data/src/main/java/org/thingsboard/server/common/data/lwm2m/LwM2mObject.java @@ -1,5 +1,5 @@ /** - * Copyright © 2016-2020 The Thingsboard Authors + * Copyright © 2016-2021 The Thingsboard Authors * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/common/data/src/main/java/org/thingsboard/server/common/data/lwm2m/LwM2mResource.java b/common/data/src/main/java/org/thingsboard/server/common/data/lwm2m/LwM2mResource.java index 7228f02760..9317232b9d 100644 --- a/common/data/src/main/java/org/thingsboard/server/common/data/lwm2m/LwM2mResource.java +++ b/common/data/src/main/java/org/thingsboard/server/common/data/lwm2m/LwM2mResource.java @@ -1,5 +1,5 @@ /** - * Copyright © 2016-2020 The Thingsboard Authors + * Copyright © 2016-2021 The Thingsboard Authors * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/common/data/src/main/java/org/thingsboard/server/common/data/lwm2m/ServerSecurityConfig.java b/common/data/src/main/java/org/thingsboard/server/common/data/lwm2m/ServerSecurityConfig.java index 3f7f1d543c..8fde14b6ca 100644 --- a/common/data/src/main/java/org/thingsboard/server/common/data/lwm2m/ServerSecurityConfig.java +++ b/common/data/src/main/java/org/thingsboard/server/common/data/lwm2m/ServerSecurityConfig.java @@ -1,5 +1,5 @@ /** - * Copyright © 2016-2020 The Thingsboard Authors + * Copyright © 2016-2021 The Thingsboard Authors * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/common/transport/lwm2m/pom.xml b/common/transport/lwm2m/pom.xml index 44a764be2b..00d559c9d1 100644 --- a/common/transport/lwm2m/pom.xml +++ b/common/transport/lwm2m/pom.xml @@ -1,3 +1,20 @@ + - -