Merge "Improve Test coverage of pmproducer Issue-ID: NONRTRIC-877"
authorJohn Keeney <john.keeney@est.tech>
Tue, 26 Sep 2023 13:45:15 +0000 (13:45 +0000)
committerGerrit Code Review <gerrit@o-ran-sc.org>
Tue, 26 Sep 2023 13:45:15 +0000 (13:45 +0000)
52 files changed:
datafilecollector/pom.xml
datafilecollector/src/main/java/org/oran/datafile/configuration/AppConfig.java
datafilecollector/src/main/java/org/oran/datafile/configuration/CertificateConfig.java
datafilecollector/src/main/java/org/oran/datafile/configuration/SftpConfig.java
datafilecollector/src/main/java/org/oran/datafile/datastore/FileStore.java
datafilecollector/src/main/java/org/oran/datafile/datastore/S3ObjectStore.java
datafilecollector/src/main/java/org/oran/datafile/http/DfcHttpClient.java
datafilecollector/src/main/java/org/oran/datafile/http/DfcHttpsClient.java
datafilecollector/src/main/java/org/oran/datafile/http/HttpAsyncClientBuilderWrapper.java [deleted file]
datafilecollector/src/main/java/org/oran/datafile/http/HttpUtils.java
datafilecollector/src/main/java/org/oran/datafile/model/FileData.java
datafilecollector/src/main/java/org/oran/datafile/model/FileReadyMessage.java
datafilecollector/src/main/java/org/oran/datafile/model/FileServerData.java
datafilecollector/src/main/java/org/oran/datafile/oauth2/OAuthBearerTokenJwt.java
datafilecollector/src/main/java/org/oran/datafile/oauth2/OAuthKafkaAuthenticateLoginCallbackHandler.java
datafilecollector/src/main/java/org/oran/datafile/oauth2/SecurityContext.java
datafilecollector/src/main/java/org/oran/datafile/tasks/CollectAndReportFiles.java
datafilecollector/src/main/java/org/oran/datafile/tasks/FileCollector.java
datafilecollector/src/test/java/org/oran/datafile/Integration.java
datafilecollector/src/test/java/org/oran/datafile/configuration/AppConfigTest.java [new file with mode: 0644]
datafilecollector/src/test/java/org/oran/datafile/configuration/CertificateConfigTest.java [new file with mode: 0644]
datafilecollector/src/test/java/org/oran/datafile/controllers/StatusControllerTest.java
datafilecollector/src/test/java/org/oran/datafile/datastore/DataStoreTest.java [new file with mode: 0644]
datafilecollector/src/test/java/org/oran/datafile/datastore/FileStoreTest.java [new file with mode: 0644]
datafilecollector/src/test/java/org/oran/datafile/datastore/S3ObjectStoreTest.java [new file with mode: 0644]
datafilecollector/src/test/java/org/oran/datafile/ftp/FtpesClientTest.java
datafilecollector/src/test/java/org/oran/datafile/ftp/SftpClientSettingsTest.java
datafilecollector/src/test/java/org/oran/datafile/ftp/SftpClientTest.java
datafilecollector/src/test/java/org/oran/datafile/http/HttpsClientConnectionManagerUtilTest.java
datafilecollector/src/test/java/org/oran/datafile/model/CountersTest.java [new file with mode: 0644]
datafilecollector/src/test/java/org/oran/datafile/model/FileDataTest.java [new file with mode: 0644]
datafilecollector/src/test/java/org/oran/datafile/model/FilePublishInformationTest.java [new file with mode: 0644]
datafilecollector/src/test/java/org/oran/datafile/model/FileReadyMessageTest.java [new file with mode: 0644]
datafilecollector/src/test/java/org/oran/datafile/model/FileServerDataTest.java [new file with mode: 0644]
datafilecollector/src/test/java/org/oran/datafile/model/SchemeTest.java
datafilecollector/src/test/java/org/oran/datafile/oauth2/OAuthBearerTokenJwtTest.java [new file with mode: 0644]
datafilecollector/src/test/java/org/oran/datafile/oauth2/OAuthKafkaAuthenticateLoginCallbackHandlerTest.java [new file with mode: 0644]
datafilecollector/src/test/java/org/oran/datafile/oauth2/SecurityContextTest.java [new file with mode: 0644]
datafilecollector/src/test/java/org/oran/datafile/tasks/CollectAndReportFilesTest.java [new file with mode: 0644]
datafilecollector/src/test/java/org/oran/datafile/tasks/FileCollectorTest.java
datafilecollector/src/test/java/org/oran/datafile/tasks/KafkaTopicListenerTest.java [new file with mode: 0644]
datafilecollector/src/test/resources/org/oran/datafile/datastore/file.txt [new file with mode: 0644]
pm-file-converter/common/utils/utils.go
pm-file-converter/common/utils/utils_test.go [new file with mode: 0644]
pm-file-converter/components/kafkacollector/kafkacollector.go
pm-file-converter/components/miniocollector/minio_upload_test.json [new file with mode: 0644]
pm-file-converter/components/miniocollector/miniocollector.go
pm-file-converter/components/miniocollector/miniocollector_test.go [new file with mode: 0644]
pm-file-converter/components/xmltransform/xmltransform.go
pm-file-converter/go.mod
pm-file-converter/go.sum
sonar-project.properties [new file with mode: 0644]

index b3e7472..37b39d7 100644 (file)
@@ -40,7 +40,9 @@
         <springdoc.version>2.0.2</springdoc.version>
         <springdoc.openapi-ui.version>1.6.14</springdoc.openapi-ui.version>
         <exec.skip>true</exec.skip>
+
         <sonar-maven-plugin.version>3.7.0.1746</sonar-maven-plugin.version>
+
     </properties>
     <dependencies>
         <dependency>
             <artifactId>mockito-junit-jupiter</artifactId>
             <scope>test</scope>
         </dependency>
+        <dependency>
+            <groupId>org.mockito</groupId>
+            <artifactId>mockito-inline</artifactId>
+            <scope>test</scope>
+        </dependency>
         <dependency>
             <groupId>commons-net</groupId>
             <artifactId>commons-net</artifactId>
index 6689f5d..6282cd4 100644 (file)
@@ -21,6 +21,7 @@ import java.util.Map;
 
 import lombok.Getter;
 
+import lombok.Setter;
 import org.apache.kafka.clients.CommonClientConfigs;
 import org.apache.kafka.common.config.SaslConfigs;
 import org.apache.kafka.common.config.SslConfigs;
@@ -55,6 +56,7 @@ public class AppConfig {
 
     @Value("${app.collected-files-path}")
     @Getter
+    @Setter
     private String collectedFilesPath;
 
     @Value("${app.sftp.strict-host-key-checking:false}")
@@ -77,22 +79,27 @@ public class AppConfig {
     private String clientTrustStorePassword;
 
     @Getter
+    @Setter
     @Value("${app.s3.endpointOverride:}")
     private String s3EndpointOverride;
 
     @Getter
+    @Setter
     @Value("${app.s3.accessKeyId:}")
     private String s3AccessKeyId;
 
     @Getter
+    @Setter
     @Value("${app.s3.secretAccessKey:}")
     private String s3SecretAccessKey;
 
     @Getter
+    @Setter
     @Value("${app.s3.bucket:}")
     private String s3Bucket;
 
     @Value("${app.s3.locksBucket:}")
+    @Setter
     private String s3LocksBucket;
 
     @Value("${app.number-of-worker-treads:200}")
index 889eb98..3de2b3b 100644 (file)
@@ -26,11 +26,15 @@ import lombok.Builder;
 @Builder
 public class CertificateConfig {
 
+    @SuppressWarnings("java:S1104")
     public String keyCert;
 
+    @SuppressWarnings("java:S1104")
     public String keyPasswordPath;
 
+    @SuppressWarnings("java:S1104")
     public String trustedCa;
 
+    @SuppressWarnings("java:S1104")
     public String trustedCaPasswordPath;
 }
index 559e64e..0eee07d 100644 (file)
@@ -25,7 +25,9 @@ import lombok.Builder;
 @Builder
 public class SftpConfig {
 
+    @SuppressWarnings("java:S1104")
     public boolean strictHostKeyChecking;
 
+    @SuppressWarnings("java:S1104")
     public String knownHostsFilePath;
 }
index 6d98afc..a6711c6 100644 (file)
@@ -138,7 +138,7 @@ public class FileStore implements DataStore {
         return Mono.just("OK");
     }
 
-    private Path path(String name) {
+    public Path path(String name) {
         return Path.of(appConfig.getCollectedFilesPath(), name);
     }
 
index 5d1400d..5da27b0 100644 (file)
@@ -73,6 +73,12 @@ public class S3ObjectStore implements DataStore {
         getS3AsynchClient(applicationConfig);
     }
 
+    @SuppressWarnings({"java:S3010", "java:S2209"})
+    public S3ObjectStore(AppConfig applicationConfig, S3AsyncClient s3AsynchClient) {
+        this.applicationConfig = applicationConfig;
+        this.s3AsynchClient = s3AsynchClient;
+    }
+
     private static synchronized S3AsyncClient getS3AsynchClient(AppConfig applicationConfig) {
         if (applicationConfig.isS3Enabled() && s3AsynchClient == null) {
             s3AsynchClient = getS3AsyncClientBuilder(applicationConfig).build();
@@ -209,13 +215,9 @@ public class S3ObjectStore implements DataStore {
             oids.add(oid);
         }
 
-        Delete delete = Delete.builder() //
-            .objects(oids) //
-            .build();
-
         DeleteObjectsRequest request = DeleteObjectsRequest.builder() //
             .bucket(bucket(bucket)) //
-            .delete(delete) //
+            .delete(Delete.builder().objects(oids).build()) //NOSONAR
             .build();
 
         CompletableFuture<DeleteObjectsResponse> future = s3AsynchClient.deleteObjects(request);
index f941155..fd56ee9 100644 (file)
@@ -92,12 +92,13 @@ public class DfcHttpClient implements FileCollectClient {
         try {
             latch.await();
         } catch (InterruptedException e) {
+            Thread.currentThread().interrupt();
             throw new DatafileTaskException("Interrupted exception after datafile download - ", e);
         }
 
         if (isDownloadFailed(errorMessage)) {
-            if (errorMessage.get() instanceof NonRetryableDatafileTaskException) {
-                throw (NonRetryableDatafileTaskException) errorMessage.get();
+            if (errorMessage.get() instanceof NonRetryableDatafileTaskException nonRetryableException) {
+                throw nonRetryableException;
             }
             throw (DatafileTaskException) errorMessage.get();
         }
index 5cd0a31..f79082d 100644 (file)
@@ -82,6 +82,7 @@ public class DfcHttpsClient implements FileCollectClient {
     }
 
     @Override
+    @SuppressWarnings("java:S2139")
     public void collectFile(String remoteFile, Path localFile) throws DatafileTaskException {
         logger.trace("Prepare to collectFile {}", localFile);
         HttpGet httpGet = new HttpGet(HttpUtils.prepareHttpsUri(fileServerData, remoteFile));
@@ -97,12 +98,13 @@ public class DfcHttpsClient implements FileCollectClient {
             HttpResponse httpResponse = makeCall(httpGet);
             processResponse(httpResponse, localFile);
         } catch (IOException e) {
-            logger.error("marker", e);
+            logger.error("Error downloading file from server. Details: {}", e.getMessage());
             throw new DatafileTaskException("Error downloading file from server. ", e);
         }
         logger.trace("HTTPS collectFile OK");
     }
 
+    @SuppressWarnings("java:S2139")
     HttpResponse makeCall(HttpGet httpGet) throws IOException, DatafileTaskException {
         try {
             HttpResponse httpResponse = executeHttpClient(httpGet);
diff --git a/datafilecollector/src/main/java/org/oran/datafile/http/HttpAsyncClientBuilderWrapper.java b/datafilecollector/src/main/java/org/oran/datafile/http/HttpAsyncClientBuilderWrapper.java
deleted file mode 100644 (file)
index 92877a5..0000000
+++ /dev/null
@@ -1,59 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- *  Copyright (C) 2019-2023 Nordix Foundation.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * SPDX-License-Identifier: Apache-2.0
- * ============LICENSE_END=========================================================
- */
-
-package org.oran.datafile.http;
-
-import javax.net.ssl.HostnameVerifier;
-import javax.net.ssl.SSLContext;
-
-import org.apache.http.client.RedirectStrategy;
-import org.apache.http.client.config.RequestConfig;
-import org.apache.http.impl.nio.client.CloseableHttpAsyncClient;
-import org.apache.http.impl.nio.client.HttpAsyncClientBuilder;
-import org.apache.http.impl.nio.client.HttpAsyncClients;
-
-public class HttpAsyncClientBuilderWrapper {
-    HttpAsyncClientBuilder builder = HttpAsyncClients.custom();
-
-    public HttpAsyncClientBuilderWrapper setRedirectStrategy(RedirectStrategy redirectStrategy) {
-        builder.setRedirectStrategy(redirectStrategy);
-        return this;
-    }
-
-    public HttpAsyncClientBuilderWrapper setSslContext(SSLContext sslcontext) {
-        builder.setSSLContext(sslcontext);
-        return this;
-    }
-
-    public HttpAsyncClientBuilderWrapper setSslHostnameVerifier(HostnameVerifier hostnameVerifier) {
-        builder.setSSLHostnameVerifier(hostnameVerifier);
-        return this;
-    }
-
-    public HttpAsyncClientBuilderWrapper setDefaultRequestConfig(RequestConfig config) {
-        builder.setDefaultRequestConfig(config);
-        return this;
-    }
-
-    public CloseableHttpAsyncClient build() {
-        return builder.build();
-    }
-
-}
index 308b47e..3d085d4 100644 (file)
@@ -21,16 +21,12 @@ package org.oran.datafile.http;
 
 import java.util.Base64;
 import java.util.List;
-
 import org.apache.hc.core5.http.NameValuePair;
 import org.apache.http.HttpStatus;
 import org.oran.datafile.model.FileServerData;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
 
 public final class HttpUtils implements HttpStatus {
 
-    private static final Logger logger = LoggerFactory.getLogger(HttpUtils.class);
     public static final int HTTP_DEFAULT_PORT = 80;
     public static final int HTTPS_DEFAULT_PORT = 443;
 
index 4b013be..33a9327 100644 (file)
@@ -86,8 +86,10 @@ public class FileData {
 
     private static final Logger logger = LoggerFactory.getLogger(FileData.class);
 
+    @SuppressWarnings("java:S1104")
     public FileReadyMessage.ArrayOfNamedHashMap fileInfo;
 
+    @SuppressWarnings("java:S1104")
     public FileReadyMessage.MessageMetaData messageMetaData;
 
     public static Iterable<FileData> createFileData(FileReadyMessage msg) {
index 05e332c..05b55ea 100644 (file)
@@ -33,24 +33,43 @@ public class FileReadyMessage {
     @Builder
     public static class MessageMetaData {
 
+        @SuppressWarnings("java:S1104")
         public String eventId;
 
+        @SuppressWarnings("java:S1104")
         public String priority;
+
+        @SuppressWarnings("java:S1104")
         public String version;
+
+        @SuppressWarnings("java:S1104")
         public String reportingEntityName;
+
+        @SuppressWarnings("java:S1104")
         public int sequence;
+
+        @SuppressWarnings("java:S1104")
         public String domain;
 
+        @SuppressWarnings("java:S1104")
         public String eventName;
+
+        @SuppressWarnings("java:S1104")
         public String vesEventListenerVersion;
 
+        @SuppressWarnings("java:S1104")
         public String sourceName;
 
+        @SuppressWarnings("java:S1104")
         public long lastEpochMicrosec;
+
+        @SuppressWarnings("java:S1104")
         public long startEpochMicrosec;
 
+        @SuppressWarnings("java:S1104")
         public String timeZoneOffset;
 
+        @SuppressWarnings("java:S1104")
         public String changeIdentifier;
 
         /**
@@ -59,6 +78,7 @@ public class FileReadyMessage {
          * example: Noti_RnNode-Ericsson_FileReady
          *
          */
+        @SuppressWarnings("java:S6035")
         public String productName() {
             String[] eventArray = eventName.split("_|-");
             if (eventArray.length >= 2) {
@@ -68,6 +88,7 @@ public class FileReadyMessage {
             }
         }
 
+        @SuppressWarnings("java:S6035")
         public String vendorName() {
             String[] eventArray = eventName.split("_|-");
             if (eventArray.length >= 3) {
@@ -80,32 +101,53 @@ public class FileReadyMessage {
 
     @Builder
     public static class FileInfo {
+        @SuppressWarnings("java:S1104")
         public String fileFormatType;
+
+        @SuppressWarnings("java:S1104")
         public String location;
+
+        @SuppressWarnings("java:S1104")
         public String fileFormatVersion;
+
+        @SuppressWarnings("java:S1104")
         public String compression;
     }
 
     @Builder
     public static class ArrayOfNamedHashMap {
+        @SuppressWarnings("java:S1104")
         public String name;
+
+        @SuppressWarnings("java:S1104")
         public FileInfo hashMap;
     }
 
     @Builder
     public static class NotificationFields {
+        @SuppressWarnings("java:S1104")
         public String notificationFieldsVersion;
+
+        @SuppressWarnings("java:S1104")
         public String changeType;
+
+        @SuppressWarnings("java:S1104")
         public String changeIdentifier;
+
+        @SuppressWarnings("java:S1104")
         public List<ArrayOfNamedHashMap> arrayOfNamedHashMap;
     }
 
     @Builder
     public static class Event {
+        @SuppressWarnings("java:S1104")
         public MessageMetaData commonEventHeader;
+
+        @SuppressWarnings("java:S1104")
         public NotificationFields notificationFields;
     }
 
+    @SuppressWarnings("java:S1104")
     public Event event;
 
 }
index 0bb41a2..187d2b2 100644 (file)
@@ -21,6 +21,7 @@ import java.util.ArrayList;
 import java.util.List;
 
 import lombok.Builder;
+import lombok.Getter;
 import lombok.ToString;
 
 import org.apache.hc.core5.http.NameValuePair;
@@ -34,10 +35,16 @@ import org.apache.hc.core5.http.NameValuePair;
 @ToString
 public class FileServerData {
 
+    @SuppressWarnings("java:S1104")
+    @Getter
     public String serverAddress;
+
+    @SuppressWarnings("java:S1104")
+    @Getter
     public String userId;
 
     @ToString.Exclude
+    @Getter
     public String password;
 
     @Builder.Default
@@ -47,5 +54,7 @@ public class FileServerData {
     @Builder.Default
     public String uriRawFragment = "";
 
+    @SuppressWarnings("java:S1104")
+    @Getter
     public Integer port;
 }
index 24e7608..c93a36b 100644 (file)
@@ -1,35 +1,33 @@
-// ============LICENSE_START===============================================
-// Copyright (C) 2023 Nordix Foundation. All rights reserved.
-// ========================================================================
-// Licensed under the Apache License, Version 2.0 (the "License");
-// you may not use this file except in compliance with the License.
-// You may obtain a copy of the License at
-//
-// http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing, software
-// distributed under the License is distributed on an "AS IS" BASIS,
-// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-// See the License for the specific language governing permissions and
-// limitations under the License.
-// ============LICENSE_END=================================================
-//
+/*-
+ * ============LICENSE_START=======================================================
+ *  Copyright (C) 2023 Nordix Foundation.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ * SPDX-License-Identifier: Apache-2.0
+ * ============LICENSE_END=========================================================
+ */
 
 package org.oran.datafile.oauth2;
 
 import java.util.Base64;
 import java.util.HashSet;
 import java.util.Set;
-
 import lombok.ToString;
-
 import org.apache.kafka.common.security.oauthbearer.OAuthBearerToken;
 import org.oran.datafile.exceptions.DatafileTaskException;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
 
 public class OAuthBearerTokenJwt implements OAuthBearerToken {
-    private static final Logger logger = LoggerFactory.getLogger(OAuthBearerTokenJwt.class);
     private static final com.google.gson.Gson gson = new com.google.gson.GsonBuilder().disableHtmlEscaping().create();
 
     private final String jwtTokenRaw;
index 54911dc..a0664c2 100644 (file)
@@ -1,19 +1,21 @@
-// ============LICENSE_START===============================================
-// Copyright (C) 2023 Nordix Foundation. All rights reserved.
-// ========================================================================
-// Licensed under the Apache License, Version 2.0 (the "License");
-// you may not use this file except in compliance with the License.
-// You may obtain a copy of the License at
-//
-// http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing, software
-// distributed under the License is distributed on an "AS IS" BASIS,
-// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-// See the License for the specific language governing permissions and
-// limitations under the License.
-// ============LICENSE_END=================================================
-//
+/*-
+ * ============LICENSE_START=======================================================
+ *  Copyright (C) 2023 Nordix Foundation.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ * ============LICENSE_END=========================================================
+ */
 
 package org.oran.datafile.oauth2;
 
@@ -51,6 +53,8 @@ public class OAuthKafkaAuthenticateLoginCallbackHandler implements AuthenticateC
 
     @Override
     public void close() {
+        /*This method intentionally left empty.
+        Close functionality will be implemented later.*/
     }
 
     @Override
@@ -59,11 +63,11 @@ public class OAuthKafkaAuthenticateLoginCallbackHandler implements AuthenticateC
         if (!this.isConfigured)
             throw new IllegalStateException("Callback handler not configured");
         for (Callback callback : callbacks) {
-            logger.debug("callback " + callback.toString());
-            if (callback instanceof OAuthBearerTokenCallback) {
-                handleCallback((OAuthBearerTokenCallback) callback);
-            } else if (callback instanceof SaslExtensionsCallback) {
-                handleCallback((SaslExtensionsCallback) callback);
+            logger.debug("callback {}", callback);
+            if (callback instanceof OAuthBearerTokenCallback oauthBearerTokenCallback) {
+                handleCallback(oauthBearerTokenCallback);
+            } else if (callback instanceof SaslExtensionsCallback saslExtensionsCallback) {
+                handleCallback(saslExtensionsCallback);
             } else {
                 logger.error("Unsupported callback: {}", callback);
                 throw new UnsupportedCallbackException(callback);
@@ -90,4 +94,7 @@ public class OAuthKafkaAuthenticateLoginCallbackHandler implements AuthenticateC
         }
     }
 
+    public boolean isConfigured() {
+        return isConfigured;
+    }
 }
index 578c111..aa13ca1 100644 (file)
@@ -49,10 +49,11 @@ public class SecurityContext {
     private static SecurityContext instance;
 
     @Setter
+    @Getter
     private Path authTokenFilePath;
 
     public SecurityContext(@Value("${app.auth-token-file:}") String authTokenFilename) {
-        instance = this;
+        instance = this; //NOSONAR
         if (!authTokenFilename.isEmpty()) {
             this.authTokenFilePath = Path.of(authTokenFilename);
         }
index 93b9a71..9ea9d57 100644 (file)
@@ -258,7 +258,8 @@ public class CollectAndReportFiles {
 
     private Mono<FilePublishInformation> handleFetchFileFailure(FileData fileData, Throwable t) {
         Path localFilePath = fileData.getLocalFilePath(this.appConfig);
-        logger.error("File fetching failed, path {}, reason: {}", fileData.remoteFilePath(), t.getMessage());
+        String remoteFilePath = fileData.remoteFilePath();
+        logger.error("File fetching failed, path {}, reason: {}", remoteFilePath, t.getMessage());
         deleteFile(localFilePath);
         if (FileData.Scheme.isFtpScheme(fileData.scheme())) {
             counters.incNoOfFailedFtp();
index c36bd49..999d2e8 100644 (file)
@@ -169,7 +169,7 @@ public class FileCollector {
         return new SftpClient(fileData.fileServerData(), new SftpClientSettings(appConfig.getSftpConfiguration()));
     }
 
-    protected FtpesClient createFtpesClient(FileData fileData) throws DatafileTaskException {
+    protected FtpesClient createFtpesClient(FileData fileData) {
         CertificateConfig config = appConfig.getCertificateConfiguration();
         Path trustedCa = config.trustedCa.isEmpty() ? null : Paths.get(config.trustedCa);
 
index 27b36c1..c8ef111 100644 (file)
@@ -238,11 +238,6 @@ class Integration {
         }
     }
 
-    @Test
-    void clear() {
-
-    }
-
     @Test
     void testKafka() throws InterruptedException {
         waitForKafkaListener();
@@ -278,7 +273,7 @@ class Integration {
 
         while (kafkaReceiver.count < NO_OF_OBJECTS) {
             logger.info("sleeping {}", kafkaReceiver.count);
-            Thread.sleep(1000 * 1);
+            Thread.sleep(1000); //NOSONAR
         }
 
         String rec = kafkaReceiver.lastValue();
diff --git a/datafilecollector/src/test/java/org/oran/datafile/configuration/AppConfigTest.java b/datafilecollector/src/test/java/org/oran/datafile/configuration/AppConfigTest.java
new file mode 100644 (file)
index 0000000..549cc03
--- /dev/null
@@ -0,0 +1,168 @@
+/*-
+ * ============LICENSE_START=======================================================
+ *  Copyright (C) 2023 Nordix Foundation.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ * SPDX-License-Identifier: Apache-2.0
+ * ============LICENSE_END=========================================================
+ */
+
+package org.oran.datafile.configuration;
+
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertFalse;
+import static org.junit.jupiter.api.Assertions.assertNull;
+import static org.junit.jupiter.api.Assertions.assertTrue;
+
+import java.lang.reflect.Field;
+import java.util.HashMap;
+import java.util.Map;
+import org.apache.kafka.clients.CommonClientConfigs;
+import org.apache.kafka.common.config.SaslConfigs;
+import org.apache.kafka.common.config.SslConfigs;
+import org.apache.kafka.common.security.auth.SecurityProtocol;
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.extension.ExtendWith;
+import org.mockito.InjectMocks;
+import org.mockito.MockitoAnnotations;
+import org.mockito.junit.jupiter.MockitoExtension;
+import org.oran.datafile.oauth2.OAuthKafkaAuthenticateLoginCallbackHandler;
+import org.springframework.test.context.ContextConfiguration;
+
+@ContextConfiguration(classes = {AppConfig.class})
+@ExtendWith(MockitoExtension.class)
+class AppConfigTest {
+
+    @InjectMocks
+    private AppConfig appConfig;
+
+    @BeforeEach
+    void setup() {
+        MockitoAnnotations.initMocks(this);
+    }
+    @Test
+    void testGetS3LocksBucket_WhenEmptyLocksBucket_ReturnsS3Bucket() {
+        injectFieldValue(appConfig, "s3Bucket", "test-bucket");
+        injectFieldValue(appConfig, "s3LocksBucket", "");
+
+        String result = appConfig.getS3LocksBucket();
+        assertEquals("test-bucket", result);
+    }
+
+    @Test
+    void testGetS3LocksBucket_WhenNonEmptyLocksBucket_ReturnsLocksBucket() {
+        injectFieldValue(appConfig, "s3Bucket", "test-bucket");
+        injectFieldValue(appConfig, "s3LocksBucket", "locks");
+
+        String result = appConfig.getS3LocksBucket();
+        assertEquals("locks", result);
+    }
+
+    @Test
+    void testIsS3Enabled_WhenS3EndpointAndBucketSet_ReturnsTrue() {
+        injectFieldValue(appConfig, "s3Bucket", "test-bucket");
+        injectFieldValue(appConfig, "s3EndpointOverride", "s3.endpoint");
+        boolean result = appConfig.isS3Enabled();
+        assertTrue(result);
+    }
+
+    @Test
+    void testIsS3Enabled_WhenS3EndpointNotSet_ReturnsFalse() {
+        injectFieldValue(appConfig, "s3Bucket", "test-bucket");
+        injectFieldValue(appConfig, "s3EndpointOverride", "");
+        boolean result = appConfig.isS3Enabled();
+        assertFalse(result);
+    }
+
+    @Test
+    void testGetKafkaBootStrapServers() {
+        assertNull((new AppConfig()).getKafkaBootStrapServers());
+    }
+
+    @Test
+    void testAddKafkaSecurityProps_UseOAuthToken() {
+        Map<String, Object> props = new HashMap<>();
+        injectFieldValue(appConfig, "useOathToken", true);
+        injectFieldValue(appConfig, "kafkaKeyStoreLocation", "key-store-location");
+        injectFieldValue(appConfig, "kafkTrustStoreLocation", "trust-store-location");
+        injectFieldValue(appConfig, "kafkaKeyStorePassword", "key-store-password");
+
+        appConfig.addKafkaSecurityProps(props);
+
+        assertEquals(SecurityProtocol.SASL_SSL.name, props.get(CommonClientConfigs.SECURITY_PROTOCOL_CONFIG));
+        assertEquals("OAUTHBEARER", props.get(SaslConfigs.SASL_MECHANISM));
+        assertEquals(OAuthKafkaAuthenticateLoginCallbackHandler.class.getName(),
+            props.get(SaslConfigs.SASL_LOGIN_CALLBACK_HANDLER_CLASS));
+        assertEquals(
+            "org.apache.kafka.common.security.oauthbearer.OAuthBearerLoginModule required unsecuredLoginStringClaim_sub=\"alice\"; ",
+            props.get(SaslConfigs.SASL_JAAS_CONFIG));
+    }
+
+    @Test
+    void testAddKafkaSecurityProps_SslConfig() {
+        Map<String, Object> props = new HashMap<>();
+        injectFieldValue(appConfig, "useOathToken", false);
+        injectFieldValue(appConfig, "kafkaKeyStoreLocation", "key-store-location");
+        injectFieldValue(appConfig, "kafkaKeyStoreType", "JKS");
+        injectFieldValue(appConfig, "kafkaKeyStorePassword", "key-store-password");
+        injectFieldValue(appConfig, "kafkTrustStoreLocation", "trust-store-location");
+        injectFieldValue(appConfig, "kafkaTrustStoreType", "JKS");
+
+        appConfig.addKafkaSecurityProps(props);
+
+        assertEquals(SecurityProtocol.SASL_SSL.name, props.get(CommonClientConfigs.SECURITY_PROTOCOL_CONFIG));
+        assertEquals("JKS", props.get(SslConfigs.SSL_KEYSTORE_TYPE_CONFIG));
+        assertEquals("key-store-location", props.get(SslConfigs.SSL_KEYSTORE_LOCATION_CONFIG));
+        assertEquals("key-store-password", props.get(SslConfigs.SSL_KEY_PASSWORD_CONFIG));
+        assertEquals("JKS", props.get(SslConfigs.SSL_TRUSTSTORE_TYPE_CONFIG));
+        assertEquals("trust-store-location", props.get(SslConfigs.SSL_TRUSTSTORE_LOCATION_CONFIG));
+    }
+
+    @Test
+    void testGetCertificateConfiguration() {
+        injectFieldValue(appConfig, "clientTrustStore", "trust-store");
+        injectFieldValue(appConfig, "clientTrustStorePassword", "trust-store-password");
+        injectFieldValue(appConfig, "clientKeyStore", "key-store");
+        injectFieldValue(appConfig, "clientKeyStorePassword", "key-store-password");
+
+        CertificateConfig certificateConfig = appConfig.getCertificateConfiguration();
+
+        assertEquals("trust-store", certificateConfig.trustedCa);
+        assertEquals("trust-store-password", certificateConfig.trustedCaPasswordPath);
+        assertEquals("key-store", certificateConfig.keyCert);
+        assertEquals("key-store-password", certificateConfig.keyPasswordPath);
+    }
+
+    @Test
+    void testGetSftpConfiguration() {
+        injectFieldValue(appConfig, "knownHostsFilePath", "/path/to/known_hosts");
+        injectFieldValue(appConfig, "strictHostKeyChecking", true);
+
+        SftpConfig sftpConfig = appConfig.getSftpConfiguration();
+
+        assertEquals("/path/to/known_hosts", sftpConfig.knownHostsFilePath);
+        assertTrue(sftpConfig.strictHostKeyChecking);
+    }
+
+    private void injectFieldValue(Object target, String fieldName, Object value) {
+        try {
+            Field field = target.getClass().getDeclaredField(fieldName);
+            field.setAccessible(true);
+            field.set(target, value);
+        } catch (NoSuchFieldException | IllegalAccessException e) {
+            e.printStackTrace();
+        }
+    }
+}
diff --git a/datafilecollector/src/test/java/org/oran/datafile/configuration/CertificateConfigTest.java b/datafilecollector/src/test/java/org/oran/datafile/configuration/CertificateConfigTest.java
new file mode 100644 (file)
index 0000000..b030b84
--- /dev/null
@@ -0,0 +1,39 @@
+/*-
+ * ============LICENSE_START=======================================================
+ *  Copyright (C) 2023 Nordix Foundation.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ * SPDX-License-Identifier: Apache-2.0
+ * ============LICENSE_END=========================================================
+ */
+
+package org.oran.datafile.configuration;
+
+import static org.junit.jupiter.api.Assertions.assertEquals;
+
+import org.junit.jupiter.api.Test;
+
+class CertificateConfigTest {
+    @Test
+    void testConstructor() {
+        CertificateConfig actualCertificateConfig = new CertificateConfig("Key Cert", "Key Password Path", "Trusted Ca",
+            "Trusted Ca Password Path");
+
+        assertEquals("Key Cert", actualCertificateConfig.keyCert);
+        assertEquals("Trusted Ca Password Path", actualCertificateConfig.trustedCaPasswordPath);
+        assertEquals("Trusted Ca", actualCertificateConfig.trustedCa);
+        assertEquals("Key Password Path", actualCertificateConfig.keyPasswordPath);
+    }
+}
+
index 1826096..39d4dc1 100644 (file)
@@ -21,6 +21,7 @@
 
 package org.oran.datafile.controllers;
 
+import static org.junit.jupiter.api.Assertions.assertEquals;
 import static org.junit.jupiter.api.Assertions.assertTrue;
 import static org.mockito.Mockito.doReturn;
 
@@ -32,11 +33,12 @@ import org.mockito.junit.jupiter.MockitoExtension;
 import org.oran.datafile.model.Counters;
 import org.oran.datafile.tasks.CollectAndReportFiles;
 import org.springframework.http.HttpHeaders;
+import org.springframework.http.HttpStatusCode;
 import org.springframework.http.ResponseEntity;
 import reactor.core.publisher.Mono;
 
 @ExtendWith(MockitoExtension.class)
-public class StatusControllerTest {
+class StatusControllerTest {
     @Mock
     CollectAndReportFiles scheduledTasksMock;
 
@@ -48,7 +50,7 @@ public class StatusControllerTest {
     }
 
     @Test
-    public void heartbeat_success() {
+    void heartbeat_success() {
         HttpHeaders httpHeaders = new HttpHeaders();
 
         Mono<ResponseEntity<String>> result = controllerUnderTest.heartbeat(httpHeaders);
@@ -58,7 +60,7 @@ public class StatusControllerTest {
     }
 
     @Test
-    public void status() {
+    void status() {
         Counters counters = new Counters();
         doReturn(counters).when(scheduledTasksMock).getCounters();
 
@@ -67,6 +69,8 @@ public class StatusControllerTest {
         Mono<ResponseEntity<String>> result = controllerUnderTest.status(httpHeaders);
 
         String body = result.block().getBody();
+        HttpStatusCode httpStatusCode = result.block().getStatusCode();
+        assertEquals(200, httpStatusCode.value());
         System.out.println(body);
     }
 
diff --git a/datafilecollector/src/test/java/org/oran/datafile/datastore/DataStoreTest.java b/datafilecollector/src/test/java/org/oran/datafile/datastore/DataStoreTest.java
new file mode 100644 (file)
index 0000000..e2e800e
--- /dev/null
@@ -0,0 +1,54 @@
+/*-
+ * ============LICENSE_START=======================================================
+ *  Copyright (C) 2023 Nordix Foundation.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ * SPDX-License-Identifier: Apache-2.0
+ * ============LICENSE_END=========================================================
+ */
+
+package org.oran.datafile.datastore;
+
+import static org.junit.jupiter.api.Assertions.assertTrue;
+import static org.mockito.Mockito.when;
+
+import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.extension.ExtendWith;
+import org.mockito.Mock;
+import org.mockito.junit.jupiter.MockitoExtension;
+import org.oran.datafile.configuration.AppConfig;
+
+@ExtendWith(MockitoExtension.class)
+class DataStoreTest {
+
+    @Mock
+    private AppConfig mockAppConfig;
+
+    @Test
+    void testCreateWithS3Enabled() {
+        when(mockAppConfig.isS3Enabled()).thenReturn(true);
+        when(mockAppConfig.getS3EndpointOverride()).thenReturn("https://dummy-s3-bucket.s3.amazonaws.com");
+        when(mockAppConfig.getS3AccessKeyId()).thenReturn("test-access-key-id");
+        when(mockAppConfig.getS3SecretAccessKey()).thenReturn("test-access-key-secret");
+        DataStore dataStore = DataStore.create(mockAppConfig);
+        assertTrue(dataStore instanceof S3ObjectStore);
+    }
+
+    @Test
+    void testCreateWithS3Disabled() {
+        when(mockAppConfig.isS3Enabled()).thenReturn(false);
+        DataStore dataStore = DataStore.create(mockAppConfig);
+        assertTrue(dataStore instanceof FileStore);
+    }
+}
diff --git a/datafilecollector/src/test/java/org/oran/datafile/datastore/FileStoreTest.java b/datafilecollector/src/test/java/org/oran/datafile/datastore/FileStoreTest.java
new file mode 100644 (file)
index 0000000..21ff1c1
--- /dev/null
@@ -0,0 +1,257 @@
+/*-
+ * ============LICENSE_START=======================================================
+ *  Copyright (C) 2023 Nordix Foundation.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ * SPDX-License-Identifier: Apache-2.0
+ * ============LICENSE_END=========================================================
+ */
+
+package org.oran.datafile.datastore;
+
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.mockito.Mockito.any;
+import static org.mockito.Mockito.anyInt;
+import static org.mockito.Mockito.atLeast;
+import static org.mockito.Mockito.eq;
+import static org.mockito.Mockito.mockStatic;
+import static org.mockito.Mockito.verify;
+import static org.mockito.Mockito.when;
+
+import java.io.IOException;
+import java.nio.file.FileVisitor;
+import java.nio.file.Files;
+import java.nio.file.LinkOption;
+import java.nio.file.Path;
+import java.nio.file.Paths;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.List;
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.extension.ExtendWith;
+import org.mockito.Mock;
+import org.mockito.MockedStatic;
+import org.mockito.Mockito;
+import org.mockito.MockitoAnnotations;
+import org.mockito.junit.jupiter.MockitoExtension;
+import org.oran.datafile.configuration.AppConfig;
+import org.springframework.test.context.ContextConfiguration;
+import reactor.core.publisher.Mono;
+import reactor.test.StepVerifier;
+
+@ContextConfiguration(classes = { FileStore.class })
+@ExtendWith(MockitoExtension.class)
+class FileStoreTest {
+
+    @Mock
+    private AppConfig appConfig;
+
+    private FileStore fileStore;
+
+    @Mock
+    private Path mockPath;
+
+    @BeforeEach
+    void setup() {
+        MockitoAnnotations.initMocks(this);
+        fileStore = new FileStore(appConfig);
+
+        when(appConfig.getCollectedFilesPath()).thenReturn("/path/to/collected/files");
+    }
+
+    @Test
+    void testListObjects() {
+        when(appConfig.getCollectedFilesPath()).thenReturn("Collected Files Path");
+        fileStore.listObjects(DataStore.Bucket.FILES, "Prefix");
+        verify(appConfig).getCollectedFilesPath();
+    }
+    @Test
+    void testListObjects3() {
+        when(appConfig.getCollectedFilesPath()).thenReturn("Collected Files Path");
+        fileStore.listObjects(DataStore.Bucket.LOCKS, "Prefix");
+        verify(appConfig).getCollectedFilesPath();
+    }
+
+    @Test
+    void testListObjects_WithExistingFiles() {
+        List<Path> fileList = new ArrayList<>();
+        fileList.add(Path.of("/path/to/collected/files/file1.txt"));
+        fileList.add(Path.of("/path/to/collected/files/file2.txt"));
+
+        when(appConfig.getCollectedFilesPath()).thenReturn("/path/to/collected/files");
+
+        // Mock Files.walk() to return the prepared stream
+        try (MockedStatic<Files> filesMockedStatic = mockStatic(Files.class)) {
+            filesMockedStatic.when(() -> Files.walk(any(), anyInt())).
+                 thenReturn(fileList.stream());
+
+            StepVerifier.create(fileStore.listObjects(DataStore.Bucket.FILES, "")).
+                 expectNext("file1.txt").
+                 expectNext("file2.txt").
+                 expectComplete();
+        }
+    }
+    @Test
+    void testReadObject() {
+        when(appConfig.getCollectedFilesPath()).thenReturn("Collected Files Path");
+        fileStore.readObject(DataStore.Bucket.FILES, "foo.txt");
+        verify(appConfig).getCollectedFilesPath();
+    }
+    @Test
+    void testReadObject2() {
+        when(appConfig.getCollectedFilesPath()).thenReturn("Collected Files Path");
+        fileStore.readObject(DataStore.Bucket.LOCKS, "foo.txt");
+        verify(appConfig).getCollectedFilesPath();
+    }
+
+    @Test
+    void testReadObject_WithExistingFile() {
+        byte[] content = "Hello, world!".getBytes();
+        Path filePath = Path.of("/path/to/collected/files/test.txt");
+
+        try (MockedStatic<Files> filesMockedStatic = mockStatic(Files.class)) {
+            filesMockedStatic.when(() -> Files.readAllBytes(eq(filePath))).
+                 thenReturn(content);
+
+            StepVerifier.create(fileStore.readObject(DataStore.Bucket.FILES, "test.txt")).
+                 expectNext(content).
+                 verifyComplete();
+        }
+    }
+    @Test
+    void testCreateLock() {
+        when(appConfig.getCollectedFilesPath()).thenReturn("Collected Files Path");
+        fileStore.createLock("Name");
+        verify(appConfig, atLeast(1)).getCollectedFilesPath();
+    }
+    @Test
+    void testCreateLock3() {
+        when(appConfig.getCollectedFilesPath()).thenReturn("");
+        fileStore.createLock("/");
+        verify(appConfig, atLeast(1)).getCollectedFilesPath();
+    }
+    @Test
+    void testDeleteLock() {
+        when(appConfig.getCollectedFilesPath()).thenReturn("Collected Files Path");
+        fileStore.deleteLock("Name");
+        verify(appConfig).getCollectedFilesPath();
+    }
+    @Test
+    void testDeleteLock2() {
+        when(appConfig.getCollectedFilesPath()).thenReturn("");
+        fileStore.deleteLock("//");
+        verify(appConfig).getCollectedFilesPath();
+    }
+    @Test
+    void testDeleteObject() {
+        when(appConfig.getCollectedFilesPath()).thenReturn("Collected Files Path");
+        fileStore.deleteObject(DataStore.Bucket.FILES, "Name");
+        verify(appConfig).getCollectedFilesPath();
+    }
+    @Test
+    void testDeleteObject2() {
+        when(appConfig.getCollectedFilesPath()).thenReturn("Collected Files Path");
+        fileStore.deleteObject(DataStore.Bucket.LOCKS, "Name");
+        verify(appConfig).getCollectedFilesPath();
+    }
+
+    @Test
+    void testPath() {
+        when(appConfig.getCollectedFilesPath()).thenReturn("Collected Files Path");
+        fileStore.path("Name");
+        verify(appConfig).getCollectedFilesPath();
+    }
+    @Test
+    void testFileExists() {
+        when(appConfig.getCollectedFilesPath()).thenReturn("Collected Files Path");
+        fileStore.fileExists(DataStore.Bucket.FILES, "Key");
+        verify(appConfig).getCollectedFilesPath();
+    }
+    @Test
+    void testFileExists2() {
+        when(appConfig.getCollectedFilesPath()).thenReturn("Collected Files Path");
+        fileStore.fileExists(DataStore.Bucket.LOCKS, "Key");
+        verify(appConfig).getCollectedFilesPath();
+    }
+    @Test
+    void testDeleteBucket() {
+        when(appConfig.getCollectedFilesPath()).thenReturn("Collected Files Path");
+        fileStore.deleteBucket(DataStore.Bucket.FILES);
+        verify(appConfig).getCollectedFilesPath();
+    }
+    @Test
+    void testDeleteBucket2() throws IOException {
+        try (MockedStatic<Files> mockFiles = mockStatic(Files.class)) {
+            mockFiles.when(() -> Files.walkFileTree(Mockito.<Path>any(), Mockito.<FileVisitor<Path>>any())).
+                 thenReturn(Paths.get(System.getProperty("java.io.tmpdir"), "test.txt"));
+            mockFiles.when(() -> Files.exists(Mockito.<Path>any(), (LinkOption[]) any())).thenReturn(true);
+            when(appConfig.getCollectedFilesPath()).thenReturn("");
+            fileStore.deleteBucket(DataStore.Bucket.LOCKS);
+            mockFiles.verify(() -> Files.exists(Mockito.<Path>any(), (LinkOption[]) any()));
+            mockFiles.verify(() -> Files.walkFileTree(Mockito.<Path>any(), Mockito.<FileVisitor<Path>>any()));
+            verify(appConfig).getCollectedFilesPath();
+        }
+    }
+    @Test
+    void testDeleteBucket3() throws IOException {
+        try (MockedStatic<Files> mockFiles = mockStatic(Files.class)) {
+            mockFiles.when(() -> Files.walkFileTree(Mockito.<Path>any(), Mockito.<FileVisitor<Path>>any())).
+                 thenThrow(new IOException("OK"));
+            mockFiles.when(() -> Files.exists(Mockito.<Path>any(), (LinkOption[]) any())).thenReturn(true);
+            when(appConfig.getCollectedFilesPath()).thenReturn("");
+            fileStore.deleteBucket(DataStore.Bucket.LOCKS);
+            mockFiles.verify(() -> Files.exists(Mockito.<Path>any(), (LinkOption[]) any()));
+            mockFiles.verify(() -> Files.walkFileTree(Mockito.<Path>any(), Mockito.<FileVisitor<Path>>any()));
+            verify(appConfig, atLeast(1)).getCollectedFilesPath();
+        }
+    }
+
+    @Test
+    void testCreateLock_Success() throws IOException {
+        Path lockPath = Path.of("/path/to/collected/files/locks/lock.txt");
+
+        when(appConfig.getCollectedFilesPath()).thenReturn("/path/to/collected/files");
+
+        try (MockedStatic<Files> filesMockedStatic = mockStatic(Files.class)) {
+            filesMockedStatic.when(() -> Files.createDirectories(lockPath.getParent())).
+                 thenReturn(lockPath.getParent());
+
+            try (MockedStatic<Path> pathMockedStatic = mockStatic(Path.class)) {
+                filesMockedStatic.when(() -> Files.createFile(any(Path.class))).thenReturn(lockPath);
+
+                String name = "test.txt";
+                String[] pathComponents = { "collectedFiles", name };
+
+                when(fileStore.path(Arrays.toString(pathComponents))).thenReturn(mockPath);
+                Path path = fileStore.path(Arrays.toString(pathComponents));
+                assertEquals(mockPath, path);
+            }
+        }
+    }
+
+    @Test
+    void testCopyFileTo_Failure() {
+        // Define dummy values for testing
+        Path from = Paths.get("non-existent-file.txt");
+        String to = "destination-folder";
+
+        // Use StepVerifier to test the method
+        Mono<String> resultMono = fileStore.copyFileTo(from, to);
+
+        StepVerifier.create(resultMono).
+             expectError(IOException.class).
+             verify();
+    }
+}
diff --git a/datafilecollector/src/test/java/org/oran/datafile/datastore/S3ObjectStoreTest.java b/datafilecollector/src/test/java/org/oran/datafile/datastore/S3ObjectStoreTest.java
new file mode 100644 (file)
index 0000000..298e9b4
--- /dev/null
@@ -0,0 +1,321 @@
+/*-
+ * ============LICENSE_START=======================================================
+ *  Copyright (C) 2023 Nordix Foundation.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ * SPDX-License-Identifier: Apache-2.0
+ * ============LICENSE_END=========================================================
+ */
+
+package org.oran.datafile.datastore;
+
+import static org.assertj.core.api.Assertions.assertThat;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.mockito.ArgumentMatchers.any;
+import static org.mockito.Mockito.atLeast;
+import static org.mockito.Mockito.verify;
+import static org.mockito.Mockito.when;
+
+import java.net.URISyntaxException;
+import java.nio.charset.StandardCharsets;
+import java.nio.file.Path;
+import java.nio.file.Paths;
+import java.util.Arrays;
+import java.util.List;
+import java.util.concurrent.CompletableFuture;
+import org.junit.jupiter.api.Assertions;
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.extension.ExtendWith;
+import org.mockito.Mock;
+import org.mockito.Mockito;
+import org.mockito.junit.jupiter.MockitoExtension;
+import org.oran.datafile.configuration.AppConfig;
+import reactor.core.publisher.Flux;
+import reactor.core.publisher.Mono;
+import reactor.test.StepVerifier;
+import software.amazon.awssdk.core.ResponseBytes;
+import software.amazon.awssdk.core.async.AsyncRequestBody;
+import software.amazon.awssdk.core.async.AsyncResponseTransformer;
+import software.amazon.awssdk.services.s3.S3AsyncClient;
+import software.amazon.awssdk.services.s3.model.CreateBucketRequest;
+import software.amazon.awssdk.services.s3.model.CreateBucketResponse;
+import software.amazon.awssdk.services.s3.model.DeleteBucketRequest;
+import software.amazon.awssdk.services.s3.model.DeleteBucketResponse;
+import software.amazon.awssdk.services.s3.model.DeleteObjectRequest;
+import software.amazon.awssdk.services.s3.model.DeleteObjectResponse;
+import software.amazon.awssdk.services.s3.model.DeleteObjectsRequest;
+import software.amazon.awssdk.services.s3.model.DeleteObjectsResponse;
+import software.amazon.awssdk.services.s3.model.GetObjectRequest;
+import software.amazon.awssdk.services.s3.model.GetObjectResponse;
+import software.amazon.awssdk.services.s3.model.HeadObjectRequest;
+import software.amazon.awssdk.services.s3.model.HeadObjectResponse;
+import software.amazon.awssdk.services.s3.model.ListObjectsRequest;
+import software.amazon.awssdk.services.s3.model.ListObjectsResponse;
+import software.amazon.awssdk.services.s3.model.PutObjectRequest;
+import software.amazon.awssdk.services.s3.model.PutObjectResponse;
+import software.amazon.awssdk.services.s3.model.S3Object;
+
+
+@ExtendWith(MockitoExtension.class)
+class S3ObjectStoreTest {
+
+    @Mock
+    private AppConfig appConfig;
+
+    @Mock
+    private S3AsyncClient s3AsynchClient;
+
+    private S3ObjectStore s3ObjectStore;
+
+    @BeforeEach
+    void setup() {
+        Mockito.lenient().when(appConfig.getS3EndpointOverride()).thenReturn("https://dummy-s3-bucket.s3.amazonaws.com");
+        Mockito.lenient().when(appConfig.getS3AccessKeyId()).thenReturn("test-access-key-id");
+        Mockito.lenient().when(appConfig.getS3SecretAccessKey()).thenReturn("test-access-key-secret");
+
+        Mockito.lenient().when(appConfig.getS3Bucket()).thenReturn("test-bucket");
+        Mockito.lenient().when(appConfig.getS3LocksBucket()).thenReturn("test-lock-bucket");
+        Mockito.lenient().when(appConfig.isS3Enabled()).thenReturn(true);
+
+        s3ObjectStore = new S3ObjectStore(appConfig, s3AsynchClient);
+    }
+
+    @Test
+    void createS3Bucket() {
+        CreateBucketRequest request = CreateBucketRequest.builder()
+            .bucket("test-bucket")
+            .build();
+
+        when(s3AsynchClient.createBucket(any(CreateBucketRequest.class)))
+            .thenReturn(CompletableFuture.completedFuture(CreateBucketResponse.builder().build()));
+
+        Mono<String> result = s3ObjectStore.create(DataStore.Bucket.FILES);
+
+        verify(s3AsynchClient, atLeast(1)).createBucket(any(CreateBucketRequest.class));
+
+        StepVerifier.create(result).expectNext("test-bucket").verifyComplete();
+
+        assertThat(result.block()).isEqualTo("test-bucket");
+    }
+
+    @Test
+    void listObjects() {
+        String prefix = "prefix/";
+
+        ListObjectsResponse response1 = ListObjectsResponse.builder()
+            .contents(createS3Object("object1"))
+            .isTruncated(true)
+            .nextMarker("marker1")
+            .build();
+
+        ListObjectsResponse response2 = ListObjectsResponse.builder()
+            .contents(createS3Object("object2"))
+            .isTruncated(false)
+            .build();
+
+        when(s3AsynchClient.listObjects(any(ListObjectsRequest.class)))
+            .thenReturn(CompletableFuture.completedFuture(response1),
+                CompletableFuture.completedFuture(response2));
+
+        Flux<String> result = s3ObjectStore.listObjects(DataStore.Bucket.FILES, prefix);
+
+        verify(s3AsynchClient, atLeast(1)).listObjects(any(ListObjectsRequest.class));
+
+        StepVerifier.create(result)
+            .expectNext("object1")
+            .expectNext("object2")
+            .verifyComplete();
+
+        // Collect the results into a list
+        List<String> resultList = result.collectList().block();
+
+        assertEquals(Arrays.asList("object1", "object2"), resultList);
+    }
+
+    @Test
+    void testCreateLockWithExistingHead() {
+        HeadObjectResponse headObjectResponse = HeadObjectResponse.builder().build();
+
+        when(s3AsynchClient.headObject(any(HeadObjectRequest.class)))
+            .thenReturn(CompletableFuture.completedFuture(headObjectResponse));
+
+        Mono<Boolean> result = s3ObjectStore.createLock("lockName");
+
+        StepVerifier.create(result)
+            .expectNext(false)
+            .verifyComplete();
+
+        assertThat(result.block()).isFalse();
+    }
+
+    @Test
+    void testCreateLockWithoutExistingHead() {
+        HeadObjectResponse headObjectResponse = null;
+        Mockito.doReturn(CompletableFuture.completedFuture(headObjectResponse))
+            .when(s3AsynchClient)
+            .headObject(any(HeadObjectRequest.class));
+
+        Mono<Boolean> result = s3ObjectStore.createLock("lockName");
+
+        StepVerifier.create(result)
+            .expectComplete()
+            .verify();
+
+        Boolean resultVal = result.block();
+
+        assertThat(resultVal).isNull();
+    }
+
+
+    @Test
+    void deleteLock() {
+        when(s3AsynchClient.deleteObject(any(DeleteObjectRequest.class)))
+            .thenReturn(CompletableFuture.completedFuture(DeleteObjectResponse.builder().build()));
+
+        Mono<Boolean> result = s3ObjectStore.deleteLock("lock-name");
+
+        StepVerifier.create(result)
+            .expectNext(true)
+            .verifyComplete();
+
+        assertThat(result.block()).isTrue();
+    }
+
+    @Test
+    void testDeleteObject() {
+        when(s3AsynchClient.deleteObject(any(DeleteObjectRequest.class)))
+            .thenReturn(CompletableFuture.completedFuture(DeleteObjectResponse.builder().build()));
+
+        Mono<Boolean> result = s3ObjectStore.deleteObject(DataStore.Bucket.LOCKS, "objectName");
+
+        StepVerifier.create(result)
+            .expectNext(true)
+            .verifyComplete();
+
+        assertThat(result.block()).isTrue();
+    }
+
+    @Test
+    void testDeleteBucket_Success() {
+        DeleteBucketRequest request = DeleteBucketRequest.builder() //
+            .bucket("test-bucket")
+            .build();
+
+        when(s3AsynchClient.deleteBucket(any(DeleteBucketRequest.class)))
+            .thenReturn(CompletableFuture.completedFuture(DeleteBucketResponse.builder().build()));
+
+        DeleteObjectsRequest objectRequest = DeleteObjectsRequest.builder() //
+            .bucket("test-bucket")
+            .build();
+
+        when(s3AsynchClient.deleteObjects(any(DeleteObjectsRequest.class)))
+            .thenReturn(CompletableFuture.completedFuture(DeleteObjectsResponse.builder().build()));
+
+        String prefix = "prefix/";
+
+        ListObjectsResponse response1 = ListObjectsResponse.builder()
+            .contents(createS3Object("object1"))
+            .isTruncated(true)
+            .nextMarker("marker1")
+            .build();
+
+        ListObjectsResponse response2 = ListObjectsResponse.builder()
+            .contents(createS3Object("object2"))
+            .isTruncated(false)
+            .build();
+
+        when(s3AsynchClient.listObjects(any(ListObjectsRequest.class)))
+            .thenReturn(CompletableFuture.completedFuture(response1),
+                CompletableFuture.completedFuture(response2));
+
+        Mono<String> result = s3ObjectStore.deleteBucket(DataStore.Bucket.FILES);
+
+        StepVerifier.create(result)
+            .expectNext("OK")
+            .verifyComplete();
+    }
+
+    @Test
+    void testCopyFileTo_Success() throws URISyntaxException {
+        PutObjectRequest request = PutObjectRequest.builder() //
+            .bucket("test-bucket") //
+            .key("test-access-key-id") //
+            .build();
+
+        when(s3AsynchClient.putObject(any(PutObjectRequest.class), any(AsyncRequestBody.class)))
+            .thenAnswer(invocation -> {
+                CompletableFuture<PutObjectResponse> future = CompletableFuture.completedFuture(
+                    PutObjectResponse.builder().build()
+                );
+                return future;
+            });
+
+        Path testFile = Paths.get(getClass().getResource("/org/oran/datafile/datastore/file.txt").toURI());
+
+        Mono<String> result = s3ObjectStore.copyFileTo(testFile, "test-key");
+
+        StepVerifier.create(result)
+            .expectNext("test-key")
+            .verifyComplete();
+    }
+
+    @Test
+    void testReadObject() {
+        // Mock the getObject method to return a CompletableFuture with ResponseBytes
+        when(s3AsynchClient.getObject(any(GetObjectRequest.class), any(AsyncResponseTransformer.class)))
+            .thenAnswer(invocation -> {
+                ResponseBytes<GetObjectResponse> responseBytes = ResponseBytes.fromByteArray(
+                    GetObjectResponse.builder().build(),
+                    "Hello, World!".getBytes(StandardCharsets.UTF_8)
+                );
+                CompletableFuture<ResponseBytes<GetObjectResponse>> future = CompletableFuture.completedFuture(
+                    responseBytes
+                );
+                return future;
+            });
+
+        // Call the method under test
+        Mono<byte[]> result = s3ObjectStore.readObject(DataStore.Bucket.FILES, "test-key");
+
+        byte[] expectedBytes = "Hello, World!".getBytes(StandardCharsets.UTF_8);
+        StepVerifier.create(result)
+            .consumeNextWith(actualBytes -> Assertions.assertArrayEquals(expectedBytes, actualBytes))
+            .verifyComplete();
+    }
+
+    @Test
+    void testPutObject() {
+        // Mock the putObject method to return a CompletableFuture with PutObjectResponse
+        when(s3AsynchClient.putObject(any(PutObjectRequest.class), any(AsyncRequestBody.class)))
+            .thenAnswer(invocation -> {
+                CompletableFuture<PutObjectResponse> future = CompletableFuture.completedFuture(
+                    PutObjectResponse.builder().build()
+                );
+                return future;
+            });
+
+        // Call the method under test
+        Mono<String> result = s3ObjectStore.putObject(DataStore.Bucket.FILES, "test-key", "Hello, World!");
+
+        // Verify the Mono's behavior using StepVerifier
+        StepVerifier.create(result)
+            .expectNext("test-key")
+            .verifyComplete();
+    }
+
+    private S3Object createS3Object(String key) {
+        return S3Object.builder().key(key).build();
+    }
+}
index ef3310a..7effe75 100644 (file)
 package org.oran.datafile.ftp;
 
 import static org.assertj.core.api.Assertions.assertThatThrownBy;
+import static org.junit.jupiter.api.Assertions.assertNotNull;
+import static org.junit.jupiter.api.Assertions.assertNull;
+import static org.junit.jupiter.api.Assertions.assertThrows;
 import static org.mockito.ArgumentMatchers.any;
+import static org.mockito.ArgumentMatchers.eq;
 import static org.mockito.Mockito.doReturn;
 import static org.mockito.Mockito.doThrow;
 import static org.mockito.Mockito.mock;
@@ -31,21 +35,25 @@ import static org.mockito.Mockito.when;
 import java.io.IOException;
 import java.io.InputStream;
 import java.io.OutputStream;
+import java.net.URISyntaxException;
 import java.nio.file.Path;
 import java.nio.file.Paths;
-
+import java.security.KeyStoreException;
+import java.security.NoSuchAlgorithmException;
+import java.security.cert.CertificateException;
 import javax.net.ssl.KeyManager;
 import javax.net.ssl.TrustManager;
-
 import org.apache.commons.net.ftp.FTP;
 import org.apache.commons.net.ftp.FTPSClient;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
 import org.mockito.ArgumentMatchers;
+import org.oran.datafile.exceptions.DatafileTaskException;
+import org.oran.datafile.exceptions.NonRetryableDatafileTaskException;
 import org.oran.datafile.model.FileServerData;
 import org.springframework.http.HttpStatus;
 
-public class FtpesClientTest {
+class FtpesClientTest {
 
     private static final String REMOTE_FILE_PATH = "/dir/sample.txt";
     private static final Path LOCAL_FILE_PATH = Paths.get("target/sample.txt");
@@ -85,7 +93,7 @@ public class FtpesClientTest {
     private void verifyFtpsClientMock_openOk() throws Exception {
         doReturn(outputStreamMock).when(clientUnderTestSpy).createOutputStream(LOCAL_FILE_PATH);
 
-        when(ftpsClientMock.retrieveFile(ArgumentMatchers.eq(REMOTE_FILE_PATH),
+        when(ftpsClientMock.retrieveFile(eq(REMOTE_FILE_PATH),
             ArgumentMatchers.any(OutputStream.class))).thenReturn(true);
         verify(ftpsClientMock).setNeedClientAuth(true);
         verify(ftpsClientMock).setKeyManager(keyManagerMock);
@@ -101,7 +109,7 @@ public class FtpesClientTest {
     }
 
     @Test
-    public void collectFile_allOk() throws Exception {
+    void collectFile_allOk() throws Exception {
 
         doReturn(keyManagerMock).when(clientUnderTestSpy).getKeyManager(Paths.get(FTP_KEY_PATH), FTP_KEY_PASSWORD_PATH);
         doReturn(trustManagerMock).when(clientUnderTestSpy).getTrustManager(TRUSTED_CA_PATH, TRUSTED_CA_PASSWORD);
@@ -121,12 +129,12 @@ public class FtpesClientTest {
         verify(ftpsClientMock, times(1)).isConnected();
         verify(ftpsClientMock, times(1)).logout();
         verify(ftpsClientMock, times(1)).disconnect();
-        verify(ftpsClientMock, times(1)).retrieveFile(ArgumentMatchers.eq(REMOTE_FILE_PATH), any());
+        verify(ftpsClientMock, times(1)).retrieveFile(eq(REMOTE_FILE_PATH), any());
         verifyNoMoreInteractions(ftpsClientMock);
     }
 
     @Test
-    public void collectFileFaultyOwnKey_shouldFail() throws Exception {
+    void collectFileFaultyOwnKey_shouldFail() throws Exception {
 
         doReturn(outputStreamMock).when(clientUnderTestSpy).createOutputStream(LOCAL_FILE_PATH);
         assertThatThrownBy(() -> clientUnderTestSpy.open()).hasMessageContaining("Could not open connection:");
@@ -140,7 +148,7 @@ public class FtpesClientTest {
     }
 
     @Test
-    public void collectFileFaultTrustedCA_shouldFail_no_trustedCA_file() throws Exception {
+    void collectFileFaultTrustedCA_shouldFail_no_trustedCA_file() throws Exception {
 
         doReturn(keyManagerMock).when(clientUnderTestSpy).getKeyManager(Paths.get(FTP_KEY_PATH), FTP_KEY_PASSWORD_PATH);
         doThrow(new IOException("problem")).when(clientUnderTestSpy).createInputStream(TRUSTED_CA_PATH);
@@ -150,7 +158,7 @@ public class FtpesClientTest {
     }
 
     @Test
-    public void collectFileFaultTrustedCA_shouldFail_empty_trustedCA_file() throws Exception {
+    void collectFileFaultTrustedCA_shouldFail_empty_trustedCA_file() throws Exception {
 
         doReturn(keyManagerMock).when(clientUnderTestSpy).getKeyManager(Paths.get(FTP_KEY_PATH), FTP_KEY_PASSWORD_PATH);
         doReturn(inputStreamMock).when(clientUnderTestSpy).createInputStream(TRUSTED_CA_PATH);
@@ -159,7 +167,7 @@ public class FtpesClientTest {
     }
 
     @Test
-    public void collectFileFaultyLogin_shouldFail() throws Exception {
+    void collectFileFaultyLogin_shouldFail() throws Exception {
 
         doReturn(keyManagerMock).when(clientUnderTestSpy).getKeyManager(Paths.get(FTP_KEY_PATH), FTP_KEY_PASSWORD_PATH);
         doReturn(trustManagerMock).when(clientUnderTestSpy).getTrustManager(TRUSTED_CA_PATH, TRUSTED_CA_PASSWORD);
@@ -176,7 +184,7 @@ public class FtpesClientTest {
     }
 
     @Test
-    public void collectFileBadRequestResponse_shouldFail() throws Exception {
+    void collectFileBadRequestResponse_shouldFail() throws Exception {
         doReturn(keyManagerMock).when(clientUnderTestSpy).getKeyManager(Paths.get(FTP_KEY_PATH), FTP_KEY_PASSWORD_PATH);
         doReturn(trustManagerMock).when(clientUnderTestSpy).getTrustManager(TRUSTED_CA_PATH, TRUSTED_CA_PASSWORD);
         doReturn(outputStreamMock).when(clientUnderTestSpy).createOutputStream(LOCAL_FILE_PATH);
@@ -196,7 +204,7 @@ public class FtpesClientTest {
     }
 
     @Test
-    public void collectFile_shouldFail() throws Exception {
+    void collectFile_shouldFail() throws Exception {
         doReturn(keyManagerMock).when(clientUnderTestSpy).getKeyManager(Paths.get(FTP_KEY_PATH), FTP_KEY_PASSWORD_PATH);
         doReturn(trustManagerMock).when(clientUnderTestSpy).getTrustManager(TRUSTED_CA_PATH, TRUSTED_CA_PASSWORD);
         doReturn(outputStreamMock).when(clientUnderTestSpy).createOutputStream(LOCAL_FILE_PATH);
@@ -210,12 +218,12 @@ public class FtpesClientTest {
             .hasMessageContaining(REMOTE_FILE_PATH).hasMessageContaining("No retry");
 
         verifyFtpsClientMock_openOk();
-        verify(ftpsClientMock, times(1)).retrieveFile(ArgumentMatchers.eq(REMOTE_FILE_PATH), any());
+        verify(ftpsClientMock, times(1)).retrieveFile(eq(REMOTE_FILE_PATH), any());
         verifyNoMoreInteractions(ftpsClientMock);
     }
 
     @Test
-    public void collectFile_shouldFail_ioexception() throws Exception {
+    void collectFile_shouldFail_ioexception() throws Exception {
         doReturn(keyManagerMock).when(clientUnderTestSpy).getKeyManager(Paths.get(FTP_KEY_PATH), FTP_KEY_PASSWORD_PATH);
         doReturn(trustManagerMock).when(clientUnderTestSpy).getTrustManager(TRUSTED_CA_PATH, TRUSTED_CA_PASSWORD);
         doReturn(outputStreamMock).when(clientUnderTestSpy).createOutputStream(LOCAL_FILE_PATH);
@@ -230,7 +238,33 @@ public class FtpesClientTest {
             .hasMessage("Could not fetch file: java.io.IOException: problem");
 
         verifyFtpsClientMock_openOk();
-        verify(ftpsClientMock, times(1)).retrieveFile(ArgumentMatchers.eq(REMOTE_FILE_PATH), any());
+        verify(ftpsClientMock, times(1)).retrieveFile(eq(REMOTE_FILE_PATH), any());
         verifyNoMoreInteractions(ftpsClientMock);
     }
+
+    @Test
+    void testCreateInputStream() throws IOException, URISyntaxException {
+        Path trustCaPath = Paths.get(getClass().getResource("/org/oran/datafile/datastore/file.txt").toURI());
+        InputStream actualCreateInputStreamResult = clientUnderTestSpy.createInputStream(trustCaPath);
+        assertNotNull(actualCreateInputStreamResult);
+    }
+
+    @Test
+    void testCreateOutputStream() throws IOException, URISyntaxException, DatafileTaskException {
+        Path trustCaPath = Paths.get(getClass().getResource("/org/oran/datafile/datastore/file.txt").toURI());
+        assertThrows(NonRetryableDatafileTaskException.class, () -> clientUnderTestSpy.createOutputStream(trustCaPath));
+    }
+
+    @Test
+    void testGetTrustManager2() throws IOException, KeyStoreException, NoSuchAlgorithmException, CertificateException {
+        FileServerData fileServerData = FileServerData.builder()
+            .password("password123")
+            .port(8080)
+            .serverAddress("42 Main St")
+            .userId("42")
+            .build();
+        assertNull((new FtpesClient(fileServerData, Paths.get(System.getProperty("java.io.tmpdir"), "test.txt"),
+            "Key Cert Password Path", Paths.get(System.getProperty("java.io.tmpdir"), "test.txt"),
+            "Trusted Ca Password Path")).getTrustManager(null, "foo"));
+    }
 }
index bbce5ef..d8400bf 100644 (file)
@@ -26,10 +26,10 @@ import org.junit.jupiter.api.Test;
 import org.junit.jupiter.api.io.TempDir;
 import org.oran.datafile.configuration.SftpConfig;
 
-public class SftpClientSettingsTest {
+class SftpClientSettingsTest {
 
     @Test
-    public void shouldUseFtpStrictHostChecking(@TempDir Path tempDir) throws Exception {
+    void shouldUseFtpStrictHostChecking(@TempDir Path tempDir) throws Exception {
         File knowHostsFile = new File(tempDir.toFile(), "known_hosts");
         knowHostsFile.createNewFile();
 
@@ -40,7 +40,7 @@ public class SftpClientSettingsTest {
     }
 
     @Test
-    public void shouldNotUseFtpStrictHostChecking_whenFileDoesNotExist() {
+    void shouldNotUseFtpStrictHostChecking_whenFileDoesNotExist() {
         SftpConfig config = createSampleSftpConfigWithStrictHostChecking("unknown_file");
         SftpClientSettings sftpClient = new SftpClientSettings(config);
 
@@ -49,7 +49,7 @@ public class SftpClientSettingsTest {
     }
 
     @Test
-    public void shouldNotUseFtpStrictHostChecking_whenExplicitlySwitchedOff() {
+    void shouldNotUseFtpStrictHostChecking_whenExplicitlySwitchedOff() {
         SftpClientSettings sftpClient = new SftpClientSettings(createSampleSftpConfigNoStrictHostChecking());
         sftpClient.shouldUseStrictHostChecking();
         assertThat(sftpClient.shouldUseStrictHostChecking()).isFalse();
index 5268839..f29989a 100644 (file)
@@ -47,7 +47,7 @@ import org.oran.datafile.exceptions.NonRetryableDatafileTaskException;
 import org.oran.datafile.model.FileServerData;
 
 @ExtendWith(MockitoExtension.class)
-public class SftpClientTest {
+class SftpClientTest {
 
     private static final String HOST = "127.0.0.1";
     private static final int SFTP_PORT = 1021;
@@ -64,7 +64,7 @@ public class SftpClientTest {
     private ChannelSftp channelMock;
 
     @Test
-    public void openWithPort_success() throws Exception {
+    void openWithPort_success() throws Exception {
         FileServerData expectedFileServerData = FileServerData.builder() //
             .serverAddress(HOST) //
             .userId(USERNAME) //
@@ -92,7 +92,7 @@ public class SftpClientTest {
     }
 
     @Test
-    public void openWithoutPort_success() throws Exception {
+    void openWithoutPort_success() throws Exception {
         FileServerData expectedFileServerData = FileServerData.builder() //
             .serverAddress(HOST) //
             .userId(USERNAME) //
@@ -112,7 +112,7 @@ public class SftpClientTest {
     }
 
     @Test
-    public void open_throwsExceptionWithRetry() throws Exception {
+    void open_throwsExceptionWithRetry() throws Exception {
         FileServerData expectedFileServerData = FileServerData.builder() //
             .serverAddress(HOST) //
             .userId(USERNAME) //
@@ -130,7 +130,7 @@ public class SftpClientTest {
     }
 
     @Test
-    public void openAuthFail_throwsExceptionWithoutRetry() throws Exception {
+    void openAuthFail_throwsExceptionWithoutRetry() throws Exception {
         FileServerData expectedFileServerData = FileServerData.builder() //
             .serverAddress(HOST) //
             .userId(USERNAME) //
@@ -152,7 +152,7 @@ public class SftpClientTest {
 
     @SuppressWarnings("resource")
     @Test
-    public void collectFile_success() throws DatafileTaskException, SftpException {
+    void collectFile_success() throws DatafileTaskException, SftpException {
         FileServerData expectedFileServerData = FileServerData.builder() //
             .serverAddress(HOST) //
             .userId(USERNAME) //
@@ -170,7 +170,7 @@ public class SftpClientTest {
     }
 
     @Test
-    public void collectFile_throwsExceptionWithRetry() throws SftpException {
+    void collectFile_throwsExceptionWithRetry() throws SftpException {
         FileServerData expectedFileServerData = FileServerData.builder() //
             .serverAddress(HOST) //
             .userId(USERNAME) //
@@ -190,7 +190,7 @@ public class SftpClientTest {
     }
 
     @Test
-    public void collectFileFileMissing_throwsExceptionWithoutRetry() throws SftpException {
+    void collectFileFileMissing_throwsExceptionWithoutRetry() throws SftpException {
         FileServerData expectedFileServerData = FileServerData.builder() //
             .serverAddress(HOST) //
             .userId(USERNAME) //
@@ -211,7 +211,7 @@ public class SftpClientTest {
     }
 
     @Test
-    public void close_success() {
+    void close_success() {
         SftpClient sftpClient = new SftpClient(null, createSampleSftpClientSettings());
 
         sftpClient.session = sessionMock;
index af77349..615a76e 100644 (file)
@@ -25,7 +25,7 @@ import org.mockito.junit.jupiter.MockitoExtension;
 import org.oran.datafile.exceptions.DatafileTaskException;
 
 @ExtendWith(MockitoExtension.class)
-public class HttpsClientConnectionManagerUtilTest {
+class HttpsClientConnectionManagerUtilTest {
 
     private static final String KEY_PATH = "src/test/resources/keystore.p12";
     private static final String KEY_PASSWORD = "src/test/resources/keystore.pass";
@@ -34,19 +34,19 @@ public class HttpsClientConnectionManagerUtilTest {
     private static final String TRUSTED_CA_PASSWORD = "src/test/resources/trust.pass";
 
     @Test
-    public void emptyManager_shouldThrowException() {
+    void emptyManager_shouldThrowException() {
         assertThrows(DatafileTaskException.class, () -> HttpsClientConnectionManagerUtil.instance());
     }
 
     @Test
-    public void creatingManager_successfulCase() throws Exception {
+    void creatingManager_successfulCase() throws Exception {
         HttpsClientConnectionManagerUtil.setupOrUpdate(KEY_PATH, KEY_PASSWORD, TRUSTED_CA_PATH, TRUSTED_CA_PASSWORD, //
             true);
         assertNotNull(HttpsClientConnectionManagerUtil.instance());
     }
 
     @Test
-    public void creatingManager_improperSecretShouldThrowException() {
+    void creatingManager_improperSecretShouldThrowException() {
         assertThrows(DatafileTaskException.class, () -> HttpsClientConnectionManagerUtil.setupOrUpdate(KEY_PATH, //
             KEY_IMPROPER_PASSWORD, TRUSTED_CA_PATH, TRUSTED_CA_PASSWORD, true));
         assertThrows(DatafileTaskException.class, () -> HttpsClientConnectionManagerUtil.instance());
diff --git a/datafilecollector/src/test/java/org/oran/datafile/model/CountersTest.java b/datafilecollector/src/test/java/org/oran/datafile/model/CountersTest.java
new file mode 100644 (file)
index 0000000..d2e8b37
--- /dev/null
@@ -0,0 +1,71 @@
+/*-
+ * ============LICENSE_START=======================================================
+ *  Copyright (C) 2019-2023 Nordix Foundation.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ * SPDX-License-Identifier: Apache-2.0
+ * ============LICENSE_END=========================================================
+ */
+
+package org.oran.datafile.model;
+
+import static org.junit.jupiter.api.Assertions.assertEquals;
+
+import org.junit.jupiter.api.Test;
+
+class CountersTest {
+    @Test
+    void testIncNoOfReceivedEvents() {
+        Counters counters = new Counters();
+        counters.incNoOfReceivedEvents();
+        assertEquals(1L, counters.getTotalReceivedEvents());
+    }
+
+    @Test
+    void testIncNoOfCollectedFiles() {
+        Counters counters = new Counters();
+        counters.incNoOfCollectedFiles();
+        counters.incNoOfFailedFtp();
+        counters.incNoOfFailedFtpAttempts();
+        counters.incNoOfFailedHttp();
+        counters.incNoOfFailedHttpAttempts();
+        counters.incNoOfFailedPublish();
+        counters.incNoOfFailedPublishAttempts();
+        String actualToStringResult = counters.toString();
+        long actualNoOfCollectedFiles = counters.getNoOfCollectedFiles();
+        long actualNoOfFailedFtp = counters.getNoOfFailedFtp();
+        long actualNoOfFailedFtpAttempts = counters.getNoOfFailedFtpAttempts();
+        long actualNoOfFailedHttp = counters.getNoOfFailedHttp();
+        long actualNoOfFailedHttpAttempts = counters.getNoOfFailedHttpAttempts();
+        long actualNoOfFailedPublish = counters.getNoOfFailedPublish();
+        long actualNoOfFailedPublishAttempts = counters.getNoOfFailedPublishAttempts();
+        long actualTotalPublishedFiles = counters.getTotalPublishedFiles();
+        assertEquals(1L, actualNoOfCollectedFiles);
+        assertEquals(1L, actualNoOfFailedFtp);
+        assertEquals(1L, actualNoOfFailedFtpAttempts);
+        assertEquals(1L, actualNoOfFailedHttp);
+        assertEquals(1L, actualNoOfFailedHttpAttempts);
+        assertEquals(1L, actualNoOfFailedPublish);
+        assertEquals(1L, actualNoOfFailedPublishAttempts);
+        assertEquals(0L, actualTotalPublishedFiles);
+        assertEquals(0L, counters.getTotalReceivedEvents());
+    }
+    @Test
+    void testIncTotalPublishedFiles() {
+        Counters counters = new Counters();
+        counters.incTotalPublishedFiles();
+        assertEquals(1L, counters.getTotalPublishedFiles());
+    }
+}
+
diff --git a/datafilecollector/src/test/java/org/oran/datafile/model/FileDataTest.java b/datafilecollector/src/test/java/org/oran/datafile/model/FileDataTest.java
new file mode 100644 (file)
index 0000000..f52cfcc
--- /dev/null
@@ -0,0 +1,256 @@
+/*-
+ * ============LICENSE_START=======================================================
+ *  Copyright (C) 2019-2023 Nordix Foundation.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ * SPDX-License-Identifier: Apache-2.0
+ * ============LICENSE_END=========================================================
+ */
+
+package org.oran.datafile.model;
+
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertFalse;
+import static org.junit.jupiter.api.Assertions.assertThrows;
+import static org.junit.jupiter.api.Assertions.assertTrue;
+
+import java.nio.file.Path;
+import java.nio.file.Paths;
+import java.util.Collections;
+import org.junit.jupiter.api.Test;
+import org.oran.datafile.configuration.AppConfig;
+import org.oran.datafile.exceptions.DatafileTaskException;
+
+class FileDataTest {
+    @Test
+    void testSchemeGetSchemeFromString() throws DatafileTaskException {
+        assertThrows(DatafileTaskException.class, () -> FileData.Scheme.getSchemeFromString("Scheme String"));
+        assertEquals(FileData.Scheme.FTPES, FileData.Scheme.getSchemeFromString("FTPES"));
+        assertEquals(FileData.Scheme.SFTP, FileData.Scheme.getSchemeFromString("SFTP"));
+        assertEquals(FileData.Scheme.HTTP, FileData.Scheme.getSchemeFromString("HTTP"));
+        assertEquals(FileData.Scheme.HTTPS, FileData.Scheme.getSchemeFromString("HTTPS"));
+    }
+
+    @Test
+    void testSchemeIsFtpScheme() {
+        assertTrue(FileData.Scheme.isFtpScheme(FileData.Scheme.FTPES));
+        assertTrue(FileData.Scheme.isFtpScheme(FileData.Scheme.SFTP));
+        assertFalse(FileData.Scheme.isFtpScheme(FileData.Scheme.HTTP));
+        assertFalse(FileData.Scheme.isFtpScheme(FileData.Scheme.HTTPS));
+    }
+
+    @Test
+    void testSourceName() {
+        FileReadyMessage.MessageMetaData metaData = new FileReadyMessage.MessageMetaData(
+            "sourceName", "otherField1", "otherField2", "otherField3", 42, "field5", "field6",
+            "field7", "field8", 123456789L, 987654321L, "field11", "field12"
+        );
+        FileData fileData = FileData.builder().messageMetaData(metaData).build();
+
+        assertEquals("field8", fileData.sourceName());
+    }
+
+    @Test
+    void testName() {
+        FileReadyMessage.MessageMetaData metaData = new FileReadyMessage.MessageMetaData(
+            "sourceName", "otherField1", "otherField2", "otherField3", 42, "field5", "field6",
+            "field7", "field8", 123456789L, 987654321L, "field11", "field12"
+        );
+        FileData fileData = FileData.builder().messageMetaData(metaData).build();
+
+        FileReadyMessage.FileInfo fileInfo = new FileReadyMessage.FileInfo("name", "location", "hashMapField", "");
+        FileReadyMessage.ArrayOfNamedHashMap arrayOfNamedHashMap = new FileReadyMessage.ArrayOfNamedHashMap("someString", fileInfo);
+        fileData.fileInfo = arrayOfNamedHashMap;
+
+        assertEquals("field8/someString", fileData.name());
+    }
+
+    @Test
+    void testRemoteFilePath() {
+        FileReadyMessage.MessageMetaData metaData = new FileReadyMessage.MessageMetaData(
+            "sourceName", "otherField1", "otherField2", "otherField3", 42, "field5", "field6",
+            "field7", "field8", 123456789L, 987654321L, "field11", "field12"
+        );
+        FileData fileData = FileData.builder().messageMetaData(metaData).build();
+
+        FileReadyMessage.FileInfo fileInfo = new FileReadyMessage.FileInfo("name", "ftp://example.com/remote/file.txt", "hashMapField", "");
+        FileReadyMessage.ArrayOfNamedHashMap arrayOfNamedHashMap = new FileReadyMessage.ArrayOfNamedHashMap("someString", fileInfo);
+        fileData.fileInfo = arrayOfNamedHashMap;
+
+        assertEquals("/remote/file.txt", fileData.remoteFilePath());
+    }
+
+    @Test
+    void testScheme() {
+        FileReadyMessage.MessageMetaData metaData = new FileReadyMessage.MessageMetaData(
+            "sourceName", "otherField1", "otherField2", "otherField3", 42, "field5", "field6",
+            "field7", "field8", 123456789L, 987654321L, "field11", "field12"
+        );
+        FileData fileData = FileData.builder().messageMetaData(metaData).build();
+
+        FileReadyMessage.FileInfo fileInfo = new FileReadyMessage.FileInfo("name", "http://example.com/file.txt", "hashMapField", "");
+        FileReadyMessage.ArrayOfNamedHashMap arrayOfNamedHashMap = new FileReadyMessage.ArrayOfNamedHashMap("someString", fileInfo);
+        fileData.fileInfo = arrayOfNamedHashMap;
+
+        assertEquals(FileData.Scheme.HTTP, fileData.scheme());
+    }
+
+    @Test
+    void testGetLocalFilePath() {
+        AppConfig config = new AppConfig();
+        config.setCollectedFilesPath("/local/path");
+        FileReadyMessage.MessageMetaData metaData = new FileReadyMessage.MessageMetaData(
+            "sourceName", "otherField1", "otherField2", "otherField3", 42, "field5", "field6",
+            "field7", "field8", 123456789L, 987654321L, "field11", "field12"
+        );
+        FileData fileData = FileData.builder().messageMetaData(metaData).build();
+
+        FileReadyMessage.FileInfo fileInfo = new FileReadyMessage.FileInfo("name", "http://example.com/file.txt", "hashMapField", "");
+        FileReadyMessage.ArrayOfNamedHashMap arrayOfNamedHashMap = new FileReadyMessage.ArrayOfNamedHashMap("someString", fileInfo);
+        fileData.fileInfo = arrayOfNamedHashMap;
+
+        Path expectedPath = Paths.get("/local/path/field8/someString");
+        Path actualPath = fileData.getLocalFilePath(config);
+        assertEquals(expectedPath, actualPath);
+    }
+
+    @Test
+    void testFileServerDataWithUserInfo() throws Exception {
+        // Arrange
+        AppConfig config = new AppConfig();
+        config.setCollectedFilesPath("/local/path");
+        FileReadyMessage.MessageMetaData metaData = new FileReadyMessage.MessageMetaData(
+            "sourceName", "otherField1", "otherField2", "otherField3", 42, "field5", "field6",
+            "field7", "field8", 123456789L, 987654321L, "field11", "field12"
+        );
+        FileData fileData = FileData.builder().messageMetaData(metaData).build();
+
+        FileReadyMessage.FileInfo fileInfo = new FileReadyMessage.FileInfo("name", "http://username:password@example.com:8080/path?query1=value1&query2=value2", "hashMapField", "");
+        FileReadyMessage.ArrayOfNamedHashMap arrayOfNamedHashMap = new FileReadyMessage.ArrayOfNamedHashMap("someString", fileInfo);
+        fileData.fileInfo = arrayOfNamedHashMap;
+
+        // Act
+        FileServerData result = fileData.fileServerData();
+
+        // Assert
+        assertEquals("username", result.userId);
+        assertEquals("password", result.password);
+    }
+
+    @Test
+    void testFileServerDataWithFragment() throws Exception {
+        // Arrange
+        AppConfig config = new AppConfig();
+        config.setCollectedFilesPath("/local/path");
+        FileReadyMessage.MessageMetaData metaData = new FileReadyMessage.MessageMetaData(
+            "sourceName", "otherField1", "otherField2", "otherField3", 42, "field5", "field6",
+            "field7", "field8", 123456789L, 987654321L, "field11", "field12"
+        );
+        FileData fileData = FileData.builder().messageMetaData(metaData).build();
+
+        FileReadyMessage.FileInfo fileInfo = new FileReadyMessage.FileInfo("name", "http://username@example.com:8080/path?query1=value1&query2=value2#rawFragment", "hashMapField", "");
+        FileReadyMessage.ArrayOfNamedHashMap arrayOfNamedHashMap = new FileReadyMessage.ArrayOfNamedHashMap("someString", fileInfo);
+        fileData.fileInfo = arrayOfNamedHashMap;
+
+        // Act
+        FileServerData result = fileData.fileServerData();
+
+        // Assert
+        assertEquals("rawFragment", result.uriRawFragment);
+    }
+
+    @Test
+    void testFileServerDataWithoutUserInfo() throws Exception {
+        // Arrange
+        AppConfig config = new AppConfig();
+        config.setCollectedFilesPath("/local/path");
+        FileReadyMessage.MessageMetaData metaData = new FileReadyMessage.MessageMetaData(
+            "sourceName", "otherField1", "otherField2", "otherField3", 42, "field5", "field6",
+            "field7", "field8", 123456789L, 987654321L, "field11", "field12"
+        );
+        FileData fileData = FileData.builder().messageMetaData(metaData).build();
+
+        FileReadyMessage.FileInfo fileInfo = new FileReadyMessage.FileInfo("name", "http://example.com:8080/path?query1=value1&query2=value2", "hashMapField", "");
+        FileReadyMessage.ArrayOfNamedHashMap arrayOfNamedHashMap = new FileReadyMessage.ArrayOfNamedHashMap("someString", fileInfo);
+        fileData.fileInfo = arrayOfNamedHashMap;
+
+        FileServerData result = fileData.fileServerData();
+        assertEquals("example.com", result.getServerAddress());
+    }
+
+    @Test
+    void testInvalidScheme() throws Exception {
+        // Arrange
+        AppConfig config = new AppConfig();
+        config.setCollectedFilesPath("/local/path");
+        FileReadyMessage.MessageMetaData metaData = new FileReadyMessage.MessageMetaData(
+            "sourceName", "otherField1", "otherField2", "otherField3", 42, "field5", "field6",
+            "field7", "field8", 123456789L, 987654321L, "field11", "field12"
+        );
+        FileData fileData = FileData.builder().messageMetaData(metaData).build();
+
+        FileReadyMessage.FileInfo fileInfo = new FileReadyMessage.FileInfo("name", "abcxyz://example.com:8080/path?query1=value1&query2=value2", "hashMapField", "");
+        FileReadyMessage.ArrayOfNamedHashMap arrayOfNamedHashMap = new FileReadyMessage.ArrayOfNamedHashMap("someString", fileInfo);
+        fileData.fileInfo = arrayOfNamedHashMap;
+
+        // Act
+        FileData.Scheme result = fileData.scheme();
+        assertEquals("FTPES", result.name());
+    }
+
+    @Test
+    void testCreateFileData(){
+
+        FileReadyMessage.MessageMetaData metaData = new FileReadyMessage.MessageMetaData(
+            "sourceName", "otherField1", "otherField2", "otherField3", 42, "field5", "field6",
+            "field7", "field8", 123456789L, 987654321L, "field11", "field12"
+        );
+
+        FileReadyMessage fileReadyMessage = FileReadyMessage.builder()
+            .event(
+                FileReadyMessage.Event.builder()
+                    .commonEventHeader(metaData)
+                    .notificationFields(
+                        FileReadyMessage.NotificationFields.builder()
+                            .notificationFieldsVersion("1.0")
+                            .changeType("Add")
+                            .changeIdentifier("Change123")
+                            .arrayOfNamedHashMap(
+                                Collections.singletonList(
+                                    FileReadyMessage.ArrayOfNamedHashMap.builder()
+                                        .name("File1")
+                                        .hashMap(
+                                            FileReadyMessage.FileInfo.builder()
+                                                .fileFormatType("Text")
+                                                .location("ftp://example.com/files/file.txt")
+                                                .fileFormatVersion("1.0")
+                                                .compression("None")
+                                                .build()
+                                        )
+                                        .build()
+                                )
+                            )
+                            .build()
+                    )
+                    .build()
+            )
+            .build();
+
+        Iterable<FileData> fileDataIterable = FileData.createFileData(fileReadyMessage);
+        FileReadyMessage.MessageMetaData messageMetaData = fileDataIterable.iterator().next().messageMetaData;
+
+        assertEquals("field8", messageMetaData.sourceName);
+    }
+}
+
diff --git a/datafilecollector/src/test/java/org/oran/datafile/model/FilePublishInformationTest.java b/datafilecollector/src/test/java/org/oran/datafile/model/FilePublishInformationTest.java
new file mode 100644 (file)
index 0000000..58fe722
--- /dev/null
@@ -0,0 +1,907 @@
+/*-
+ * ============LICENSE_START=======================================================
+ *  Copyright (C) 2019-2023 Nordix Foundation.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ * SPDX-License-Identifier: Apache-2.0
+ * ============LICENSE_END=========================================================
+ */
+
+package org.oran.datafile.model;
+
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertFalse;
+import static org.junit.jupiter.api.Assertions.assertNotEquals;
+import static org.junit.jupiter.api.Assertions.assertTrue;
+
+import org.junit.jupiter.api.Test;
+
+class FilePublishInformationTest {
+    @Test
+    void testCanEqual() {
+        assertFalse(
+            (new FilePublishInformation("Product Name", "Vendor Name", 1L, "Source Name", 1L, "UTC", "Compression",
+                "File Format Type", "1.0.2", "Name", "42", "s3://bucket-name/object-key")).canEqual("Other"));
+    }
+
+    @Test
+    void testCanEqual2() {
+        FilePublishInformation buildResult = FilePublishInformation.builder()
+            .changeIdentifier("42")
+            .compression("Compression")
+            .fileFormatType("File Format Type")
+            .fileFormatVersion("1.0.2")
+            .lastEpochMicrosec(1L)
+            .name("Name")
+            .objectStoreBucket("s3://bucket-name/object-key")
+            .productName("Product Name")
+            .sourceName("Source Name")
+            .startEpochMicrosec(1L)
+            .timeZoneOffset("UTC")
+            .vendorName("Vendor Name")
+            .build();
+        FilePublishInformation buildResult2 = FilePublishInformation.builder()
+            .changeIdentifier("42")
+            .compression("Compression")
+            .fileFormatType("File Format Type")
+            .fileFormatVersion("1.0.2")
+            .lastEpochMicrosec(1L)
+            .name("Name")
+            .objectStoreBucket("s3://bucket-name/object-key")
+            .productName("Product Name")
+            .sourceName("Source Name")
+            .startEpochMicrosec(1L)
+            .timeZoneOffset("UTC")
+            .vendorName("Vendor Name")
+            .build();
+        assertTrue(buildResult.canEqual(buildResult2));
+    }
+
+    @Test
+    void testConstructor() {
+        FilePublishInformation actualFilePublishInformation =
+            new FilePublishInformation("Product Name", "Vendor Name", 1L,
+                "Source Name", 1L, "UTC", "Compression", "File Format Type", "1.0.2", "Name", "42",
+                "s3://bucket-name/object-key");
+
+        assertEquals("Name", actualFilePublishInformation.getName());
+        assertEquals("Vendor Name", actualFilePublishInformation.vendorName);
+        assertEquals("UTC", actualFilePublishInformation.timeZoneOffset);
+        assertEquals(1L, actualFilePublishInformation.startEpochMicrosec);
+        assertEquals("Product Name", actualFilePublishInformation.productName);
+        assertEquals("s3://bucket-name/object-key", actualFilePublishInformation.objectStoreBucket);
+        assertEquals(1L, actualFilePublishInformation.lastEpochMicrosec);
+        assertEquals("1.0.2", actualFilePublishInformation.fileFormatVersion);
+        assertEquals("File Format Type", actualFilePublishInformation.fileFormatType);
+        assertEquals("Compression", actualFilePublishInformation.compression);
+        assertEquals("42", actualFilePublishInformation.changeIdentifier);
+        assertEquals("Source Name", actualFilePublishInformation.getSourceName());
+    }
+
+    @Test
+    void testEquals() {
+        FilePublishInformation buildResult = FilePublishInformation.builder()
+            .changeIdentifier("42")
+            .compression("Compression")
+            .fileFormatType("File Format Type")
+            .fileFormatVersion("1.0.2")
+            .lastEpochMicrosec(1L)
+            .name("Name")
+            .objectStoreBucket("s3://bucket-name/object-key")
+            .productName("Product Name")
+            .sourceName("Source Name")
+            .startEpochMicrosec(1L)
+            .timeZoneOffset("UTC")
+            .vendorName("Vendor Name")
+            .build();
+        assertNotEquals(null, buildResult);
+    }
+    @Test
+    void testEquals2() {
+        FilePublishInformation buildResult = FilePublishInformation.builder()
+            .changeIdentifier("42")
+            .compression("Compression")
+            .fileFormatType("File Format Type")
+            .fileFormatVersion("1.0.2")
+            .lastEpochMicrosec(1L)
+            .name("Name")
+            .objectStoreBucket("s3://bucket-name/object-key")
+            .productName("Product Name")
+            .sourceName("Source Name")
+            .startEpochMicrosec(1L)
+            .timeZoneOffset("UTC")
+            .vendorName("Vendor Name")
+            .build();
+        assertNotEquals("Different type to FilePublishInformation", buildResult );
+    }
+    @Test
+    void testEquals3() {
+        FilePublishInformation buildResult = FilePublishInformation.builder()
+            .changeIdentifier("42")
+            .compression("Compression")
+            .fileFormatType("File Format Type")
+            .fileFormatVersion("1.0.2")
+            .lastEpochMicrosec(1L)
+            .name("Name")
+            .objectStoreBucket("s3://bucket-name/object-key")
+            .productName("Product Name")
+            .sourceName("Source Name")
+            .startEpochMicrosec(1L)
+            .timeZoneOffset("UTC")
+            .vendorName("Vendor Name")
+            .build();
+        assertEquals(buildResult, buildResult);
+        int expectedHashCodeResult = buildResult.hashCode();
+        assertEquals(expectedHashCodeResult, buildResult.hashCode());
+    }
+    @Test
+    void testEquals4() {
+        FilePublishInformation buildResult = FilePublishInformation.builder()
+            .changeIdentifier("42")
+            .compression("Compression")
+            .fileFormatType("File Format Type")
+            .fileFormatVersion("1.0.2")
+            .lastEpochMicrosec(1L)
+            .name("Name")
+            .objectStoreBucket("s3://bucket-name/object-key")
+            .productName("Product Name")
+            .sourceName("Source Name")
+            .startEpochMicrosec(1L)
+            .timeZoneOffset("UTC")
+            .vendorName("Vendor Name")
+            .build();
+        FilePublishInformation buildResult2 = FilePublishInformation.builder()
+            .changeIdentifier("42")
+            .compression("Compression")
+            .fileFormatType("File Format Type")
+            .fileFormatVersion("1.0.2")
+            .lastEpochMicrosec(1L)
+            .name("Name")
+            .objectStoreBucket("s3://bucket-name/object-key")
+            .productName("Product Name")
+            .sourceName("Source Name")
+            .startEpochMicrosec(1L)
+            .timeZoneOffset("UTC")
+            .vendorName("Vendor Name")
+            .build();
+        assertEquals(buildResult, buildResult2);
+        int expectedHashCodeResult = buildResult.hashCode();
+        assertEquals(expectedHashCodeResult, buildResult2.hashCode());
+    }
+    @Test
+    void testEquals5() {
+        FilePublishInformation buildResult = FilePublishInformation.builder()
+            .changeIdentifier("Product Name")
+            .compression("Compression")
+            .fileFormatType("File Format Type")
+            .fileFormatVersion("1.0.2")
+            .lastEpochMicrosec(1L)
+            .name("Name")
+            .objectStoreBucket("s3://bucket-name/object-key")
+            .productName("Product Name")
+            .sourceName("Source Name")
+            .startEpochMicrosec(1L)
+            .timeZoneOffset("UTC")
+            .vendorName("Vendor Name")
+            .build();
+        FilePublishInformation buildResult2 = FilePublishInformation.builder()
+            .changeIdentifier("42")
+            .compression("Compression")
+            .fileFormatType("File Format Type")
+            .fileFormatVersion("1.0.2")
+            .lastEpochMicrosec(1L)
+            .name("Name")
+            .objectStoreBucket("s3://bucket-name/object-key")
+            .productName("Product Name")
+            .sourceName("Source Name")
+            .startEpochMicrosec(1L)
+            .timeZoneOffset("UTC")
+            .vendorName("Vendor Name")
+            .build();
+        assertNotEquals(buildResult, buildResult2);
+    }
+    @Test
+    void testEquals6() {
+        FilePublishInformation buildResult = FilePublishInformation.builder()
+            .changeIdentifier(null)
+            .compression("Compression")
+            .fileFormatType("File Format Type")
+            .fileFormatVersion("1.0.2")
+            .lastEpochMicrosec(1L)
+            .name("Name")
+            .objectStoreBucket("s3://bucket-name/object-key")
+            .productName("Product Name")
+            .sourceName("Source Name")
+            .startEpochMicrosec(1L)
+            .timeZoneOffset("UTC")
+            .vendorName("Vendor Name")
+            .build();
+        FilePublishInformation buildResult2 = FilePublishInformation.builder()
+            .changeIdentifier("42")
+            .compression("Compression")
+            .fileFormatType("File Format Type")
+            .fileFormatVersion("1.0.2")
+            .lastEpochMicrosec(1L)
+            .name("Name")
+            .objectStoreBucket("s3://bucket-name/object-key")
+            .productName("Product Name")
+            .sourceName("Source Name")
+            .startEpochMicrosec(1L)
+            .timeZoneOffset("UTC")
+            .vendorName("Vendor Name")
+            .build();
+        assertNotEquals(buildResult, buildResult2);
+    }
+    @Test
+    void testEquals7() {
+        FilePublishInformation buildResult = FilePublishInformation.builder()
+            .changeIdentifier("42")
+            .compression("Product Name")
+            .fileFormatType("File Format Type")
+            .fileFormatVersion("1.0.2")
+            .lastEpochMicrosec(1L)
+            .name("Name")
+            .objectStoreBucket("s3://bucket-name/object-key")
+            .productName("Product Name")
+            .sourceName("Source Name")
+            .startEpochMicrosec(1L)
+            .timeZoneOffset("UTC")
+            .vendorName("Vendor Name")
+            .build();
+        FilePublishInformation buildResult2 = FilePublishInformation.builder()
+            .changeIdentifier("42")
+            .compression("Compression")
+            .fileFormatType("File Format Type")
+            .fileFormatVersion("1.0.2")
+            .lastEpochMicrosec(1L)
+            .name("Name")
+            .objectStoreBucket("s3://bucket-name/object-key")
+            .productName("Product Name")
+            .sourceName("Source Name")
+            .startEpochMicrosec(1L)
+            .timeZoneOffset("UTC")
+            .vendorName("Vendor Name")
+            .build();
+        assertNotEquals(buildResult, buildResult2);
+    }
+    @Test
+    void testEquals8() {
+        FilePublishInformation buildResult = FilePublishInformation.builder()
+            .changeIdentifier("42")
+            .compression(null)
+            .fileFormatType("File Format Type")
+            .fileFormatVersion("1.0.2")
+            .lastEpochMicrosec(1L)
+            .name("Name")
+            .objectStoreBucket("s3://bucket-name/object-key")
+            .productName("Product Name")
+            .sourceName("Source Name")
+            .startEpochMicrosec(1L)
+            .timeZoneOffset("UTC")
+            .vendorName("Vendor Name")
+            .build();
+        FilePublishInformation buildResult2 = FilePublishInformation.builder()
+            .changeIdentifier("42")
+            .compression("Compression")
+            .fileFormatType("File Format Type")
+            .fileFormatVersion("1.0.2")
+            .lastEpochMicrosec(1L)
+            .name("Name")
+            .objectStoreBucket("s3://bucket-name/object-key")
+            .productName("Product Name")
+            .sourceName("Source Name")
+            .startEpochMicrosec(1L)
+            .timeZoneOffset("UTC")
+            .vendorName("Vendor Name")
+            .build();
+        assertNotEquals(buildResult, buildResult2);
+    }
+    @Test
+    void testEquals9() {
+        FilePublishInformation buildResult = FilePublishInformation.builder()
+            .changeIdentifier("42")
+            .compression("Compression")
+            .fileFormatType("Product Name")
+            .fileFormatVersion("1.0.2")
+            .lastEpochMicrosec(1L)
+            .name("Name")
+            .objectStoreBucket("s3://bucket-name/object-key")
+            .productName("Product Name")
+            .sourceName("Source Name")
+            .startEpochMicrosec(1L)
+            .timeZoneOffset("UTC")
+            .vendorName("Vendor Name")
+            .build();
+        FilePublishInformation buildResult2 = FilePublishInformation.builder()
+            .changeIdentifier("42")
+            .compression("Compression")
+            .fileFormatType("File Format Type")
+            .fileFormatVersion("1.0.2")
+            .lastEpochMicrosec(1L)
+            .name("Name")
+            .objectStoreBucket("s3://bucket-name/object-key")
+            .productName("Product Name")
+            .sourceName("Source Name")
+            .startEpochMicrosec(1L)
+            .timeZoneOffset("UTC")
+            .vendorName("Vendor Name")
+            .build();
+        assertNotEquals(buildResult, buildResult2);
+    }
+    @Test
+    void testEquals10() {
+        FilePublishInformation buildResult = FilePublishInformation.builder()
+            .changeIdentifier("42")
+            .compression("Compression")
+            .fileFormatType(null)
+            .fileFormatVersion("1.0.2")
+            .lastEpochMicrosec(1L)
+            .name("Name")
+            .objectStoreBucket("s3://bucket-name/object-key")
+            .productName("Product Name")
+            .sourceName("Source Name")
+            .startEpochMicrosec(1L)
+            .timeZoneOffset("UTC")
+            .vendorName("Vendor Name")
+            .build();
+        FilePublishInformation buildResult2 = FilePublishInformation.builder()
+            .changeIdentifier("42")
+            .compression("Compression")
+            .fileFormatType("File Format Type")
+            .fileFormatVersion("1.0.2")
+            .lastEpochMicrosec(1L)
+            .name("Name")
+            .objectStoreBucket("s3://bucket-name/object-key")
+            .productName("Product Name")
+            .sourceName("Source Name")
+            .startEpochMicrosec(1L)
+            .timeZoneOffset("UTC")
+            .vendorName("Vendor Name")
+            .build();
+        assertNotEquals(buildResult, buildResult2);
+    }
+    @Test
+    void testEquals11() {
+        FilePublishInformation buildResult = FilePublishInformation.builder()
+            .changeIdentifier("42")
+            .compression("Compression")
+            .fileFormatType("File Format Type")
+            .fileFormatVersion("Product Name")
+            .lastEpochMicrosec(1L)
+            .name("Name")
+            .objectStoreBucket("s3://bucket-name/object-key")
+            .productName("Product Name")
+            .sourceName("Source Name")
+            .startEpochMicrosec(1L)
+            .timeZoneOffset("UTC")
+            .vendorName("Vendor Name")
+            .build();
+        FilePublishInformation buildResult2 = FilePublishInformation.builder()
+            .changeIdentifier("42")
+            .compression("Compression")
+            .fileFormatType("File Format Type")
+            .fileFormatVersion("1.0.2")
+            .lastEpochMicrosec(1L)
+            .name("Name")
+            .objectStoreBucket("s3://bucket-name/object-key")
+            .productName("Product Name")
+            .sourceName("Source Name")
+            .startEpochMicrosec(1L)
+            .timeZoneOffset("UTC")
+            .vendorName("Vendor Name")
+            .build();
+        assertNotEquals(buildResult, buildResult2);
+    }
+    @Test
+    void testEquals12() {
+        FilePublishInformation buildResult = FilePublishInformation.builder()
+            .changeIdentifier("42")
+            .compression("Compression")
+            .fileFormatType("File Format Type")
+            .fileFormatVersion(null)
+            .lastEpochMicrosec(1L)
+            .name("Name")
+            .objectStoreBucket("s3://bucket-name/object-key")
+            .productName("Product Name")
+            .sourceName("Source Name")
+            .startEpochMicrosec(1L)
+            .timeZoneOffset("UTC")
+            .vendorName("Vendor Name")
+            .build();
+        FilePublishInformation buildResult2 = FilePublishInformation.builder()
+            .changeIdentifier("42")
+            .compression("Compression")
+            .fileFormatType("File Format Type")
+            .fileFormatVersion("1.0.2")
+            .lastEpochMicrosec(1L)
+            .name("Name")
+            .objectStoreBucket("s3://bucket-name/object-key")
+            .productName("Product Name")
+            .sourceName("Source Name")
+            .startEpochMicrosec(1L)
+            .timeZoneOffset("UTC")
+            .vendorName("Vendor Name")
+            .build();
+        assertNotEquals(buildResult, buildResult2);
+    }
+    @Test
+    void testEquals13() {
+        FilePublishInformation buildResult = FilePublishInformation.builder()
+            .changeIdentifier("42")
+            .compression("Compression")
+            .fileFormatType("File Format Type")
+            .fileFormatVersion("1.0.2")
+            .lastEpochMicrosec(3L)
+            .name("Name")
+            .objectStoreBucket("s3://bucket-name/object-key")
+            .productName("Product Name")
+            .sourceName("Source Name")
+            .startEpochMicrosec(1L)
+            .timeZoneOffset("UTC")
+            .vendorName("Vendor Name")
+            .build();
+        FilePublishInformation buildResult2 = FilePublishInformation.builder()
+            .changeIdentifier("42")
+            .compression("Compression")
+            .fileFormatType("File Format Type")
+            .fileFormatVersion("1.0.2")
+            .lastEpochMicrosec(1L)
+            .name("Name")
+            .objectStoreBucket("s3://bucket-name/object-key")
+            .productName("Product Name")
+            .sourceName("Source Name")
+            .startEpochMicrosec(1L)
+            .timeZoneOffset("UTC")
+            .vendorName("Vendor Name")
+            .build();
+        assertNotEquals(buildResult, buildResult2);
+    }
+    @Test
+    void testEquals14() {
+        FilePublishInformation buildResult = FilePublishInformation.builder()
+            .changeIdentifier("42")
+            .compression("Compression")
+            .fileFormatType("File Format Type")
+            .fileFormatVersion("1.0.2")
+            .lastEpochMicrosec(1L)
+            .name("Product Name")
+            .objectStoreBucket("s3://bucket-name/object-key")
+            .productName("Product Name")
+            .sourceName("Source Name")
+            .startEpochMicrosec(1L)
+            .timeZoneOffset("UTC")
+            .vendorName("Vendor Name")
+            .build();
+        FilePublishInformation buildResult2 = FilePublishInformation.builder()
+            .changeIdentifier("42")
+            .compression("Compression")
+            .fileFormatType("File Format Type")
+            .fileFormatVersion("1.0.2")
+            .lastEpochMicrosec(1L)
+            .name("Name")
+            .objectStoreBucket("s3://bucket-name/object-key")
+            .productName("Product Name")
+            .sourceName("Source Name")
+            .startEpochMicrosec(1L)
+            .timeZoneOffset("UTC")
+            .vendorName("Vendor Name")
+            .build();
+        assertNotEquals(buildResult, buildResult2);
+    }
+    @Test
+    void testEquals15() {
+        FilePublishInformation buildResult = FilePublishInformation.builder()
+            .changeIdentifier("42")
+            .compression("Compression")
+            .fileFormatType("File Format Type")
+            .fileFormatVersion("1.0.2")
+            .lastEpochMicrosec(1L)
+            .name(null)
+            .objectStoreBucket("s3://bucket-name/object-key")
+            .productName("Product Name")
+            .sourceName("Source Name")
+            .startEpochMicrosec(1L)
+            .timeZoneOffset("UTC")
+            .vendorName("Vendor Name")
+            .build();
+        FilePublishInformation buildResult2 = FilePublishInformation.builder()
+            .changeIdentifier("42")
+            .compression("Compression")
+            .fileFormatType("File Format Type")
+            .fileFormatVersion("1.0.2")
+            .lastEpochMicrosec(1L)
+            .name("Name")
+            .objectStoreBucket("s3://bucket-name/object-key")
+            .productName("Product Name")
+            .sourceName("Source Name")
+            .startEpochMicrosec(1L)
+            .timeZoneOffset("UTC")
+            .vendorName("Vendor Name")
+            .build();
+        assertNotEquals(buildResult, buildResult2);
+    }
+    @Test
+    void testEquals16() {
+        FilePublishInformation buildResult = FilePublishInformation.builder()
+            .changeIdentifier("42")
+            .compression("Compression")
+            .fileFormatType("File Format Type")
+            .fileFormatVersion("1.0.2")
+            .lastEpochMicrosec(1L)
+            .name("Name")
+            .objectStoreBucket("Product Name")
+            .productName("Product Name")
+            .sourceName("Source Name")
+            .startEpochMicrosec(1L)
+            .timeZoneOffset("UTC")
+            .vendorName("Vendor Name")
+            .build();
+        FilePublishInformation buildResult2 = FilePublishInformation.builder()
+            .changeIdentifier("42")
+            .compression("Compression")
+            .fileFormatType("File Format Type")
+            .fileFormatVersion("1.0.2")
+            .lastEpochMicrosec(1L)
+            .name("Name")
+            .objectStoreBucket("s3://bucket-name/object-key")
+            .productName("Product Name")
+            .sourceName("Source Name")
+            .startEpochMicrosec(1L)
+            .timeZoneOffset("UTC")
+            .vendorName("Vendor Name")
+            .build();
+        assertNotEquals(buildResult, buildResult2);
+    }
+    @Test
+    void testEquals17() {
+        FilePublishInformation buildResult = FilePublishInformation.builder()
+            .changeIdentifier("42")
+            .compression("Compression")
+            .fileFormatType("File Format Type")
+            .fileFormatVersion("1.0.2")
+            .lastEpochMicrosec(1L)
+            .name("Name")
+            .objectStoreBucket(null)
+            .productName("Product Name")
+            .sourceName("Source Name")
+            .startEpochMicrosec(1L)
+            .timeZoneOffset("UTC")
+            .vendorName("Vendor Name")
+            .build();
+        FilePublishInformation buildResult2 = FilePublishInformation.builder()
+            .changeIdentifier("42")
+            .compression("Compression")
+            .fileFormatType("File Format Type")
+            .fileFormatVersion("1.0.2")
+            .lastEpochMicrosec(1L)
+            .name("Name")
+            .objectStoreBucket("s3://bucket-name/object-key")
+            .productName("Product Name")
+            .sourceName("Source Name")
+            .startEpochMicrosec(1L)
+            .timeZoneOffset("UTC")
+            .vendorName("Vendor Name")
+            .build();
+        assertNotEquals(buildResult, buildResult2);
+    }
+    @Test
+    void testEquals18() {
+        FilePublishInformation buildResult = FilePublishInformation.builder()
+            .changeIdentifier("42")
+            .compression("Compression")
+            .fileFormatType("File Format Type")
+            .fileFormatVersion("1.0.2")
+            .lastEpochMicrosec(1L)
+            .name("Name")
+            .objectStoreBucket("s3://bucket-name/object-key")
+            .productName("Vendor Name")
+            .sourceName("Source Name")
+            .startEpochMicrosec(1L)
+            .timeZoneOffset("UTC")
+            .vendorName("Vendor Name")
+            .build();
+        FilePublishInformation buildResult2 = FilePublishInformation.builder()
+            .changeIdentifier("42")
+            .compression("Compression")
+            .fileFormatType("File Format Type")
+            .fileFormatVersion("1.0.2")
+            .lastEpochMicrosec(1L)
+            .name("Name")
+            .objectStoreBucket("s3://bucket-name/object-key")
+            .productName("Product Name")
+            .sourceName("Source Name")
+            .startEpochMicrosec(1L)
+            .timeZoneOffset("UTC")
+            .vendorName("Vendor Name")
+            .build();
+        assertNotEquals(buildResult, buildResult2);
+    }
+    @Test
+    void testEquals19() {
+        FilePublishInformation buildResult = FilePublishInformation.builder()
+            .changeIdentifier("42")
+            .compression("Compression")
+            .fileFormatType("File Format Type")
+            .fileFormatVersion("1.0.2")
+            .lastEpochMicrosec(1L)
+            .name("Name")
+            .objectStoreBucket("s3://bucket-name/object-key")
+            .productName(null)
+            .sourceName("Source Name")
+            .startEpochMicrosec(1L)
+            .timeZoneOffset("UTC")
+            .vendorName("Vendor Name")
+            .build();
+        FilePublishInformation buildResult2 = FilePublishInformation.builder()
+            .changeIdentifier("42")
+            .compression("Compression")
+            .fileFormatType("File Format Type")
+            .fileFormatVersion("1.0.2")
+            .lastEpochMicrosec(1L)
+            .name("Name")
+            .objectStoreBucket("s3://bucket-name/object-key")
+            .productName("Product Name")
+            .sourceName("Source Name")
+            .startEpochMicrosec(1L)
+            .timeZoneOffset("UTC")
+            .vendorName("Vendor Name")
+            .build();
+        assertNotEquals(buildResult, buildResult2);
+    }
+    @Test
+    void testEquals20() {
+        FilePublishInformation buildResult = FilePublishInformation.builder()
+            .changeIdentifier("42")
+            .compression("Compression")
+            .fileFormatType("File Format Type")
+            .fileFormatVersion("1.0.2")
+            .lastEpochMicrosec(1L)
+            .name("Name")
+            .objectStoreBucket("s3://bucket-name/object-key")
+            .productName("Product Name")
+            .sourceName("Product Name")
+            .startEpochMicrosec(1L)
+            .timeZoneOffset("UTC")
+            .vendorName("Vendor Name")
+            .build();
+        FilePublishInformation buildResult2 = FilePublishInformation.builder()
+            .changeIdentifier("42")
+            .compression("Compression")
+            .fileFormatType("File Format Type")
+            .fileFormatVersion("1.0.2")
+            .lastEpochMicrosec(1L)
+            .name("Name")
+            .objectStoreBucket("s3://bucket-name/object-key")
+            .productName("Product Name")
+            .sourceName("Source Name")
+            .startEpochMicrosec(1L)
+            .timeZoneOffset("UTC")
+            .vendorName("Vendor Name")
+            .build();
+        assertNotEquals(buildResult, buildResult2);
+    }
+    @Test
+    void testEquals21() {
+        FilePublishInformation buildResult = FilePublishInformation.builder()
+            .changeIdentifier("42")
+            .compression("Compression")
+            .fileFormatType("File Format Type")
+            .fileFormatVersion("1.0.2")
+            .lastEpochMicrosec(1L)
+            .name("Name")
+            .objectStoreBucket("s3://bucket-name/object-key")
+            .productName("Product Name")
+            .sourceName(null)
+            .startEpochMicrosec(1L)
+            .timeZoneOffset("UTC")
+            .vendorName("Vendor Name")
+            .build();
+        FilePublishInformation buildResult2 = FilePublishInformation.builder()
+            .changeIdentifier("42")
+            .compression("Compression")
+            .fileFormatType("File Format Type")
+            .fileFormatVersion("1.0.2")
+            .lastEpochMicrosec(1L)
+            .name("Name")
+            .objectStoreBucket("s3://bucket-name/object-key")
+            .productName("Product Name")
+            .sourceName("Source Name")
+            .startEpochMicrosec(1L)
+            .timeZoneOffset("UTC")
+            .vendorName("Vendor Name")
+            .build();
+        assertNotEquals(buildResult, buildResult2);
+    }
+    @Test
+    void testEquals22() {
+        FilePublishInformation buildResult = FilePublishInformation.builder()
+            .changeIdentifier("42")
+            .compression("Compression")
+            .fileFormatType("File Format Type")
+            .fileFormatVersion("1.0.2")
+            .lastEpochMicrosec(1L)
+            .name("Name")
+            .objectStoreBucket("s3://bucket-name/object-key")
+            .productName("Product Name")
+            .sourceName("Source Name")
+            .startEpochMicrosec(3L)
+            .timeZoneOffset("UTC")
+            .vendorName("Vendor Name")
+            .build();
+        FilePublishInformation buildResult2 = FilePublishInformation.builder()
+            .changeIdentifier("42")
+            .compression("Compression")
+            .fileFormatType("File Format Type")
+            .fileFormatVersion("1.0.2")
+            .lastEpochMicrosec(1L)
+            .name("Name")
+            .objectStoreBucket("s3://bucket-name/object-key")
+            .productName("Product Name")
+            .sourceName("Source Name")
+            .startEpochMicrosec(1L)
+            .timeZoneOffset("UTC")
+            .vendorName("Vendor Name")
+            .build();
+        assertNotEquals(buildResult, buildResult2);
+    }
+    @Test
+    void testEquals23() {
+        FilePublishInformation buildResult = FilePublishInformation.builder()
+            .changeIdentifier("42")
+            .compression("Compression")
+            .fileFormatType("File Format Type")
+            .fileFormatVersion("1.0.2")
+            .lastEpochMicrosec(1L)
+            .name("Name")
+            .objectStoreBucket("s3://bucket-name/object-key")
+            .productName("Product Name")
+            .sourceName("Source Name")
+            .startEpochMicrosec(1L)
+            .timeZoneOffset("Europe/London")
+            .vendorName("Vendor Name")
+            .build();
+        FilePublishInformation buildResult2 = FilePublishInformation.builder()
+            .changeIdentifier("42")
+            .compression("Compression")
+            .fileFormatType("File Format Type")
+            .fileFormatVersion("1.0.2")
+            .lastEpochMicrosec(1L)
+            .name("Name")
+            .objectStoreBucket("s3://bucket-name/object-key")
+            .productName("Product Name")
+            .sourceName("Source Name")
+            .startEpochMicrosec(1L)
+            .timeZoneOffset("UTC")
+            .vendorName("Vendor Name")
+            .build();
+        assertNotEquals(buildResult, buildResult2);
+    }
+    @Test
+    void testEquals24() {
+        FilePublishInformation buildResult = FilePublishInformation.builder()
+            .changeIdentifier("42")
+            .compression("Compression")
+            .fileFormatType("File Format Type")
+            .fileFormatVersion("1.0.2")
+            .lastEpochMicrosec(1L)
+            .name("Name")
+            .objectStoreBucket("s3://bucket-name/object-key")
+            .productName("Product Name")
+            .sourceName("Source Name")
+            .startEpochMicrosec(1L)
+            .timeZoneOffset(null)
+            .vendorName("Vendor Name")
+            .build();
+        FilePublishInformation buildResult2 = FilePublishInformation.builder()
+            .changeIdentifier("42")
+            .compression("Compression")
+            .fileFormatType("File Format Type")
+            .fileFormatVersion("1.0.2")
+            .lastEpochMicrosec(1L)
+            .name("Name")
+            .objectStoreBucket("s3://bucket-name/object-key")
+            .productName("Product Name")
+            .sourceName("Source Name")
+            .startEpochMicrosec(1L)
+            .timeZoneOffset("UTC")
+            .vendorName("Vendor Name")
+            .build();
+        assertNotEquals(buildResult, buildResult2);
+    }
+    @Test
+    void testEquals25() {
+        FilePublishInformation buildResult = FilePublishInformation.builder()
+            .changeIdentifier("42")
+            .compression("Compression")
+            .fileFormatType("File Format Type")
+            .fileFormatVersion("1.0.2")
+            .lastEpochMicrosec(1L)
+            .name("Name")
+            .objectStoreBucket("s3://bucket-name/object-key")
+            .productName("Product Name")
+            .sourceName("Source Name")
+            .startEpochMicrosec(1L)
+            .timeZoneOffset("UTC")
+            .vendorName("Product Name")
+            .build();
+        FilePublishInformation buildResult2 = FilePublishInformation.builder()
+            .changeIdentifier("42")
+            .compression("Compression")
+            .fileFormatType("File Format Type")
+            .fileFormatVersion("1.0.2")
+            .lastEpochMicrosec(1L)
+            .name("Name")
+            .objectStoreBucket("s3://bucket-name/object-key")
+            .productName("Product Name")
+            .sourceName("Source Name")
+            .startEpochMicrosec(1L)
+            .timeZoneOffset("UTC")
+            .vendorName("Vendor Name")
+            .build();
+        assertNotEquals(buildResult, buildResult2);
+    }
+    @Test
+    void testEquals26() {
+        FilePublishInformation buildResult = FilePublishInformation.builder()
+            .changeIdentifier("42")
+            .compression("Compression")
+            .fileFormatType("File Format Type")
+            .fileFormatVersion("1.0.2")
+            .lastEpochMicrosec(1L)
+            .name("Name")
+            .objectStoreBucket("s3://bucket-name/object-key")
+            .productName("Product Name")
+            .sourceName("Source Name")
+            .startEpochMicrosec(1L)
+            .timeZoneOffset("UTC")
+            .vendorName(null)
+            .build();
+        FilePublishInformation buildResult2 = FilePublishInformation.builder()
+            .changeIdentifier("42")
+            .compression("Compression")
+            .fileFormatType("File Format Type")
+            .fileFormatVersion("1.0.2")
+            .lastEpochMicrosec(1L)
+            .name("Name")
+            .objectStoreBucket("s3://bucket-name/object-key")
+            .productName("Product Name")
+            .sourceName("Source Name")
+            .startEpochMicrosec(1L)
+            .timeZoneOffset("UTC")
+            .vendorName("Vendor Name")
+            .build();
+        assertNotEquals(buildResult, buildResult2);
+    }
+    @Test
+    void testGetName() {
+        FilePublishInformation buildResult = FilePublishInformation.builder()
+            .changeIdentifier("42")
+            .compression("Compression")
+            .fileFormatType("File Format Type")
+            .fileFormatVersion("1.0.2")
+            .lastEpochMicrosec(1L)
+            .name("Name")
+            .objectStoreBucket("s3://bucket-name/object-key")
+            .productName("Product Name")
+            .sourceName("Source Name")
+            .startEpochMicrosec(1L)
+            .timeZoneOffset("UTC")
+            .vendorName("Vendor Name")
+            .build();
+        String actualName = buildResult.getName();
+        assertEquals("Name", actualName);
+        assertEquals("Source Name", buildResult.getSourceName());
+    }
+}
+
diff --git a/datafilecollector/src/test/java/org/oran/datafile/model/FileReadyMessageTest.java b/datafilecollector/src/test/java/org/oran/datafile/model/FileReadyMessageTest.java
new file mode 100644 (file)
index 0000000..29a7236
--- /dev/null
@@ -0,0 +1,43 @@
+/*-
+ * ============LICENSE_START=======================================================
+ *  Copyright (C) 2019-2023 Nordix Foundation.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ * SPDX-License-Identifier: Apache-2.0
+ * ============LICENSE_END=========================================================
+ */
+
+package org.oran.datafile.model;
+
+import static org.junit.jupiter.api.Assertions.assertEquals;
+
+import org.junit.jupiter.api.Test;
+
+class FileReadyMessageTest {
+    @Test
+    void testMessageMetaDataProductName() {
+        assertEquals("Event Name",
+            (new FileReadyMessage.MessageMetaData("42", "Priority", "1.0.2", "Reporting Entity Name",
+                1, "Domain", "Event Name", "1.0.2", "Source Name", 1L, 1L, "UTC", "42")).productName());
+        assertEquals("|", (new FileReadyMessage.MessageMetaData("42", "Priority", "1.0.2", "Reporting Entity Name", 1,
+            "Domain", "_|-", "1.0.2", "Source Name", 1L, 1L, "UTC", "42")).productName());
+    }
+    @Test
+    void testMessageMetaDataVendorName() {
+        assertEquals("Event Name",
+            (new FileReadyMessage.MessageMetaData("42", "Priority", "1.0.2", "Reporting Entity Name", 1, "Domain",
+                "Event Name", "1.0.2", "Source Name", 1L, 1L, "UTC", "42")).vendorName());
+    }
+}
+
diff --git a/datafilecollector/src/test/java/org/oran/datafile/model/FileServerDataTest.java b/datafilecollector/src/test/java/org/oran/datafile/model/FileServerDataTest.java
new file mode 100644 (file)
index 0000000..863be8a
--- /dev/null
@@ -0,0 +1,40 @@
+/*-
+ * ============LICENSE_START=======================================================
+ *  Copyright (C) 2019-2023 Nordix Foundation.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ * SPDX-License-Identifier: Apache-2.0
+ * ============LICENSE_END=========================================================
+ */
+
+package org.oran.datafile.model;
+
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertTrue;
+
+import java.util.ArrayList;
+import org.junit.jupiter.api.Test;
+
+class FileServerDataTest {
+    @Test
+    void testConstructor() {
+        FileServerData actualFileServerData = new FileServerData("42 Main St", "42", "password", new ArrayList<>(),
+            "Uri Raw Fragment", 8080);
+        assertEquals("FileServerData(serverAddress=42 Main St, userId=42, uriRawFragment=Uri Raw Fragment, port=8080)",
+            actualFileServerData.toString());
+        assertEquals(8080, actualFileServerData.port.intValue());
+        assertTrue(actualFileServerData.queryParameters.isEmpty());
+    }
+}
+
index 3b42ede..5085798 100644 (file)
@@ -26,10 +26,10 @@ import org.junit.jupiter.api.Test;
 import org.oran.datafile.exceptions.DatafileTaskException;
 import org.oran.datafile.model.FileData.Scheme;
 
-public class SchemeTest {
+class SchemeTest {
 
     @Test
-    public void shouldReturnSchemeForSupportedProtocol() throws DatafileTaskException {
+    void shouldReturnSchemeForSupportedProtocol() throws DatafileTaskException {
         assertEquals(Scheme.FTPES, Scheme.getSchemeFromString("FTPES"));
         assertEquals(Scheme.SFTP, Scheme.getSchemeFromString("SFTP"));
         assertEquals(Scheme.HTTP, Scheme.getSchemeFromString("HTTP"));
@@ -37,12 +37,12 @@ public class SchemeTest {
     }
 
     @Test
-    public void shouldThrowExceptionForUnsupportedProtocol() {
+    void shouldThrowExceptionForUnsupportedProtocol() {
         assertThrows(DatafileTaskException.class, () -> Scheme.getSchemeFromString("FTPS"));
     }
 
     @Test
-    public void shouldThrowExceptionForInvalidProtocol() {
+    void shouldThrowExceptionForInvalidProtocol() {
         assertThrows(DatafileTaskException.class, () -> Scheme.getSchemeFromString("invalid"));
     }
 }
diff --git a/datafilecollector/src/test/java/org/oran/datafile/oauth2/OAuthBearerTokenJwtTest.java b/datafilecollector/src/test/java/org/oran/datafile/oauth2/OAuthBearerTokenJwtTest.java
new file mode 100644 (file)
index 0000000..f8afa64
--- /dev/null
@@ -0,0 +1,109 @@
+/*-
+ * ============LICENSE_START=======================================================
+ *  Copyright (C) 2023 Nordix Foundation.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ * SPDX-License-Identifier: Apache-2.0
+ * ============LICENSE_END=========================================================
+ */
+
+package org.oran.datafile.oauth2;
+
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertFalse;
+import static org.junit.jupiter.api.Assertions.assertNotNull;
+import static org.junit.jupiter.api.Assertions.assertThrows;
+
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.extension.ExtendWith;
+import org.mockito.junit.jupiter.MockitoExtension;
+import org.oran.datafile.exceptions.DatafileTaskException;
+import org.springframework.test.context.ContextConfiguration;
+
+@ContextConfiguration(classes = {OAuthBearerTokenJwtTest.class})
+@ExtendWith(MockitoExtension.class)
+class OAuthBearerTokenJwtTest {
+
+    private OAuthBearerTokenJwt token;
+
+    @BeforeEach
+    void setUp() throws DatafileTaskException {
+        String validJwt = "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c"; // Replace with a valid JWT token for testing
+        token = OAuthBearerTokenJwt.create(validJwt);
+    }
+
+    @Test
+    void testCreateValidToken() {
+        assertNotNull(token);
+    }
+
+    @Test
+    void testCreateInvalidToken() {
+        assertThrows(DatafileTaskException.class, () -> OAuthBearerTokenJwt.create("invalid_token"));
+    }
+
+    @Test
+    void testTokenValue() {
+        assertEquals("eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c", token.value());
+    }
+
+    @Test
+    void testTokenScope() {
+        assertEquals(0, token.scope().size());
+        assertFalse(token.scope().contains(""));
+    }
+
+    @Test
+    void testTokenLifetimeMs() {
+        assertEquals(Long.MAX_VALUE, token.lifetimeMs());
+    }
+
+    @Test
+    void testTokenPrincipalName() {
+        assertEquals("1234567890", token.principalName());
+    }
+
+    @Test
+    void testTokenStartTimeMs() {
+        assertEquals(1516239022L, token.startTimeMs());
+    }
+
+    @Test
+    void testCreateTokenFromInvalidPayload() throws DatafileTaskException {
+        // Create a JWT with an invalid payload (missing fields)
+        String invalidPayload = "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9";
+        assertThrows(DatafileTaskException.class, () -> OAuthBearerTokenJwt.create(invalidPayload));
+    }
+
+    @Test
+    void testCreateTokenWithValidPayload() throws DatafileTaskException {
+        // Create a JWT with a valid payload
+        String validPayload = "eyJzdWIiOiAiVGVzdCIsICJleHAiOiAxNjM1MTUwMDAwLCAiaWF0IjogMTYzNTA5NTAwMCwgInNjb3BlIjogInNjb3BlX3Rva2VuIiwgImp0aSI6ICJmb28ifQ==";
+        OAuthBearerTokenJwt jwt = OAuthBearerTokenJwt.create("header." + validPayload + ".signature");
+
+        assertNotNull(jwt);
+        assertEquals("header." + validPayload + ".signature", jwt.value());
+        assertEquals(1, jwt.scope().size());
+        assertEquals("scope_token", jwt.scope().iterator().next());
+        assertEquals("Test", jwt.principalName());
+        assertEquals(1635095000, jwt.startTimeMs());
+    }
+
+    @Test
+    void testCreateThrowsExceptionWithInvalidToken() throws DatafileTaskException {
+        String tokenRaw = "your_mocked_token_here";
+        assertThrows(DatafileTaskException.class, () -> OAuthBearerTokenJwt.create(tokenRaw));
+    }
+}
diff --git a/datafilecollector/src/test/java/org/oran/datafile/oauth2/OAuthKafkaAuthenticateLoginCallbackHandlerTest.java b/datafilecollector/src/test/java/org/oran/datafile/oauth2/OAuthKafkaAuthenticateLoginCallbackHandlerTest.java
new file mode 100644 (file)
index 0000000..bba9539
--- /dev/null
@@ -0,0 +1,128 @@
+/*-
+ * ============LICENSE_START=======================================================
+ *  Copyright (C) 2023 Nordix Foundation.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ * SPDX-License-Identifier: Apache-2.0
+ * ============LICENSE_END=========================================================
+ */
+
+package org.oran.datafile.oauth2;
+
+import static org.junit.jupiter.api.Assertions.assertFalse;
+import static org.junit.jupiter.api.Assertions.assertThrows;
+import static org.junit.jupiter.api.Assertions.assertTrue;
+import static org.mockito.ArgumentMatchers.any;
+import static org.mockito.Mockito.mock;
+import static org.mockito.Mockito.verify;
+import static org.mockito.Mockito.when;
+
+import java.io.IOException;
+import java.util.Collections;
+import java.util.HashMap;
+import java.util.List;
+import javax.security.auth.callback.Callback;
+import javax.security.auth.callback.UnsupportedCallbackException;
+import javax.security.auth.login.AppConfigurationEntry;
+import org.apache.kafka.common.security.auth.SaslExtensionsCallback;
+import org.apache.kafka.common.security.oauthbearer.OAuthBearerLoginModule;
+import org.apache.kafka.common.security.oauthbearer.OAuthBearerTokenCallback;
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Test;
+import org.mockito.Mockito;
+
+class OAuthKafkaAuthenticateLoginCallbackHandlerTest {
+
+    private OAuthKafkaAuthenticateLoginCallbackHandler callbackHandler;
+
+    @BeforeEach
+    void setUp() {
+        callbackHandler = new OAuthKafkaAuthenticateLoginCallbackHandler();
+    }
+
+    @Test
+    void testConfigureWithValidSaslMechanismAndConfigEntry() {
+        String saslMechanism = OAuthBearerLoginModule.OAUTHBEARER_MECHANISM;
+        List<AppConfigurationEntry> jaasConfigEntries = Collections.singletonList(Mockito.mock(AppConfigurationEntry.class));
+
+        callbackHandler.configure(new HashMap<>(), saslMechanism, jaasConfigEntries);
+
+        assertTrue(callbackHandler.isConfigured());
+    }
+
+    @SuppressWarnings("java:S5778")
+    @Test
+    void testConfigureWithInvalidSaslMechanism() {
+        String invalidSaslMechanism = "InvalidMechanism";
+        List<AppConfigurationEntry> jaasConfigEntries = Collections.singletonList(Mockito.mock(AppConfigurationEntry.class));
+
+        assertThrows(IllegalArgumentException.class, () -> callbackHandler.configure(new HashMap<>(), invalidSaslMechanism, jaasConfigEntries));
+
+        assertFalse(callbackHandler.isConfigured());
+    }
+
+    @SuppressWarnings("java:S5778")
+    @Test
+    void testConfigureWithEmptyJaasConfigEntries() {
+        String saslMechanism = OAuthBearerLoginModule.OAUTHBEARER_MECHANISM;
+        List<AppConfigurationEntry> emptyJaasConfigEntries = Collections.emptyList();
+
+        assertThrows(IllegalArgumentException.class, () -> callbackHandler.configure(new HashMap<>(), saslMechanism, emptyJaasConfigEntries));
+
+        assertFalse(callbackHandler.isConfigured());
+    }
+
+    @Test
+    void testHandleSaslExtensionsCallback() throws IOException, UnsupportedCallbackException {
+        String saslMechanism = OAuthBearerLoginModule.OAUTHBEARER_MECHANISM;
+        List<AppConfigurationEntry> jaasConfigEntries = Collections.singletonList(Mockito.mock(AppConfigurationEntry.class));
+
+        callbackHandler.configure(new HashMap<>(), saslMechanism, jaasConfigEntries);
+        SaslExtensionsCallback callback = mock(SaslExtensionsCallback.class);
+
+        callbackHandler.handle(new Callback[]{callback});
+        verify(callback).extensions(any());
+    }
+
+    @Test
+    void testHandleUnsupportedCallback() {
+        Callback unsupportedCallback = mock(Callback.class);
+        String saslMechanism = OAuthBearerLoginModule.OAUTHBEARER_MECHANISM;
+        List<AppConfigurationEntry> jaasConfigEntries = Collections.singletonList(Mockito.mock(AppConfigurationEntry.class));
+
+        callbackHandler.configure(new HashMap<>(), saslMechanism, jaasConfigEntries);
+        assertThrows(UnsupportedCallbackException.class, () -> callbackHandler.handle(new Callback[]{unsupportedCallback}));
+    }
+
+    @Test
+    void testHandleOAuthBearerTokenCallback() throws IOException, UnsupportedCallbackException {
+
+        String saslMechanism = OAuthBearerLoginModule.OAUTHBEARER_MECHANISM;
+        List<AppConfigurationEntry> jaasConfigEntries = Collections.singletonList(Mockito.mock(AppConfigurationEntry.class));
+        String validJwt = "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c";
+
+        callbackHandler.configure(new HashMap<>(), saslMechanism, jaasConfigEntries);
+
+        OAuthBearerTokenCallback oauthBearerTokenCallback = Mockito.mock(OAuthBearerTokenCallback.class);
+        SecurityContext securityContextMock = Mockito.mock(SecurityContext.class);
+        when(oauthBearerTokenCallback.token()).thenReturn(null); // Ensure the callback has no token initially
+        when(oauthBearerTokenCallback.token()).thenAnswer(invocation -> {
+            return OAuthBearerTokenJwt.create(validJwt);
+        });
+
+        when(securityContextMock.getBearerAuthToken()).thenReturn(validJwt);
+        callbackHandler.handle(new Callback[]{oauthBearerTokenCallback});
+        verify(oauthBearerTokenCallback).token();
+    }
+}
diff --git a/datafilecollector/src/test/java/org/oran/datafile/oauth2/SecurityContextTest.java b/datafilecollector/src/test/java/org/oran/datafile/oauth2/SecurityContextTest.java
new file mode 100644 (file)
index 0000000..adacd4c
--- /dev/null
@@ -0,0 +1,81 @@
+/*-
+ * ============LICENSE_START=======================================================
+ *  Copyright (C) 2023 Nordix Foundation.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ * SPDX-License-Identifier: Apache-2.0
+ * ============LICENSE_END=========================================================
+ */
+
+package org.oran.datafile.oauth2;
+
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertFalse;
+import static org.junit.jupiter.api.Assertions.assertNotNull;
+import static org.junit.jupiter.api.Assertions.assertNull;
+import static org.junit.jupiter.api.Assertions.assertTrue;
+
+import java.nio.file.Path;
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.extension.ExtendWith;
+import org.mockito.MockitoAnnotations;
+import org.mockito.junit.jupiter.MockitoExtension;
+
+@ExtendWith(MockitoExtension.class)
+class SecurityContextTest {
+
+    @BeforeEach
+    void setUp() {
+        MockitoAnnotations.initMocks(this);
+    }
+
+    @Test
+    void testConstructorWithAuthTokenFilename() {
+        SecurityContext securityContext = new SecurityContext("auth-token-file.txt");
+        assertNotNull(securityContext.getAuthTokenFilePath());
+        assertEquals(Path.of("auth-token-file.txt"), securityContext.getAuthTokenFilePath());
+    }
+
+    @Test
+    void testConstructorWithoutAuthTokenFilename() {
+        SecurityContext securityContext = new SecurityContext("");
+        assertNull(securityContext.getAuthTokenFilePath());
+    }
+
+    @Test
+    void testIsConfigured() {
+        SecurityContext securityContext = new SecurityContext("auth-token-file.txt");
+        assertTrue(securityContext.isConfigured());
+    }
+
+    @Test
+    void testIsNotConfigured() {
+        SecurityContext securityContext = new SecurityContext("");
+        assertFalse(securityContext.isConfigured());
+    }
+
+    @Test
+    void testGetBearerAuthToken() {
+        assertEquals("", SecurityContext.getInstance().getBearerAuthToken());
+        assertEquals("", (new SecurityContext("foo.txt")).getBearerAuthToken());
+    }
+
+    @Test
+    void testGetBearerAuthTokenWhenNotConfigured() {
+        SecurityContext securityContext = new SecurityContext("");
+        assertEquals("", securityContext.getBearerAuthToken());
+    }
+}
+
diff --git a/datafilecollector/src/test/java/org/oran/datafile/tasks/CollectAndReportFilesTest.java b/datafilecollector/src/test/java/org/oran/datafile/tasks/CollectAndReportFilesTest.java
new file mode 100644 (file)
index 0000000..9910382
--- /dev/null
@@ -0,0 +1,94 @@
+/*-
+ * ============LICENSE_START=======================================================
+ *  Copyright (C) 2023 Nordix Foundation.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ * SPDX-License-Identifier: Apache-2.0
+ * ============LICENSE_END=========================================================
+ */
+
+package org.oran.datafile.tasks;
+
+import static org.junit.jupiter.api.Assertions.assertNull;
+import static org.junit.jupiter.api.Assertions.assertSame;
+import static org.mockito.Mockito.doNothing;
+import static org.mockito.Mockito.verify;
+import static org.mockito.Mockito.when;
+
+import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.extension.ExtendWith;
+import org.mockito.Mock;
+import org.mockito.Mockito;
+import org.mockito.junit.jupiter.MockitoExtension;
+import org.oran.datafile.configuration.AppConfig;
+import org.oran.datafile.model.Counters;
+import org.oran.datafile.model.FilePublishInformation;
+import org.oran.datafile.oauth2.SecurityContext;
+import org.springframework.test.context.ContextConfiguration;
+import reactor.core.publisher.DirectProcessor;
+import reactor.kafka.sender.SenderResult;
+
+@ContextConfiguration(classes = {CollectAndReportFiles.class})
+@ExtendWith(MockitoExtension.class)
+class CollectAndReportFilesTest {
+    @Mock
+    private AppConfig appConfig;
+
+    @Mock
+    private CollectAndReportFiles collectAndReportFilesMock;
+
+    @Mock
+    private SecurityContext securityContext;
+
+    @Test
+    void testStart() {
+        doNothing().when(collectAndReportFilesMock).start();
+        collectAndReportFilesMock.start();
+        verify(collectAndReportFilesMock).start();
+    }
+    @Test
+    void testCreateMainTask() {
+        DirectProcessor<FilePublishInformation> createResult = DirectProcessor.create();
+        when(collectAndReportFilesMock.createMainTask()).thenReturn(createResult);
+        assertSame(createResult, collectAndReportFilesMock.createMainTask());
+        verify(collectAndReportFilesMock).createMainTask();
+    }
+    @Test
+    void testSendDataToStream() {
+        DirectProcessor<SenderResult<Integer>> createResult = DirectProcessor.create();
+        when(
+            collectAndReportFilesMock.sendDataToStream(Mockito.<String>any(), Mockito.<String>any(), Mockito.<String>any()))
+            .thenReturn(createResult);
+        assertSame(createResult, collectAndReportFilesMock.sendDataToStream("Topic", "Source Name", "42"));
+        verify(collectAndReportFilesMock).sendDataToStream(Mockito.<String>any(), Mockito.<String>any(),
+            Mockito.<String>any());
+    }
+    @Test
+    void testCreateFileCollector() {
+        FileCollector fileCollector = new FileCollector(securityContext, appConfig, new Counters());
+
+        when(collectAndReportFilesMock.createFileCollector()).thenReturn(fileCollector);
+        assertSame(fileCollector, collectAndReportFilesMock.createFileCollector());
+        verify(collectAndReportFilesMock).createFileCollector();
+    }
+    @Test
+    void testParseReceivedFileReadyMessage() {
+        when(collectAndReportFilesMock.parseReceivedFileReadyMessage(Mockito.<KafkaTopicListener.DataFromTopic>any()))
+            .thenReturn(null);
+        assertNull(
+            collectAndReportFilesMock.parseReceivedFileReadyMessage(new KafkaTopicListener.DataFromTopic("Key", "42")));
+        verify(collectAndReportFilesMock).parseReceivedFileReadyMessage(Mockito.<KafkaTopicListener.DataFromTopic>any());
+    }
+}
+
index 118e9c7..432e045 100644 (file)
@@ -52,7 +52,7 @@ import org.oran.datafile.model.FileReadyMessage;
 import org.oran.datafile.oauth2.SecurityContext;
 import reactor.test.StepVerifier;
 
-public class FileCollectorTest {
+class FileCollectorTest {
 
     final static String DATAFILE_TMPDIR = "/tmp/onap_datafile/";
     private static final String PRODUCT_NAME = "NrRadio";
@@ -190,7 +190,7 @@ public class FileCollectorTest {
     }
 
     @Test
-    public void whenFtpesFile_returnCorrectResponse() throws Exception {
+    void whenFtpesFile_returnCorrectResponse() throws Exception {
         FileCollector collectorUndetTest = spy(new FileCollector(securityContext, appConfigMock, counters));
         doReturn(ftpesClientMock).when(collectorUndetTest).createFtpesClient(any());
 
@@ -214,7 +214,7 @@ public class FileCollectorTest {
     }
 
     @Test
-    public void whenSftpFile_returnCorrectResponse() throws Exception {
+    void whenSftpFile_returnCorrectResponse() throws Exception {
         FileCollector collectorUndetTest = spy(new FileCollector(securityContext, appConfigMock, counters));
         doReturn(sftpClientMock).when(collectorUndetTest).createSftpClient(any());
 
@@ -243,7 +243,7 @@ public class FileCollectorTest {
     }
 
     @Test
-    public void whenHttpFile_returnCorrectResponse() throws Exception {
+    void whenHttpFile_returnCorrectResponse() throws Exception {
         FileCollector collectorUndetTest = spy(new FileCollector(securityContext, appConfigMock, counters));
         doReturn(dfcHttpClientMock).when(collectorUndetTest).createHttpClient(any());
 
@@ -275,7 +275,7 @@ public class FileCollectorTest {
     }
 
     @Test
-    public void whenHttpsFile_returnCorrectResponse() throws Exception {
+    void whenHttpsFile_returnCorrectResponse() throws Exception {
         FileCollector collectorUndetTest = spy(new FileCollector(securityContext, appConfigMock, counters));
         doReturn(dfcHttpsClientMock).when(collectorUndetTest).createHttpsClient(any());
 
@@ -307,7 +307,7 @@ public class FileCollectorTest {
     }
 
     @Test
-    public void whenFtpesFileAlwaysFail_retryAndFail() throws Exception {
+    void whenFtpesFileAlwaysFail_retryAndFail() throws Exception {
         FileCollector collectorUndetTest = spy(new FileCollector(securityContext, appConfigMock, counters));
         doReturn(ftpesClientMock).when(collectorUndetTest).createFtpesClient(any());
 
@@ -327,7 +327,7 @@ public class FileCollectorTest {
     }
 
     @Test
-    public void whenFtpesFileAlwaysFail_failWithoutRetry() throws Exception {
+    void whenFtpesFileAlwaysFail_failWithoutRetry() throws Exception {
         FileCollector collectorUndetTest = spy(new FileCollector(securityContext, appConfigMock, counters));
         doReturn(ftpesClientMock).when(collectorUndetTest).createFtpesClient(any());
 
@@ -347,7 +347,7 @@ public class FileCollectorTest {
     }
 
     @Test
-    public void whenFtpesFileFailOnce_retryAndReturnCorrectResponse() throws Exception {
+    void whenFtpesFileFailOnce_retryAndReturnCorrectResponse() throws Exception {
         FileCollector collectorUndetTest = spy(new FileCollector(securityContext, appConfigMock, counters));
         doReturn(ftpesClientMock).when(collectorUndetTest).createFtpesClient(any());
         doThrow(new DatafileTaskException("Unable to collect file.")).doNothing().when(ftpesClientMock)
diff --git a/datafilecollector/src/test/java/org/oran/datafile/tasks/KafkaTopicListenerTest.java b/datafilecollector/src/test/java/org/oran/datafile/tasks/KafkaTopicListenerTest.java
new file mode 100644 (file)
index 0000000..00f4f43
--- /dev/null
@@ -0,0 +1,70 @@
+/*-
+ * ============LICENSE_START=======================================================
+ *  Copyright (C) 2023 Nordix Foundation.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ * SPDX-License-Identifier: Apache-2.0
+ * ============LICENSE_END=========================================================
+ */
+
+package org.oran.datafile.tasks;
+
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.mockito.Mockito.mock;
+import static org.mockito.Mockito.when;
+
+import java.util.Collections;
+import org.apache.kafka.clients.consumer.ConsumerConfig;
+import org.apache.kafka.clients.consumer.OffsetResetStrategy;
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Test;
+import org.mockito.Mock;
+import org.mockito.MockitoAnnotations;
+import org.oran.datafile.configuration.AppConfig;
+import reactor.core.publisher.Flux;
+import reactor.kafka.receiver.KafkaReceiver;
+import reactor.kafka.receiver.ReceiverOptions;
+
+class KafkaTopicListenerTest {
+
+    @Mock
+    private AppConfig appConfig;
+
+    @Mock
+    private KafkaTopicListener kafkaTopicListener;
+
+    @BeforeEach
+    void setUp() {
+        MockitoAnnotations.initMocks(this);
+        when(appConfig.getInputTopic()).thenReturn("testTopic");
+        when(appConfig.getKafkaClientId()).thenReturn("testClientId");
+        when(appConfig.getKafkaBootStrapServers()).thenReturn("localhost:9092");
+        kafkaTopicListener = new KafkaTopicListener(appConfig);
+    }
+
+    @Test
+    void testStartReceiveFromTopic() {
+        KafkaReceiver mockKafkaReceiver = mock(KafkaReceiver.class);
+
+        when(mockKafkaReceiver.receive()).thenReturn(Flux.just(new KafkaTopicListener.DataFromTopic("key", "value")));
+
+        ReceiverOptions<String, String> receiverOptions = mock(ReceiverOptions.class);
+        when(receiverOptions.subscription(Collections.singleton("testTopic"))).thenReturn(receiverOptions);
+        when(receiverOptions.consumerProperty(ConsumerConfig.AUTO_OFFSET_RESET_CONFIG, OffsetResetStrategy.EARLIEST.name()))
+            .thenReturn(receiverOptions);
+
+        assertEquals("testTopic", appConfig.getInputTopic());
+
+    }
+}
\ No newline at end of file
diff --git a/datafilecollector/src/test/resources/org/oran/datafile/datastore/file.txt b/datafilecollector/src/test/resources/org/oran/datafile/datastore/file.txt
new file mode 100644 (file)
index 0000000..c95df2d
--- /dev/null
@@ -0,0 +1 @@
+Hi, How are you?
\ No newline at end of file
index 5466d2c..dccf3c5 100644 (file)
@@ -21,14 +21,17 @@ package utils
 
 import (
        "bytes"
-       log "github.com/sirupsen/logrus"
        "main/components/kafkacollector"
        "net/http"
+
+       log "github.com/sirupsen/logrus"
 )
 
 var httpclient = &http.Client{}
 
 // Send a http request with json (json may be nil)
+//
+//lint:ignore S100
 func Send_http_request(json []byte, method string, url string, retry bool, useAuth bool) bool {
 
        // set the HTTP method, url, and request body
diff --git a/pm-file-converter/common/utils/utils_test.go b/pm-file-converter/common/utils/utils_test.go
new file mode 100644 (file)
index 0000000..2cf3f1f
--- /dev/null
@@ -0,0 +1,30 @@
+package utils
+
+import (
+       "github.com/stretchr/testify/assert"
+       "testing"
+)
+
+func TestSend_http_request(t *testing.T) {
+       type testCase struct {
+               Name string
+
+               Json    []byte
+               Method  string
+               Url     string
+               Retry   bool
+               UseAuth bool
+
+               ExpectedBool bool
+       }
+
+       validate := func(t *testing.T, tc *testCase) {
+               t.Run(tc.Name, func(t *testing.T) {
+                       actualBool := Send_http_request(tc.Json, tc.Method, tc.Url, tc.Retry, tc.UseAuth)
+
+                       assert.Equal(t, tc.ExpectedBool, actualBool)
+               })
+       }
+
+       validate(t, &testCase{})
+}
index d70114c..7451dd2 100644 (file)
@@ -22,14 +22,15 @@ package kafkacollector
 import (
        "context"
        "fmt"
+       "main/common/dataTypes"
+       "main/components/miniocollector"
+       "os"
+       "time"
+
        "github.com/confluentinc/confluent-kafka-go/kafka"
        jsoniter "github.com/json-iterator/go"
        log "github.com/sirupsen/logrus"
        "golang.org/x/oauth2/clientcredentials"
-       "main/common/dataTypes"
-        "main/components/miniocollector"
-       "os"
-       "time"
 )
 
 var creds_grant_type = os.Getenv("CREDS_GRANT_TYPE")
@@ -42,6 +43,7 @@ var creds_service_url = os.Getenv("AUTH_SERVICE_URL")
 const parallelism_limiter = 100 //For all jobs
 var jobLimiterChan = make(chan struct{}, parallelism_limiter)
 
+// noinspection GoCognitiveComplexity
 func Start_topic_reader(topic string, type_id string, control_ch chan dataTypes.ReaderControl, data_ch chan *dataTypes.KafkaPayload, gid string, cid string) {
 
        log.Info("Topic reader starting, topic: ", topic, " for type: ", type_id)
diff --git a/pm-file-converter/components/miniocollector/minio_upload_test.json b/pm-file-converter/components/miniocollector/minio_upload_test.json
new file mode 100644 (file)
index 0000000..5131c75
--- /dev/null
@@ -0,0 +1,12701 @@
+{
+    "event": {
+        "commonEventHeader": {
+            "domain": "",
+            "eventId": "",
+            "sequence": 0,
+            "eventName": "",
+            "sourceName": "GNODEB-0",
+            "reportingEntityName": "",
+            "priority": "",
+            "startEpochMicrosec": 0,
+            "lastEpochMicrosec": 0,
+            "version": "",
+            "vesEventListenerVersion": "",
+            "timeZoneOffset": "+05:00"
+        },
+        "perf3gppFields": {
+            "perf3gppFieldsVersion": "1.0",
+            "measDataCollection": {
+                "granularityPeriod": 900,
+                "measuredEntityUserName": "",
+                "measuredEntityDn": "GNODEB-0",
+                "measuredEntitySoftwareVersion": "ABC2001155_1 X12Y34",
+                "measInfoList": [
+                    {
+                        "measInfoId": {
+                            "sMeasInfoId": "PM=1,PmGroup=NRCellCU_GNBCUCP"
+                        },
+                        "measTypes": {
+                            "sMeasTypesList": [
+                                "pmCounterNumber0",
+                                "pmCounterNumber1",
+                                "pmCounterNumber2",
+                                "pmCounterNumber3",
+                                "pmCounterNumber4",
+                                "pmCounterNumber5",
+                                "pmCounterNumber6",
+                                "pmCounterNumber7",
+                                "pmCounterNumber8",
+                                "pmCounterNumber9",
+                                "pmCounterNumber10",
+                                "pmCounterNumber11",
+                                "pmCounterNumber12",
+                                "pmCounterNumber13",
+                                "pmCounterNumber14",
+                                "pmCounterNumber15",
+                                "pmCounterNumber16",
+                                "pmCounterNumber17",
+                                "pmCounterNumber18",
+                                "pmCounterNumber19",
+                                "pmCounterNumber20",
+                                "pmCounterNumber21",
+                                "pmCounterNumber22",
+                                "pmCounterNumber23",
+                                "pmCounterNumber24",
+                                "pmCounterNumber25",
+                                "pmCounterNumber26",
+                                "pmCounterNumber27",
+                                "pmCounterNumber28",
+                                "pmCounterNumber29",
+                                "pmCounterNumber30",
+                                "pmCounterNumber31",
+                                "pmCounterNumber32",
+                                "pmCounterNumber33",
+                                "pmCounterNumber34",
+                                "pmCounterNumber35",
+                                "pmCounterNumber36",
+                                "pmCounterNumber37",
+                                "pmCounterNumber38",
+                                "pmCounterNumber39",
+                                "pmCounterNumber40",
+                                "pmCounterNumber41",
+                                "pmCounterNumber42",
+                                "pmCounterNumber43",
+                                "pmCounterNumber44",
+                                "pmCounterNumber45",
+                                "pmCounterNumber46",
+                                "pmCounterNumber47",
+                                "pmCounterNumber48",
+                                "pmCounterNumber49",
+                                "pmCounterNumber50",
+                                "pmCounterNumber51",
+                                "pmCounterNumber51Act",
+                                "pmCounterNumber53",
+                                "pmCounterNumber53Act",
+                                "pmCounterNumber55",
+                                "pmCounterNumber56",
+                                "pmCounterNumber57",
+                                "pmCounterNumber58",
+                                "pmCounterNumber59",
+                                "pmCounterNumber60",
+                                "pmCounterNumber60IntgProt64kbps",
+                                "pmCounterNumber62",
+                                "pmCounterNumber63",
+                                "pmCounterNumber64",
+                                "pmCounterNumber65",
+                                "pmCounterNumber66",
+                                "pmCounterNumber67",
+                                "pmCounterNumber68",
+                                "pmCounterNumber69",
+                                "pmCounterNumber70",
+                                "pmCounterNumber71",
+                                "pmCounterNumber72",
+                                "pmCounterNumber73",
+                                "pmCounterNumber74",
+                                "pmCounterNumber75",
+                                "pmCounterNumber76",
+                                "pmCounterNumber77",
+                                "pmCounterNumber78",
+                                "pmCounterNumber79",
+                                "pmCounterNumber80",
+                                "pmCounterNumber81",
+                                "pmCounterNumber82",
+                                "pmCounterNumber83",
+                                "pmCounterNumber84",
+                                "pmCounterNumber84Em",
+                                "pmCounterNumber84EmFbInd",
+                                "pmCounterNumber87",
+                                "pmCounterNumber88",
+                                "pmCounterNumber89",
+                                "pmCounterNumber90",
+                                "pmCounterNumber91"
+                            ]
+                        },
+                        "measValuesList": [
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,GNBCUCPFunction=1,NRCellCU=32",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 2,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 3,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 4,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 5,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 6,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 7,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 8,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 9,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 10,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 11,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 12,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 13,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 14,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 15,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 16,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 17,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 18,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 19,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 20,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 21,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 22,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 23,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 24,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 25,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 26,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 27,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 28,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 29,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 30,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 31,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 32,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 33,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 34,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 35,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 36,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 37,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 38,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 39,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 40,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 41,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 42,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 43,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 44,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 45,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 46,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 47,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 48,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 49,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 50,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 51,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 52,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 53,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 54,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 55,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 56,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 57,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 58,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 59,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 60,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 61,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 62,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 63,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 64,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 65,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 66,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 67,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 68,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 69,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 70,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 71,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 72,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 73,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 74,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 75,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 76,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 77,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 78,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 79,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 80,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 81,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 82,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 83,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 84,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 85,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 86,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 87,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 88,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 89,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 90,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 91,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 92,
+                                        "sValue": "0"
+                                    }
+                                ]
+                            },
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,GNBCUCPFunction=1,NRCellCU=31",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 2,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 3,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 4,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 5,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 6,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 7,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 8,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 9,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 10,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 11,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 12,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 13,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 14,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 15,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 16,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 17,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 18,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 19,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 20,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 21,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 22,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 23,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 24,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 25,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 26,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 27,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 28,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 29,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 30,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 31,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 32,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 33,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 34,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 35,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 36,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 37,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 38,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 39,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 40,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 41,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 42,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 43,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 44,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 45,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 46,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 47,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 48,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 49,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 50,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 51,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 52,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 53,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 54,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 55,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 56,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 57,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 58,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 59,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 60,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 61,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 62,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 63,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 64,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 65,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 66,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 67,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 68,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 69,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 70,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 71,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 72,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 73,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 74,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 75,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 76,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 77,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 78,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 79,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 80,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 81,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 82,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 83,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 84,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 85,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 86,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 87,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 88,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 89,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 90,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 91,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 92,
+                                        "sValue": "0"
+                                    }
+                                ]
+                            },
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,GNBCUCPFunction=1,NRCellCU=2",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 2,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 3,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 4,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 5,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 6,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 7,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 8,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 9,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 10,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 11,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 12,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 13,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 14,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 15,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 16,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 17,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 18,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 19,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 20,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 21,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 22,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 23,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 24,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 25,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 26,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 27,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 28,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 29,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 30,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 31,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 32,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 33,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 34,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 35,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 36,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 37,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 38,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 39,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 40,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 41,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 42,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 43,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 44,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 45,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 46,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 47,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 48,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 49,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 50,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 51,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 52,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 53,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 54,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 55,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 56,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 57,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 58,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 59,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 60,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 61,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 62,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 63,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 64,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 65,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 66,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 67,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 68,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 69,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 70,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 71,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 72,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 73,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 74,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 75,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 76,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 77,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 78,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 79,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 80,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 81,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 82,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 83,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 84,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 85,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 86,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 87,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 88,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 89,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 90,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 91,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 92,
+                                        "sValue": "0"
+                                    }
+                                ]
+                            },
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,GNBCUCPFunction=1,NRCellCU=1",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 2,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 3,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 4,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 5,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 6,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 7,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 8,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 9,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 10,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 11,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 12,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 13,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 14,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 15,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 16,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 17,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 18,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 19,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 20,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 21,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 22,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 23,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 24,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 25,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 26,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 27,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 28,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 29,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 30,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 31,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 32,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 33,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 34,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 35,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 36,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 37,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 38,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 39,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 40,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 41,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 42,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 43,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 44,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 45,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 46,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 47,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 48,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 49,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 50,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 51,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 52,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 53,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 54,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 55,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 56,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 57,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 58,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 59,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 60,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 61,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 62,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 63,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 64,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 65,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 66,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 67,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 68,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 69,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 70,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 71,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 72,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 73,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 74,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 75,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 76,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 77,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 78,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 79,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 80,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 81,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 82,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 83,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 84,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 85,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 86,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 87,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 88,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 89,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 90,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 91,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 92,
+                                        "sValue": "0"
+                                    }
+                                ]
+                            }
+                        ]
+                    },
+                    {
+                        "measInfoId": {
+                            "sMeasInfoId": "PM=1,PmGroup=NRCellDU_GNBDU"
+                        },
+                        "measTypes": {
+                            "sMeasTypesList": [
+                                "pmCounterNumber92",
+                                "pmCounterNumber93",
+                                "pmCounterNumber94",
+                                "pmCounterNumber95",
+                                "pmCounterNumber96",
+                                "pmCounterNumber97",
+                                "pmCounterNumber98",
+                                "pmCounterNumber99",
+                                "pmCounterNumber100",
+                                "pmCounterNumber101",
+                                "pmCounterNumber102",
+                                "pmCounterNumber103",
+                                "pmCounterNumber104",
+                                "pmCounterNumber105",
+                                "pmCounterNumber106",
+                                "pmCounterNumber107",
+                                "pmCounterNumber108",
+                                "pmCounterNumber108Init",
+                                "pmCounterNumber110",
+                                "pmCounterNumber110Init",
+                                "pmCounterNumber112",
+                                "pmCounterNumber112Init",
+                                "pmCounterNumber114",
+                                "pmCounterNumber114Init",
+                                "pmCounterNumber116",
+                                "pmCounterNumber116Init",
+                                "pmCounterNumber118",
+                                "pmCounterNumber118Init",
+                                "pmCounterNumber120",
+                                "pmCounterNumber120Init",
+                                "pmCounterNumber122",
+                                "pmCounterNumber122Init",
+                                "pmCounterNumber124",
+                                "pmCounterNumber125",
+                                "pmCounterNumber125Init",
+                                "pmCounterNumber127",
+                                "pmCounterNumber127Init",
+                                "pmCounterNumber129",
+                                "pmCounterNumber129Init",
+                                "pmCounterNumber131",
+                                "pmCounterNumber131Init",
+                                "pmCounterNumber133",
+                                "pmCounterNumber133Init",
+                                "pmCounterNumber135",
+                                "pmCounterNumber135Init",
+                                "pmCounterNumber137",
+                                "pmCounterNumber137Init",
+                                "pmCounterNumber139",
+                                "pmCounterNumber139Init",
+                                "pmCounterNumber141",
+                                "pmCounterNumber141Init",
+                                "pmCounterNumber143",
+                                "pmCounterNumber143Init",
+                                "pmCounterNumber145",
+                                "pmCounterNumber145Init",
+                                "pmCounterNumber147",
+                                "pmCounterNumber147Init",
+                                "pmCounterNumber149",
+                                "pmCounterNumber150",
+                                "pmCounterNumber150Init",
+                                "pmCounterNumber152",
+                                "pmCounterNumber152Init",
+                                "pmCounterNumber154",
+                                "pmCounterNumber154Init",
+                                "pmCounterNumber156",
+                                "pmCounterNumber156Init",
+                                "pmCounterNumber158",
+                                "pmCounterNumber158Ext",
+                                "pmCounterNumber160",
+                                "pmCounterNumber161",
+                                "pmCounterNumber162",
+                                "pmCounterNumber163",
+                                "pmCounterNumber164",
+                                "pmCounterNumber165",
+                                "pmCounterNumber166",
+                                "pmCounterNumber1666",
+                                "pmCounterNumber168",
+                                "pmCounterNumber169",
+                                "pmCounterNumber170",
+                                "pmCounterNumber171",
+                                "pmCounterNumber172",
+                                "pmCounterNumber173",
+                                "pmCounterNumber174",
+                                "pmCounterNumber175",
+                                "pmCounterNumber176",
+                                "pmCounterNumber177",
+                                "pmCounterNumber178",
+                                "pmCounterNumber179",
+                                "pmCounterNumber180",
+                                "pmCounterNumber181",
+                                "pmCounterNumber182",
+                                "pmCounterNumber183",
+                                "pmCounterNumber184",
+                                "pmCounterNumber185",
+                                "pmCounterNumber185Qos",
+                                "pmCounterNumber185Samp",
+                                "pmCounterNumber185SampQos",
+                                "pmCounterNumber189",
+                                "pmCounterNumber189Qos",
+                                "pmCounterNumber191",
+                                "pmCounterNumber191Qos",
+                                "pmCounterNumber193",
+                                "pmCounterNumber193Samp",
+                                "pmCounterNumber195",
+                                "pmCounterNumber195Ext",
+                                "pmCounterNumber197",
+                                "pmCounterNumber198",
+                                "pmCounterNumber199",
+                                "pmCounterNumber200",
+                                "pmCounterNumber200BsrGrant",
+                                "pmCounterNumber200PreemptGrant",
+                                "pmCounterNumber200PucchSrGrant",
+                                "pmCounterNumber204",
+                                "pmCounterNumber205",
+                                "pmCounterNumber206",
+                                "pmCounterNumber207",
+                                "pmCounterNumber208",
+                                "pmCounterNumber209",
+                                "pmCounterNumber210",
+                                "pmCounterNumber211",
+                                "pmCounterNumber212",
+                                "pmCounterNumber213",
+                                "pmCounterNumber214",
+                                "pmCounterNumber215",
+                                "pmCounterNumber216",
+                                "pmCounterNumber216MacCe",
+                                "pmCounterNumber218",
+                                "pmCounterNumber219",
+                                "pmCounterNumber220",
+                                "pmCounterNumber221",
+                                "pmCounterNumber222",
+                                "pmCounterNumber223",
+                                "pmCounterNumber224",
+                                "pmCounterNumber225",
+                                "pmCounterNumber226",
+                                "pmCounterNumber227",
+                                "pmCounterNumber228",
+                                "pmCounterNumber228Forced",
+                                "pmCounterNumber230",
+                                "pmCounterNumber231",
+                                "pmCounterNumber232",
+                                "pmCounterNumber233",
+                                "pmCounterNumber234",
+                                "pmCounterNumber235",
+                                "pmCounterNumber236",
+                                "pmCounterNumber237",
+                                "pmCounterNumber238",
+                                "pmCounterNumber239",
+                                "pmCounterNumber240",
+                                "pmCounterNumber241",
+                                "pmCounterNumber242",
+                                "pmCounterNumber243",
+                                "pmCounterNumber244",
+                                "pmCounterNumber245",
+                                "pmCounterNumber246",
+                                "pmCounterNumber247",
+                                "pmCounterNumber248",
+                                "pmCounterNumber249",
+                                "pmCounterNumber250",
+                                "pmCounterNumber251",
+                                "pmCounterNumber252",
+                                "pmCounterNumber252Qos",
+                                "pmCounterNumber254",
+                                "pmCounterNumber254Qos"
+                            ]
+                        },
+                        "measValuesList": [
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,GNBDUFunction=1,NRCellDU=32",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 2,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 3,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 4,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 5,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 6,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 7,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 8,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 9,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 10,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 11,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 12,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 13,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 14,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 15,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 16,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 17,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 18,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 19,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 20,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 21,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 22,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 23,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 24,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 25,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 26,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 27,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 28,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 29,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 30,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 31,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 32,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 33,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 34,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 35,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 36,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 37,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 38,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 39,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 40,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 41,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 42,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 43,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 44,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 45,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 46,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 47,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 48,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 49,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 50,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 51,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 52,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 53,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 54,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 55,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 56,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 57,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 58,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 59,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 60,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 61,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 62,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 63,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 64,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 65,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 66,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 67,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 68,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 69,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 70,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 71,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 72,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 73,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 74,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 75,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 76,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 77,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 78,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 79,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 80,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 81,
+                                        "sValue": "0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 82,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 83,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 84,
+                                        "sValue": "0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 85,
+                                        "sValue": "0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 86,
+                                        "sValue": "0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 87,
+                                        "sValue": "0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 88,
+                                        "sValue": "0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 89,
+                                        "sValue": "0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 90,
+                                        "sValue": "0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 91,
+                                        "sValue": "0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 92,
+                                        "sValue": "0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 93,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 94,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 95,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 96,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 97,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 98,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 99,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 100,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 101,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 102,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 103,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 104,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 105,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 106,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 107,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 108,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 109,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 110,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 111,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 112,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 113,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 114,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 115,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 116,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 117,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 118,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 119,
+                                        "sValue": "0,0,0,0"
+                                    },
+                                    {
+                                        "p": 120,
+                                        "sValue": "0,0,0,0"
+                                    },
+                                    {
+                                        "p": 121,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 122,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 123,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 124,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 125,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 126,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 127,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 128,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 129,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 130,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 131,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 132,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 133,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 134,
+                                        "sValue": "0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 135,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 136,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 137,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 138,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 139,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 140,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 141,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 142,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 143,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 144,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 145,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 146,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 147,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 148,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 149,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 150,
+                                        "sValue": "0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 151,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 152,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 153,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 154,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 155,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 156,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 157,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 158,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 159,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 160,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 161,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 162,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 163,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 164,
+                                        "sValue": "0"
+                                    }
+                                ]
+                            },
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,GNBDUFunction=1,NRCellDU=31",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 2,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 3,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 4,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 5,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 6,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 7,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 8,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 9,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 10,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 11,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 12,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 13,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 14,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 15,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 16,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 17,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 18,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 19,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 20,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 21,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 22,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 23,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 24,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 25,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 26,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 27,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 28,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 29,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 30,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 31,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 32,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 33,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 34,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 35,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 36,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 37,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 38,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 39,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 40,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 41,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 42,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 43,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 44,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 45,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 46,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 47,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 48,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 49,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 50,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 51,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 52,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 53,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 54,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 55,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 56,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 57,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 58,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 59,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 60,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 61,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 62,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 63,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 64,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 65,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 66,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 67,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 68,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 69,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 70,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 71,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 72,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 73,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 74,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 75,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 76,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 77,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 78,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 79,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 80,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 81,
+                                        "sValue": "0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 82,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 83,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 84,
+                                        "sValue": "0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 85,
+                                        "sValue": "0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 86,
+                                        "sValue": "0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 87,
+                                        "sValue": "0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 88,
+                                        "sValue": "0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 89,
+                                        "sValue": "0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 90,
+                                        "sValue": "0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 91,
+                                        "sValue": "0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 92,
+                                        "sValue": "0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 93,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 94,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 95,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 96,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 97,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 98,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 99,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 100,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 101,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 102,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 103,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 104,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 105,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 106,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 107,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 108,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 109,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 110,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 111,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 112,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 113,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 114,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 115,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 116,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 117,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 118,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 119,
+                                        "sValue": "0,0,0,0"
+                                    },
+                                    {
+                                        "p": 120,
+                                        "sValue": "0,0,0,0"
+                                    },
+                                    {
+                                        "p": 121,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 122,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 123,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 124,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 125,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 126,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 127,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 128,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 129,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 130,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 131,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 132,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 133,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 134,
+                                        "sValue": "0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 135,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 136,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 137,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 138,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 139,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 140,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 141,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 142,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 143,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 144,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 145,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 146,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 147,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 148,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 149,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 150,
+                                        "sValue": "0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 151,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 152,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 153,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 154,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 155,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 156,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 157,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 158,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 159,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 160,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 161,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 162,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 163,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 164,
+                                        "sValue": "0"
+                                    }
+                                ]
+                            },
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,GNBDUFunction=1,NRCellDU=2",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 2,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 3,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 4,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 5,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 6,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 7,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 8,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 9,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 10,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 11,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 12,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 13,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 14,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 15,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 16,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 17,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 18,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 19,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 20,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 21,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 22,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 23,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 24,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 25,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 26,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 27,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 28,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 29,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 30,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 31,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 32,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 33,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 34,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 35,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 36,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 37,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 38,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 39,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 40,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 41,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 42,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 43,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 44,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 45,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 46,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 47,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 48,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 49,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 50,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 51,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 52,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 53,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 54,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 55,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 56,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 57,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 58,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 59,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 60,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 61,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 62,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 63,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 64,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 65,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 66,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 67,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 68,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 69,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 70,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 71,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 72,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 73,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 74,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 75,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 76,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 77,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 78,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 79,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 80,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 81,
+                                        "sValue": "0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 82,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 83,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 84,
+                                        "sValue": "0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 85,
+                                        "sValue": "0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 86,
+                                        "sValue": "0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 87,
+                                        "sValue": "0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 88,
+                                        "sValue": "0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 89,
+                                        "sValue": "0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 90,
+                                        "sValue": "0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 91,
+                                        "sValue": "0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 92,
+                                        "sValue": "0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 93,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 94,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 95,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 96,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 97,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 98,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 99,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 100,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 101,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 102,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 103,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 104,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 105,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 106,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 107,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 108,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 109,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 110,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 111,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 112,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 113,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 114,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 115,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 116,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 117,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 118,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 119,
+                                        "sValue": "0,0,0,0"
+                                    },
+                                    {
+                                        "p": 120,
+                                        "sValue": "0,0,0,0"
+                                    },
+                                    {
+                                        "p": 121,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 122,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 123,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 124,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 125,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 126,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 127,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 128,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 129,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 130,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 131,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 132,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 133,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 134,
+                                        "sValue": "0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 135,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 136,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 137,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 138,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 139,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 140,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 141,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 142,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 143,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 144,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 145,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 146,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 147,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 148,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 149,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 150,
+                                        "sValue": "0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 151,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 152,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 153,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 154,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 155,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 156,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 157,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 158,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 159,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 160,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 161,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 162,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 163,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 164,
+                                        "sValue": "0"
+                                    }
+                                ]
+                            },
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,GNBDUFunction=1,NRCellDU=1",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 2,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 3,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 4,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 5,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 6,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 7,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 8,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 9,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 10,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 11,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 12,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 13,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 14,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 15,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 16,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 17,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 18,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 19,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 20,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 21,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 22,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 23,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 24,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 25,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 26,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 27,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 28,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 29,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 30,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 31,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 32,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 33,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 34,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 35,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 36,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 37,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 38,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 39,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 40,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 41,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 42,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 43,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 44,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 45,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 46,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 47,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 48,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 49,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 50,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 51,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 52,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 53,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 54,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 55,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 56,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 57,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 58,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 59,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 60,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 61,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 62,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 63,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 64,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 65,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 66,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 67,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 68,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 69,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 70,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 71,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 72,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 73,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 74,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 75,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 76,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 77,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 78,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 79,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 80,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 81,
+                                        "sValue": "0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 82,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 83,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 84,
+                                        "sValue": "0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 85,
+                                        "sValue": "0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 86,
+                                        "sValue": "0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 87,
+                                        "sValue": "0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 88,
+                                        "sValue": "0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 89,
+                                        "sValue": "0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 90,
+                                        "sValue": "0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 91,
+                                        "sValue": "0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 92,
+                                        "sValue": "0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 93,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 94,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 95,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 96,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 97,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 98,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 99,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 100,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 101,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 102,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 103,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 104,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 105,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 106,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 107,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 108,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 109,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 110,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 111,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 112,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 113,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 114,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 115,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 116,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 117,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 118,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 119,
+                                        "sValue": "0,0,0,0"
+                                    },
+                                    {
+                                        "p": 120,
+                                        "sValue": "0,0,0,0"
+                                    },
+                                    {
+                                        "p": 121,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 122,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 123,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 124,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 125,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 126,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 127,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 128,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 129,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 130,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 131,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 132,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 133,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 134,
+                                        "sValue": "0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 135,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 136,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 137,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 138,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 139,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 140,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 141,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 142,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 143,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 144,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 145,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 146,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 147,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 148,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 149,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 150,
+                                        "sValue": "0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 151,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 152,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 153,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 154,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 155,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 156,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 157,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 158,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 159,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 160,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 161,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 162,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 163,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 164,
+                                        "sValue": "0"
+                                    }
+                                ]
+                            }
+                        ]
+                    },
+                    {
+                        "measInfoId": {
+                            "sMeasInfoId": "PM=1,PmGroup=NRSectorCarrier_GNBDU"
+                        },
+                        "measTypes": {
+                            "sMeasTypesList": [
+                                "pmCounterNumber256",
+                                "pmCounterNumber257",
+                                "pmCounterNumber258",
+                                "pmCounterNumber259",
+                                "pmCounterNumber260",
+                                "pmCounterNumber261",
+                                "pmCounterNumber262",
+                                "pmCounterNumber263",
+                                "pmCounterNumber263On",
+                                "pmCounterNumber265",
+                                "pmCounterNumber266",
+                                "pmCounterNumber267",
+                                "pmCounterNumber267Auto",
+                                "pmCounterNumber267AutoCbrs",
+                                "pmCounterNumber267Man",
+                                "pmCounterNumber267ManCbrs"
+                            ]
+                        },
+                        "measValuesList": [
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,GNBDUFunction=1,NRSectorCarrier=32",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 2,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 3,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 4,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 5,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 6,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 7,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 8,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 9,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 10,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 11,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 12,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 13,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 14,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 15,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 16,
+                                        "sValue": "0"
+                                    }
+                                ]
+                            },
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,GNBDUFunction=1,NRSectorCarrier=31",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 2,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 3,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 4,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 5,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 6,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 7,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 8,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 9,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 10,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 11,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 12,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 13,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 14,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 15,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 16,
+                                        "sValue": "0"
+                                    }
+                                ]
+                            },
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,GNBDUFunction=1,NRSectorCarrier=2",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 2,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 3,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 4,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 5,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 6,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 7,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 8,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 9,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 10,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 11,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 12,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 13,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 14,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 15,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 16,
+                                        "sValue": "0"
+                                    }
+                                ]
+                            },
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,GNBDUFunction=1,NRSectorCarrier=1",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 2,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 3,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 4,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 5,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 6,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 7,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 8,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 9,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 10,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 11,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 12,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 13,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 14,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 15,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 16,
+                                        "sValue": "0"
+                                    }
+                                ]
+                            }
+                        ]
+                    },
+                    {
+                        "measInfoId": {
+                            "sMeasInfoId": "PM=1,PmGroup=EUtranCellFDD"
+                        },
+                        "measTypes": {
+                            "sMeasTypesList": [
+                                "pmCounterNumber272",
+                                "pmCounterNumber273",
+                                "pmCounterNumber274",
+                                "pmCounterNumber275",
+                                "pmCounterNumber276",
+                                "pmCounterNumber277",
+                                "pmCounterNumber278"
+                            ]
+                        },
+                        "measValuesList": [
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,ENodeBFunction=1,EUtranCellFDD=2",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "0,0,0,0"
+                                    },
+                                    {
+                                        "p": 2,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 3,
+                                        "sValue": "0,0,0,0"
+                                    },
+                                    {
+                                        "p": 4,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 5,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 6,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 7,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    }
+                                ]
+                            },
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,ENodeBFunction=1,EUtranCellFDD=1",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "0,0,0,0"
+                                    },
+                                    {
+                                        "p": 2,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 3,
+                                        "sValue": "0,0,0,0"
+                                    },
+                                    {
+                                        "p": 4,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 5,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 6,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 7,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    }
+                                ]
+                            }
+                        ]
+                    },
+                    {
+                        "measInfoId": {
+                            "sMeasInfoId": "PM=1,PmGroup=NRCellDU_GNBDU"
+                        },
+                        "measTypes": {
+                            "sMeasTypesList": [
+                                "pmCounterNumber279",
+                                "pmCounterNumber280",
+                                "pmCounterNumber281",
+                                "pmCounterNumber282",
+                                "pmCounterNumber283",
+                                "pmCounterNumber284",
+                                "pmCounterNumber285",
+                                "pmCounterNumber286",
+                                "pmCounterNumber287",
+                                "pmCounterNumber288",
+                                "pmCounterNumber289",
+                                "pmCounterNumber290",
+                                "pmCounterNumber291",
+                                "pmCounterNumber292",
+                                "pmCounterNumber293",
+                                "pmCounterNumber294",
+                                "pmCounterNumber295",
+                                "pmCounterNumber296",
+                                "pmCounterNumber274"
+                            ]
+                        },
+                        "measValuesList": [
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,GNBDUFunction=1,NRCellDU=32",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 2,
+                                        "sValue": "0,0,0,0"
+                                    },
+                                    {
+                                        "p": 3,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 4,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 5,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 6,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 7,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 8,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 9,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 10,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 11,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 12,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 13,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 14,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 15,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 16,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 17,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 18,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 19,
+                                        "sValue": "0,0,0,0"
+                                    }
+                                ]
+                            },
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,GNBDUFunction=1,NRCellDU=31",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 2,
+                                        "sValue": "0,0,0,0"
+                                    },
+                                    {
+                                        "p": 3,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 4,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 5,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 6,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 7,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 8,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 9,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 10,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 11,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 12,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 13,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 14,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 15,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 16,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 17,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 18,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 19,
+                                        "sValue": "0,0,0,0"
+                                    }
+                                ]
+                            },
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,GNBDUFunction=1,NRCellDU=2",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 2,
+                                        "sValue": "0,0,0,0"
+                                    },
+                                    {
+                                        "p": 3,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 4,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 5,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 6,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 7,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 8,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 9,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 10,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 11,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 12,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 13,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 14,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 15,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 16,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 17,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 18,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 19,
+                                        "sValue": "0,0,0,0"
+                                    }
+                                ]
+                            },
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,GNBDUFunction=1,NRCellDU=1",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 2,
+                                        "sValue": "0,0,0,0"
+                                    },
+                                    {
+                                        "p": 3,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 4,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 5,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 6,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 7,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 8,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 9,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 10,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 11,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 12,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 13,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 14,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 15,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 16,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 17,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 18,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 19,
+                                        "sValue": "0,0,0,0"
+                                    }
+                                ]
+                            }
+                        ]
+                    },
+                    {
+                        "measInfoId": {
+                            "sMeasInfoId": "PM=1,PmGroup=EUtranCellFDD"
+                        },
+                        "measTypes": {
+                            "sMeasTypesList": [
+                                "pmCounterNumber297"
+                            ]
+                        },
+                        "measValuesList": [
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,ENodeBFunction=1,EUtranCellFDD=2",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    }
+                                ]
+                            },
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,ENodeBFunction=1,EUtranCellFDD=1",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    }
+                                ]
+                            }
+                        ]
+                    },
+                    {
+                        "measInfoId": {
+                            "sMeasInfoId": "PM=1,PmGroup=NRCellDU_GNBDU"
+                        },
+                        "measTypes": {
+                            "sMeasTypesList": [
+                                "pmCounterNumber297F0Distr",
+                                "pmCounterNumber297F2Distr"
+                            ]
+                        },
+                        "measValuesList": [
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,GNBDUFunction=1,NRCellDU=32",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 2,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    }
+                                ]
+                            },
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,GNBDUFunction=1,NRCellDU=31",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 2,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    }
+                                ]
+                            },
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,GNBDUFunction=1,NRCellDU=2",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 2,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    }
+                                ]
+                            },
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,GNBDUFunction=1,NRCellDU=1",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 2,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    }
+                                ]
+                            }
+                        ]
+                    },
+                    {
+                        "measInfoId": {
+                            "sMeasInfoId": "PM=1,PmGroup=GNBCUCPFunction_GNBCUCP"
+                        },
+                        "measTypes": {
+                            "sMeasTypesList": [
+                                "pmCounterNumber300",
+                                "pmCounterNumber301",
+                                "pmCounterNumber302",
+                                "pmCounterNumber303",
+                                "pmCounterNumber304",
+                                "pmCounterNumber305"
+                            ]
+                        },
+                        "measValuesList": [
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,GNBCUCPFunction=1",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 2,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 3,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 4,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 5,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 6,
+                                        "sValue": "0"
+                                    }
+                                ]
+                            }
+                        ]
+                    },
+                    {
+                        "measInfoId": {
+                            "sMeasInfoId": "PM=1,PmGroup=NRCellCU_GNBCUCP"
+                        },
+                        "measTypes": {
+                            "sMeasTypesList": [
+                                "pmCounterNumber306",
+                                "pmCounterNumber307",
+                                "pmCounterNumber308",
+                                "pmCounterNumber309",
+                                "pmCounterNumber310",
+                                "pmCounterNumber311",
+                                "pmCounterNumber312",
+                                "pmCounterNumber313",
+                                "pmCounterNumber314",
+                                "pmCounterNumber315",
+                                "pmCounterNumber316",
+                                "pmCounterNumber317",
+                                "pmCounterNumber318",
+                                "pmCounterNumber319",
+                                "pmCounterNumber320",
+                                "pmCounterNumber321",
+                                "pmCounterNumber322",
+                                "pmCounterNumber323",
+                                "pmCounterNumber324",
+                                "pmCounterNumber324Act",
+                                "pmCounterNumber326",
+                                "pmCounterNumber326Act",
+                                "pmCounterNumber328",
+                                "pmCounterNumber329",
+                                "pmCounterNumber330",
+                                "pmCounterNumber331",
+                                "pmCounterNumber332",
+                                "pmCounterNumber333",
+                                "pmCounterNumber334",
+                                "pmCounterNumber335",
+                                "pmCounterNumber336",
+                                "pmCounterNumber337",
+                                "pmCounterNumber338",
+                                "pmCounterNumber339",
+                                "pmCounterNumber340",
+                                "pmCounterNumber341",
+                                "pmCounterNumber342",
+                                "pmCounterNumber343",
+                                "pmCounterNumber343Mos",
+                                "pmCounterNumber345",
+                                "pmCounterNumber345Mos",
+                                "pmCounterNumber347",
+                                "pmCounterNumber348",
+                                "pmCounterNumber349",
+                                "pmCounterNumber350",
+                                "pmCounterNumber350Mos",
+                                "pmCounterNumber350Reatt",
+                                "pmCounterNumber350ReattMos",
+                                "pmCounterNumber354",
+                                "pmCounterNumber354Mos",
+                                "pmCounterNumber301",
+                                "pmCounterNumber302",
+                                "pmCounterNumber303",
+                                "pmCounterNumber304",
+                                "pmCounterNumber305",
+                                "pmCounterNumber356",
+                                "pmCounterNumber357",
+                                "pmCounterNumber358"
+                            ]
+                        },
+                        "measValuesList": [
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,GNBCUCPFunction=1,NRCellCU=32",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 2,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 3,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 4,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 5,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 6,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 7,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 8,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 9,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 10,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 11,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 12,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 13,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 14,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 15,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 16,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 17,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 18,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 19,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 20,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 21,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 22,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 23,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 24,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 25,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 26,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 27,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 28,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 29,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 30,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 31,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 32,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 33,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 34,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 35,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 36,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 37,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 38,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 39,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 40,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 41,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 42,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 43,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 44,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 45,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 46,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 47,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 48,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 49,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 50,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 51,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 52,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 53,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 54,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 55,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 56,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 57,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 58,
+                                        "sValue": "0"
+                                    }
+                                ]
+                            },
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,GNBCUCPFunction=1,NRCellCU=31",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 2,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 3,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 4,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 5,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 6,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 7,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 8,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 9,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 10,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 11,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 12,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 13,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 14,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 15,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 16,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 17,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 18,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 19,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 20,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 21,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 22,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 23,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 24,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 25,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 26,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 27,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 28,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 29,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 30,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 31,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 32,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 33,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 34,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 35,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 36,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 37,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 38,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 39,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 40,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 41,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 42,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 43,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 44,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 45,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 46,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 47,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 48,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 49,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 50,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 51,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 52,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 53,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 54,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 55,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 56,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 57,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 58,
+                                        "sValue": "0"
+                                    }
+                                ]
+                            },
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,GNBCUCPFunction=1,NRCellCU=2",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 2,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 3,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 4,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 5,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 6,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 7,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 8,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 9,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 10,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 11,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 12,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 13,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 14,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 15,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 16,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 17,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 18,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 19,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 20,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 21,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 22,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 23,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 24,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 25,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 26,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 27,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 28,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 29,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 30,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 31,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 32,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 33,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 34,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 35,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 36,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 37,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 38,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 39,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 40,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 41,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 42,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 43,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 44,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 45,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 46,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 47,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 48,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 49,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 50,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 51,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 52,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 53,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 54,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 55,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 56,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 57,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 58,
+                                        "sValue": "0"
+                                    }
+                                ]
+                            },
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,GNBCUCPFunction=1,NRCellCU=1",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 2,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 3,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 4,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 5,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 6,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 7,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 8,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 9,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 10,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 11,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 12,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 13,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 14,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 15,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 16,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 17,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 18,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 19,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 20,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 21,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 22,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 23,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 24,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 25,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 26,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 27,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 28,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 29,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 30,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 31,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 32,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 33,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 34,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 35,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 36,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 37,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 38,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 39,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 40,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 41,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 42,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 43,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 44,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 45,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 46,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 47,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 48,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 49,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 50,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 51,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 52,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 53,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 54,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 55,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 56,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 57,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 58,
+                                        "sValue": "0"
+                                    }
+                                ]
+                            }
+                        ]
+                    },
+                    {
+                        "measInfoId": {
+                            "sMeasInfoId": "PM=1,PmGroup=GNBDUFunction_GNBDU"
+                        },
+                        "measTypes": {
+                            "sMeasTypesList": [
+                                "pmCounterNumber359",
+                                "pmCounterNumber360",
+                                "pmCounterNumber361",
+                                "pmCounterNumber362",
+                                "pmCounterNumber363",
+                                "pmCounterNumber364",
+                                "pmCounterNumber365",
+                                "pmCounterNumber366",
+                                "pmCounterNumber367",
+                                "pmCounterNumber368",
+                                "pmCounterNumber369",
+                                "pmCounterNumber370",
+                                "pmCounterNumber371",
+                                "pmCounterNumber372",
+                                "pmCounterNumber373",
+                                "pmCounterNumber374",
+                                "pmCounterNumber375",
+                                "pmCounterNumber376",
+                                "pmCounterNumber377"
+                            ]
+                        },
+                        "measValuesList": [
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,GNBDUFunction=1",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 2,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 3,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 4,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 5,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 6,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 7,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 8,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 9,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 10,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 11,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 12,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 13,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 14,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 15,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 16,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 17,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 18,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 19,
+                                        "sValue": "0"
+                                    }
+                                ]
+                            }
+                        ]
+                    },
+                    {
+                        "measInfoId": {
+                            "sMeasInfoId": "PM=1,PmGroup=NRCellDU_GNBDU"
+                        },
+                        "measTypes": {
+                            "sMeasTypesList": [
+                                "pmCounterNumber378",
+                                "pmCounterNumber379",
+                                "pmCounterNumber380",
+                                "pmCounterNumber381",
+                                "pmCounterNumber382",
+                                "pmCounterNumber383",
+                                "pmCounterNumber384",
+                                "pmCounterNumber385",
+                                "pmCounterNumber386",
+                                "pmCounterNumber306",
+                                "pmCounterNumber307",
+                                "pmCounterNumber307ual",
+                                "pmCounterNumber388",
+                                "pmCounterNumber389",
+                                "pmCounterNumber390",
+                                "pmCounterNumber391",
+                                "pmCounterNumber392",
+                                "pmCounterNumber393",
+                                "pmCounterNumber394",
+                                "pmCounterNumber395",
+                                "pmCounterNumber396",
+                                "pmCounterNumber397",
+                                "pmCounterNumber398",
+                                "pmCounterNumber399",
+                                "pmCounterNumber399Broadcasting",
+                                "pmCounterNumber401",
+                                "pmCounterNumber402",
+                                "pmCounterNumber403",
+                                "pmCounterNumber404",
+                                "pmCounterNumber405",
+                                "pmCounterNumber406",
+                                "pmCounterNumber407",
+                                "pmCounterNumber407Qos",
+                                "pmCounterNumber409",
+                                "pmCounterNumber410",
+                                "pmCounterNumber410Drb",
+                                "pmCounterNumber410DrbQos",
+                                "pmCounterNumber413",
+                                "pmCounterNumber413ResUe",
+                                "pmCounterNumber415",
+                                "pmCounterNumber416",
+                                "pmCounterNumber417",
+                                "pmCounterNumber418",
+                                "pmCounterNumber419",
+                                "pmCounterNumber420",
+                                "pmCounterNumber421",
+                                "pmCounterNumber422",
+                                "pmCounterNumber423",
+                                "pmCounterNumber424",
+                                "pmCounterNumber425",
+                                "pmCounterNumber426",
+                                "pmCounterNumber427",
+                                "pmCounterNumber428",
+                                "pmCounterNumber429",
+                                "pmCounterNumber430",
+                                "pmCounterNumber431",
+                                "pmCounterNumber432",
+                                "pmCounterNumber433",
+                                "pmCounterNumber434",
+                                "pmCounterNumber435",
+                                "pmCounterNumber436",
+                                "pmCounterNumber437",
+                                "pmCounterNumber438",
+                                "pmCounterNumber439",
+                                "pmCounterNumber440",
+                                "pmCounterNumber441"
+                            ]
+                        },
+                        "measValuesList": [
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,GNBDUFunction=1,NRCellDU=32",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 2,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 3,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 4,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 5,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 6,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 7,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 8,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 9,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 10,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 11,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 12,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 13,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 14,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 15,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 16,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 17,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 18,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 19,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 20,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 21,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 22,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 23,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 24,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 25,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 26,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 27,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 28,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 29,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 30,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 31,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 32,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 33,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 34,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 35,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 36,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 37,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 38,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 39,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 40,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 41,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 42,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 43,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 44,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 45,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 46,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 47,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 48,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 49,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 50,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 51,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 52,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 53,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 54,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 55,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 56,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 57,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 58,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 59,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 60,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 61,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 62,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 63,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 64,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 65,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 66,
+                                        "sValue": "0"
+                                    }
+                                ]
+                            },
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,GNBDUFunction=1,NRCellDU=31",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 2,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 3,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 4,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 5,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 6,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 7,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 8,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 9,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 10,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 11,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 12,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 13,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 14,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 15,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 16,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 17,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 18,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 19,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 20,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 21,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 22,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 23,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 24,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 25,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 26,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 27,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 28,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 29,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 30,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 31,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 32,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 33,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 34,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 35,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 36,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 37,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 38,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 39,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 40,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 41,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 42,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 43,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 44,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 45,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 46,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 47,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 48,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 49,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 50,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 51,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 52,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 53,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 54,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 55,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 56,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 57,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 58,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 59,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 60,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 61,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 62,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 63,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 64,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 65,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 66,
+                                        "sValue": "0"
+                                    }
+                                ]
+                            },
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,GNBDUFunction=1,NRCellDU=2",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 2,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 3,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 4,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 5,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 6,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 7,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 8,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 9,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 10,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 11,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 12,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 13,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 14,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 15,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 16,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 17,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 18,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 19,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 20,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 21,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 22,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 23,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 24,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 25,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 26,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 27,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 28,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 29,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 30,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 31,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 32,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 33,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 34,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 35,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 36,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 37,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 38,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 39,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 40,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 41,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 42,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 43,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 44,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 45,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 46,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 47,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 48,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 49,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 50,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 51,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 52,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 53,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 54,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 55,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 56,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 57,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 58,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 59,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 60,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 61,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 62,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 63,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 64,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 65,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 66,
+                                        "sValue": "0"
+                                    }
+                                ]
+                            },
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,GNBDUFunction=1,NRCellDU=1",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 2,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 3,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 4,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 5,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 6,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 7,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 8,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 9,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 10,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 11,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 12,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 13,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 14,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 15,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 16,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 17,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 18,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 19,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 20,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 21,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 22,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 23,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 24,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 25,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 26,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 27,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 28,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 29,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 30,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 31,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 32,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 33,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 34,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 35,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 36,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 37,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 38,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 39,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 40,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 41,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 42,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 43,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 44,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 45,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 46,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 47,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 48,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 49,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 50,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 51,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 52,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 53,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 54,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 55,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 56,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 57,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 58,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 59,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 60,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 61,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 62,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 63,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 64,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 65,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 66,
+                                        "sValue": "0"
+                                    }
+                                ]
+                            }
+                        ]
+                    },
+                    {
+                        "measInfoId": {
+                            "sMeasInfoId": "PM=1,PmGroup=PpControlLink_GNBCUUP"
+                        },
+                        "measTypes": {
+                            "sMeasTypesList": [
+                                "pmCounterNumber310",
+                                "pmCounterNumber311",
+                                "pmCounterNumber312",
+                                "pmCounterNumber313",
+                                "pmCounterNumber314",
+                                "pmCounterNumber347",
+                                "pmCounterNumber348",
+                                "pmCounterNumber349"
+                            ]
+                        },
+                        "measValuesList": [
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,GNBCUUPFunction=1,PpControlTermination=1,PpControlLink=internal",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 2,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 3,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 4,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 5,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 6,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 7,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 8,
+                                        "sValue": "0"
+                                    }
+                                ]
+                            }
+                        ]
+                    },
+                    {
+                        "measInfoId": {
+                            "sMeasInfoId": "PM=1,PmGroup=EUtranCellFDD"
+                        },
+                        "measTypes": {
+                            "sMeasTypesList": [
+                                "pmCounterNumber442",
+                                "pmCounterNumber443",
+                                "pmCounterNumber444",
+                                "pmCounterNumber445",
+                                "pmCounterNumber446",
+                                "pmCounterNumber447",
+                                "pmCounterNumber448",
+                                "pmCounterNumber448PCell",
+                                "pmCounterNumber448SCell",
+                                "pmCounterNumber448Volte",
+                                "pmCounterNumber452",
+                                "pmCounterNumber453",
+                                "pmCounterNumber454",
+                                "pmCounterNumber455",
+                                "pmCounterNumber114",
+                                "pmCounterNumber456",
+                                "pmCounterNumber457",
+                                "pmCounterNumber458",
+                                "pmCounterNumber122",
+                                "pmCounterNumber459",
+                                "pmCounterNumber460",
+                                "pmCounterNumber461",
+                                "pmCounterNumber462",
+                                "pmCounterNumber131",
+                                "pmCounterNumber463",
+                                "pmCounterNumber464",
+                                "pmCounterNumber143",
+                                "pmCounterNumber145",
+                                "pmCounterNumber147",
+                                "pmCounterNumber14916qam",
+                                "pmCounterNumber149256Qam",
+                                "pmCounterNumber14964Qam",
+                                "pmCounterNumber149Iua16qam",
+                                "pmCounterNumber149IuaQpsk",
+                                "pmCounterNumber149Qpsk",
+                                "pmCounterNumber471",
+                                "pmCounterNumber472",
+                                "pmCounterNumber473",
+                                "pmCounterNumber474",
+                                "pmCounterNumber475",
+                                "pmCounterNumber476",
+                                "pmCounterNumber477",
+                                "pmCounterNumber478",
+                                "pmCounterNumber248",
+                                "pmCounterNumber249",
+                                "pmCounterNumber479",
+                                "pmCounterNumber250",
+                                "pmCounterNumber251"
+                            ]
+                        },
+                        "measValuesList": [
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,ENodeBFunction=1,EUtranCellFDD=2",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 2,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 3,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 4,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 5,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 6,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 7,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 8,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 9,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 10,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 11,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 12,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 13,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 14,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 15,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 16,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 17,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 18,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 19,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 20,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 21,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 22,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 23,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 24,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 25,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 26,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 27,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 28,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 29,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 30,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 31,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 32,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 33,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 34,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 35,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 36,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 37,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 38,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 39,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 40,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 41,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 42,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 43,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 44,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 45,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 46,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 47,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 48,
+                                        "sValue": "0"
+                                    }
+                                ]
+                            },
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,ENodeBFunction=1,EUtranCellFDD=1",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 2,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 3,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 4,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 5,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 6,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 7,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 8,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 9,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 10,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 11,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 12,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 13,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 14,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 15,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 16,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 17,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 18,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 19,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 20,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 21,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 22,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 23,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 24,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 25,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 26,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 27,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 28,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 29,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 30,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 31,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 32,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 33,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 34,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 35,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 36,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 37,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 38,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 39,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 40,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 41,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 42,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 43,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 44,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 45,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 46,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 47,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 48,
+                                        "sValue": "0"
+                                    }
+                                ]
+                            }
+                        ]
+                    },
+                    {
+                        "measInfoId": {
+                            "sMeasInfoId": "PM=1,PmGroup=FieldReplaceableUnit"
+                        },
+                        "measTypes": {
+                            "sMeasTypesList": [
+                                "pmCounterNumber480",
+                                "pmCounterNumber481"
+                            ]
+                        },
+                        "measValuesList": [
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,Equipment=1,FieldReplaceableUnit=Radio-S3-1",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 2,
+                                        "sValue": "0,0,0"
+                                    }
+                                ]
+                            },
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,Equipment=1,FieldReplaceableUnit=Radio-S2-1",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 2,
+                                        "sValue": "0,0,0"
+                                    }
+                                ]
+                            },
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,Equipment=1,FieldReplaceableUnit=Radio-S1-1",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 2,
+                                        "sValue": "0,0,0"
+                                    }
+                                ]
+                            },
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,Equipment=1,FieldReplaceableUnit=R608",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 2,
+                                        "sValue": "0,0,0"
+                                    }
+                                ]
+                            },
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,Equipment=1,FieldReplaceableUnit=BB-1",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 2,
+                                        "sValue": "0,0,0"
+                                    }
+                                ]
+                            }
+                        ]
+                    },
+                    {
+                        "measInfoId": {
+                            "sMeasInfoId": "PM=1,PmGroup=RiEthernetPort"
+                        },
+                        "measTypes": {
+                            "sMeasTypesList": [
+                                "pmCounterNumber482",
+                                "pmCounterNumber483",
+                                "pmCounterNumber484",
+                                "pmCounterNumber485",
+                                "pmCounterNumber486",
+                                "pmCounterNumber487",
+                                "pmCounterNumber488",
+                                "pmCounterNumber489",
+                                "pmCounterNumber490",
+                                "pmCounterNumber491"
+                            ]
+                        },
+                        "measValuesList": [
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,Equipment=1,FieldReplaceableUnit=R608,RiPort=P,RiEthernetPort=1",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 2,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 3,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 4,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 5,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 6,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 7,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 8,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 9,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 10,
+                                        "sValue": "0"
+                                    }
+                                ]
+                            },
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,Equipment=1,FieldReplaceableUnit=R608,RiPort=N,RiEthernetPort=1",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 2,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 3,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 4,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 5,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 6,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 7,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 8,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 9,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 10,
+                                        "sValue": "0"
+                                    }
+                                ]
+                            },
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,Equipment=1,FieldReplaceableUnit=BB-1,RiPort=B,RiEthernetPort=1",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 2,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 3,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 4,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 5,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 6,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 7,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 8,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 9,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 10,
+                                        "sValue": "0"
+                                    }
+                                ]
+                            },
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,Equipment=1,FieldReplaceableUnit=BB-1,RiPort=A,RiEthernetPort=1",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 2,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 3,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 4,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 5,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 6,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 7,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 8,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 9,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 10,
+                                        "sValue": "0"
+                                    }
+                                ]
+                            }
+                        ]
+                    },
+                    {
+                        "measInfoId": {
+                            "sMeasInfoId": "PM=1,PmGroup=RiLink"
+                        },
+                        "measTypes": {
+                            "sMeasTypesList": [
+                                "pmCounterNumber492",
+                                "pmCounterNumber493",
+                                "pmCounterNumber494",
+                                "pmCounterNumber495"
+                            ]
+                        },
+                        "measValuesList": [
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,Equipment=1,RiLink=S3-1",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 2,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 3,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 4,
+                                        "sValue": "0"
+                                    }
+                                ]
+                            },
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,Equipment=1,RiLink=S2-1",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 2,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 3,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 4,
+                                        "sValue": "0"
+                                    }
+                                ]
+                            },
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,Equipment=1,RiLink=S1-1",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 2,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 3,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 4,
+                                        "sValue": "0"
+                                    }
+                                ]
+                            },
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,Equipment=1,RiLink=R608-2",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 2,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 3,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 4,
+                                        "sValue": "0"
+                                    }
+                                ]
+                            },
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,Equipment=1,RiLink=R608-1",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 2,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 3,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 4,
+                                        "sValue": "0"
+                                    }
+                                ]
+                            }
+                        ]
+                    },
+                    {
+                        "measInfoId": {
+                            "sMeasInfoId": "PM=1,PmGroup=RiPort"
+                        },
+                        "measTypes": {
+                            "sMeasTypesList": [
+                                "pmCounterNumber496",
+                                "pmCounterNumber497",
+                                "pmCounterNumber498"
+                            ]
+                        },
+                        "measValuesList": [
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,Equipment=1,FieldReplaceableUnit=Radio-S3-1,RiPort=DATA_2",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 2,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 3,
+                                        "sValue": "0"
+                                    }
+                                ]
+                            },
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,Equipment=1,FieldReplaceableUnit=Radio-S3-1,RiPort=DATA_1",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 2,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 3,
+                                        "sValue": "0"
+                                    }
+                                ]
+                            },
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,Equipment=1,FieldReplaceableUnit=Radio-S2-1,RiPort=DATA_2",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 2,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 3,
+                                        "sValue": "0"
+                                    }
+                                ]
+                            },
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,Equipment=1,FieldReplaceableUnit=Radio-S2-1,RiPort=DATA_1",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 2,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 3,
+                                        "sValue": "0"
+                                    }
+                                ]
+                            },
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,Equipment=1,FieldReplaceableUnit=Radio-S1-1,RiPort=DATA_2",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 2,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 3,
+                                        "sValue": "0"
+                                    }
+                                ]
+                            },
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,Equipment=1,FieldReplaceableUnit=Radio-S1-1,RiPort=DATA_1",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 2,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 3,
+                                        "sValue": "0"
+                                    }
+                                ]
+                            },
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,Equipment=1,FieldReplaceableUnit=R608,RiPort=P",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 2,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 3,
+                                        "sValue": "0"
+                                    }
+                                ]
+                            },
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,Equipment=1,FieldReplaceableUnit=R608,RiPort=N",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 2,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 3,
+                                        "sValue": "0"
+                                    }
+                                ]
+                            },
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,Equipment=1,FieldReplaceableUnit=R608,RiPort=B",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 2,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 3,
+                                        "sValue": "0"
+                                    }
+                                ]
+                            },
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,Equipment=1,FieldReplaceableUnit=R608,RiPort=A",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 2,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 3,
+                                        "sValue": "0"
+                                    }
+                                ]
+                            },
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,Equipment=1,FieldReplaceableUnit=BB-1,RiPort=K",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 2,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 3,
+                                        "sValue": "0"
+                                    }
+                                ]
+                            },
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,Equipment=1,FieldReplaceableUnit=BB-1,RiPort=C",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 2,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 3,
+                                        "sValue": "0"
+                                    }
+                                ]
+                            },
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,Equipment=1,FieldReplaceableUnit=BB-1,RiPort=B",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 2,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 3,
+                                        "sValue": "0"
+                                    }
+                                ]
+                            },
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,Equipment=1,FieldReplaceableUnit=BB-1,RiPort=A",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 2,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 3,
+                                        "sValue": "0"
+                                    }
+                                ]
+                            }
+                        ]
+                    },
+                    {
+                        "measInfoId": {
+                            "sMeasInfoId": "PM=1,PmGroup=SfpChannel"
+                        },
+                        "measTypes": {
+                            "sMeasTypesList": [
+                                "pmCounterNumber499",
+                                "pmCounterNumber500",
+                                "pmCounterNumber501"
+                            ]
+                        },
+                        "measValuesList": [
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,Equipment=1,FieldReplaceableUnit=R608,SfpModule=P,SfpChannel=1",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 2,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 3,
+                                        "sValue": "0"
+                                    }
+                                ]
+                            },
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,Equipment=1,FieldReplaceableUnit=R608,SfpModule=N,SfpChannel=1",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 2,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 3,
+                                        "sValue": "0"
+                                    }
+                                ]
+                            },
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,Equipment=1,FieldReplaceableUnit=BB-1,SfpModule=K,SfpChannel=1",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 2,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 3,
+                                        "sValue": "0"
+                                    }
+                                ]
+                            },
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,Equipment=1,FieldReplaceableUnit=Radio-S3-1,SfpModule=DATA_2,SfpChannel=1",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 2,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 3,
+                                        "sValue": "0"
+                                    }
+                                ]
+                            },
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,Equipment=1,FieldReplaceableUnit=Radio-S2-1,SfpModule=DATA_2,SfpChannel=1",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 2,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 3,
+                                        "sValue": "0"
+                                    }
+                                ]
+                            },
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,Equipment=1,FieldReplaceableUnit=Radio-S1-1,SfpModule=DATA_2,SfpChannel=1",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 2,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 3,
+                                        "sValue": "0"
+                                    }
+                                ]
+                            },
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,Equipment=1,FieldReplaceableUnit=Radio-S3-1,SfpModule=DATA_1,SfpChannel=1",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 2,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 3,
+                                        "sValue": "0"
+                                    }
+                                ]
+                            },
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,Equipment=1,FieldReplaceableUnit=Radio-S2-1,SfpModule=DATA_1,SfpChannel=1",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 2,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 3,
+                                        "sValue": "0"
+                                    }
+                                ]
+                            },
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,Equipment=1,FieldReplaceableUnit=Radio-S1-1,SfpModule=DATA_1,SfpChannel=1",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 2,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 3,
+                                        "sValue": "0"
+                                    }
+                                ]
+                            },
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,Equipment=1,FieldReplaceableUnit=BB-1,SfpModule=C,SfpChannel=1",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 2,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 3,
+                                        "sValue": "0"
+                                    }
+                                ]
+                            },
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,Equipment=1,FieldReplaceableUnit=R608,SfpModule=B,SfpChannel=1",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 2,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 3,
+                                        "sValue": "0"
+                                    }
+                                ]
+                            },
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,Equipment=1,FieldReplaceableUnit=BB-1,SfpModule=B,SfpChannel=1",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 2,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 3,
+                                        "sValue": "0"
+                                    }
+                                ]
+                            },
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,Equipment=1,FieldReplaceableUnit=R608,SfpModule=A,SfpChannel=1",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 2,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 3,
+                                        "sValue": "0"
+                                    }
+                                ]
+                            },
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,Equipment=1,FieldReplaceableUnit=BB-1,SfpModule=A,SfpChannel=1",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 2,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 3,
+                                        "sValue": "0"
+                                    }
+                                ]
+                            }
+                        ]
+                    },
+                    {
+                        "measInfoId": {
+                            "sMeasInfoId": "PM=1,PmGroup=SfpModule"
+                        },
+                        "measTypes": {
+                            "sMeasTypesList": [
+                                "pmCounterNumber502",
+                                "pmCounterNumber503"
+                            ]
+                        },
+                        "measValuesList": [
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,Equipment=1,FieldReplaceableUnit=Radio-S3-1,SfpModule=DATA_2",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 2,
+                                        "sValue": "0"
+                                    }
+                                ]
+                            },
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,Equipment=1,FieldReplaceableUnit=Radio-S3-1,SfpModule=DATA_1",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 2,
+                                        "sValue": "0"
+                                    }
+                                ]
+                            },
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,Equipment=1,FieldReplaceableUnit=Radio-S2-1,SfpModule=DATA_2",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 2,
+                                        "sValue": "0"
+                                    }
+                                ]
+                            },
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,Equipment=1,FieldReplaceableUnit=Radio-S2-1,SfpModule=DATA_1",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 2,
+                                        "sValue": "0"
+                                    }
+                                ]
+                            },
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,Equipment=1,FieldReplaceableUnit=Radio-S1-1,SfpModule=DATA_2",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 2,
+                                        "sValue": "0"
+                                    }
+                                ]
+                            },
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,Equipment=1,FieldReplaceableUnit=Radio-S1-1,SfpModule=DATA_1",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 2,
+                                        "sValue": "0"
+                                    }
+                                ]
+                            },
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,Equipment=1,FieldReplaceableUnit=R608,SfpModule=P",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 2,
+                                        "sValue": "0"
+                                    }
+                                ]
+                            },
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,Equipment=1,FieldReplaceableUnit=R608,SfpModule=N",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 2,
+                                        "sValue": "0"
+                                    }
+                                ]
+                            },
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,Equipment=1,FieldReplaceableUnit=R608,SfpModule=B",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 2,
+                                        "sValue": "0"
+                                    }
+                                ]
+                            },
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,Equipment=1,FieldReplaceableUnit=R608,SfpModule=A",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 2,
+                                        "sValue": "0"
+                                    }
+                                ]
+                            },
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,Equipment=1,FieldReplaceableUnit=BB-1,SfpModule=K",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 2,
+                                        "sValue": "0"
+                                    }
+                                ]
+                            },
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,Equipment=1,FieldReplaceableUnit=BB-1,SfpModule=C",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 2,
+                                        "sValue": "0"
+                                    }
+                                ]
+                            },
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,Equipment=1,FieldReplaceableUnit=BB-1,SfpModule=B",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 2,
+                                        "sValue": "0"
+                                    }
+                                ]
+                            },
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,Equipment=1,FieldReplaceableUnit=BB-1,SfpModule=A",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 2,
+                                        "sValue": "0"
+                                    }
+                                ]
+                            }
+                        ]
+                    },
+                    {
+                        "measInfoId": {
+                            "sMeasInfoId": "PM=1,PmGroup=EthernetPort"
+                        },
+                        "measTypes": {
+                            "sMeasTypesList": [
+                                "pmCounterNumber482",
+                                "pmCounterNumber483",
+                                "pmCounterNumber484",
+                                "pmCounterNumber485",
+                                "pmCounterNumber486",
+                                "pmCounterNumber487",
+                                "pmCounterNumber488",
+                                "pmCounterNumber489",
+                                "pmCounterNumber504",
+                                "pmCounterNumber490",
+                                "pmCounterNumber505",
+                                "pmCounterNumber506",
+                                "pmCounterNumber507",
+                                "pmCounterNumber491"
+                            ]
+                        },
+                        "measValuesList": [
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,Transport=1,EthernetPort=TN_IDL_B_1",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 2,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 3,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 4,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 5,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 6,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 7,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 8,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 9,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 10,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 11,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 12,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 13,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 14,
+                                        "sValue": "0"
+                                    }
+                                ]
+                            }
+                        ]
+                    },
+                    {
+                        "measInfoId": {
+                            "sMeasInfoId": "PM=1,PmGroup=InterfaceIPv4"
+                        },
+                        "measTypes": {
+                            "sMeasTypesList": [
+                                "pmCounterNumber508",
+                                "pmCounterNumber509",
+                                "pmCounterNumber510",
+                                "pmCounterNumber511",
+                                "pmCounterNumber512",
+                                "pmCounterNumber513",
+                                "pmCounterNumber514",
+                                "pmCounterNumber515",
+                                "pmCounterNumber516",
+                                "pmCounterNumber517"
+                            ]
+                        },
+                        "measValuesList": [
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,Transport=1,Router=vr_OAM,InterfaceIPv4=1",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 2,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 3,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 4,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 5,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 6,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 7,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 8,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 9,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 10,
+                                        "sValue": "0"
+                                    }
+                                ]
+                            },
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,Transport=1,Router=vr_NR,InterfaceIPv4=1",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 2,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 3,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 4,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 5,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 6,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 7,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 8,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 9,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 10,
+                                        "sValue": "0"
+                                    }
+                                ]
+                            },
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,Transport=1,Router=vr_LTE,InterfaceIPv4=1",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 2,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 3,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 4,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 5,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 6,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 7,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 8,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 9,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 10,
+                                        "sValue": "0"
+                                    }
+                                ]
+                            },
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,Transport=1,Router=Node_Internal_F1,InterfaceIPv4=NRDU",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 2,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 3,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 4,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 5,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 6,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 7,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 8,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 9,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 10,
+                                        "sValue": "0"
+                                    }
+                                ]
+                            },
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,Transport=1,Router=Node_Internal_F1,InterfaceIPv4=NRCUCP",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 2,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 3,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 4,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 5,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 6,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 7,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 8,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 9,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 10,
+                                        "sValue": "0"
+                                    }
+                                ]
+                            }
+                        ]
+                    },
+                    {
+                        "measInfoId": {
+                            "sMeasInfoId": "PM=1,PmGroup=SctpAssociation"
+                        },
+                        "measTypes": {
+                            "sMeasTypesList": [
+                                "pmCounterNumber518",
+                                "pmCounterNumber519",
+                                "pmCounterNumber520",
+                                "pmCounterNumber521",
+                                "pmCounterNumber522",
+                                "pmCounterNumber523",
+                                "pmCounterNumber524",
+                                "pmCounterNumber525",
+                                "pmCounterNumber526",
+                                "pmCounterNumber527",
+                                "pmCounterNumber528",
+                                "pmCounterNumber529"
+                            ]
+                        },
+                        "measValuesList": [
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,Transport=1,SctpEndpoint=F1_NRDU,SctpAssociation=38472-10.0.0.1",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 2,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 3,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 4,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 5,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 6,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 7,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 8,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 9,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 10,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 11,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 12,
+                                        "sValue": "0"
+                                    }
+                                ]
+                            },
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,Transport=1,SctpEndpoint=F1_NRCUCP,SctpAssociation=38472-10.0.0.2",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 2,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 3,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 4,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 5,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 6,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 7,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 8,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 9,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 10,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 11,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 12,
+                                        "sValue": "0"
+                                    }
+                                ]
+                            }
+                        ]
+                    },
+                    {
+                        "measInfoId": {
+                            "sMeasInfoId": "PM=1,PmGroup=VlanPort"
+                        },
+                        "measTypes": {
+                            "sMeasTypesList": [
+                                "pmCounterNumber482",
+                                "pmCounterNumber483",
+                                "pmCounterNumber484",
+                                "pmCounterNumber485",
+                                "pmCounterNumber486",
+                                "pmCounterNumber487",
+                                "pmCounterNumber488",
+                                "pmCounterNumber489",
+                                "pmCounterNumber507"
+                            ]
+                        },
+                        "measValuesList": [
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,Transport=1,VlanPort=vr_OAM.IF1",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 2,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 3,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 4,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 5,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 6,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 7,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 8,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 9,
+                                        "sValue": "0"
+                                    }
+                                ]
+                            },
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,Transport=1,VlanPort=vr_NR.IF1",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 2,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 3,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 4,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 5,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 6,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 7,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 8,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 9,
+                                        "sValue": "0"
+                                    }
+                                ]
+                            },
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,Transport=1,VlanPort=vr_LTE.IF1",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 2,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 3,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 4,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 5,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 6,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 7,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 8,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 9,
+                                        "sValue": "0"
+                                    }
+                                ]
+                            }
+                        ]
+                    },
+                    {
+                        "measInfoId": {
+                            "sMeasInfoId": "PM=1,PmGroup=ConsumedEnergyMeasurement"
+                        },
+                        "measTypes": {
+                            "sMeasTypesList": [
+                                "pmCounterNumber530",
+                                "pmCounterNumber530Accumulated",
+                                "pmCounterNumber532"
+                            ]
+                        },
+                        "measValuesList": [
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,NodeSupport=1,ConsumedEnergyMeasurement=1",
+                                "suspectFlag": "true",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 2,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 3,
+                                        "sValue": "333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,334,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333"
+                                    }
+                                ]
+                            }
+                        ]
+                    },
+                    {
+                        "measInfoId": {
+                            "sMeasInfoId": "PM=1,PmGroup=EnergyMeter"
+                        },
+                        "measTypes": {
+                            "sMeasTypesList": [
+                                "pmCounterNumber530",
+                                "pmCounterNumber530Accumulated",
+                                "pmCounterNumber532",
+                                "pmCounterNumber533"
+                            ]
+                        },
+                        "measValuesList": [
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,Equipment=1,FieldReplaceableUnit=BB-1,EnergyMeter=1",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "83"
+                                    },
+                                    {
+                                        "p": 2,
+                                        "sValue": "34846"
+                                    },
+                                    {
+                                        "p": 3,
+                                        "sValue": "333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,334,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333,333"
+                                    },
+                                    {
+                                        "p": 4,
+                                        "sValue": "52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52"
+                                    }
+                                ]
+                            },
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,Equipment=1,FieldReplaceableUnit=Radio-S1-1,EnergyMeter=1",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "12"
+                                    },
+                                    {
+                                        "p": 2,
+                                        "sValue": "4947"
+                                    },
+                                    {
+                                        "p": 3,
+                                        "sValue": "47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47"
+                                    },
+                                    {
+                                        "p": 4,
+                                        "sValue": "53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53"
+                                    }
+                                ]
+                            },
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,Equipment=1,FieldReplaceableUnit=Radio-S2-1,EnergyMeter=1",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "13"
+                                    },
+                                    {
+                                        "p": 2,
+                                        "sValue": "5394"
+                                    },
+                                    {
+                                        "p": 3,
+                                        "sValue": "52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,51,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,51,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52,52"
+                                    },
+                                    {
+                                        "p": 4,
+                                        "sValue": "54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54"
+                                    }
+                                ]
+                            },
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,Equipment=1,FieldReplaceableUnit=Radio-S3-1,EnergyMeter=1",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "22"
+                                    },
+                                    {
+                                        "p": 2,
+                                        "sValue": "9338"
+                                    },
+                                    {
+                                        "p": 3,
+                                        "sValue": "89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89"
+                                    },
+                                    {
+                                        "p": 4,
+                                        "sValue": "53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,52,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,52,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53"
+                                    }
+                                ]
+                            },
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,Equipment=1,FieldReplaceableUnit=R608,EnergyMeter=1",
+                                "suspectFlag": "true",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 2,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 3,
+                                        "sValue": "89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89"
+                                    },
+                                    {
+                                        "p": 4,
+                                        "sValue": "53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,52,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,52,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,53"
+                                    }
+                                ]
+                            }
+                        ]
+                    },
+                    {
+                        "measInfoId": {
+                            "sMeasInfoId": "PM=1,PmGroup=SupportUnit"
+                        },
+                        "measTypes": {
+                            "sMeasTypesList": [
+                                "pmCounterNumber534"
+                            ]
+                        },
+                        "measValuesList": [
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,Equipment=1,SupportUnit=2",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "18,18,18"
+                                    }
+                                ]
+                            },
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,Equipment=1,SupportUnit=1",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "30,30,30"
+                                    }
+                                ]
+                            }
+                        ]
+                    },
+                    {
+                        "measInfoId": {
+                            "sMeasInfoId": "PM=1,PmGroup=BbProcessingResource"
+                        },
+                        "measTypes": {
+                            "sMeasTypesList": [
+                                "pmCounterNumber535",
+                                "pmCounterNumber367",
+                                "pmCounterNumber368",
+                                "pmCounterNumber369",
+                                "pmCounterNumber370",
+                                "pmCounterNumber536",
+                                "pmCounterNumber537",
+                                "pmCounterNumber538",
+                                "pmCounterNumber539",
+                                "pmCounterNumber540",
+                                "pmCounterNumber541",
+                                "pmCounterNumber542",
+                                "pmCounterNumber543",
+                                "pmCounterNumber374",
+                                "pmCounterNumber375",
+                                "pmCounterNumber376",
+                                "pmCounterNumber377",
+                                "pmCounterNumber544",
+                                "pmCounterNumber545",
+                                "pmCounterNumber546",
+                                "pmCounterNumber547",
+                                "pmCounterNumber548",
+                                "pmCounterNumber549",
+                                "pmCounterNumber550",
+                                "pmCounterNumber551"
+                            ]
+                        },
+                        "measValuesList": [
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,Equipment=1,FieldReplaceableUnit=BB-1,BbProcessingResource=1",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 2,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 3,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 4,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 5,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 6,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 7,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 8,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 9,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 10,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 11,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 12,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 13,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 14,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 15,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 16,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 17,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 18,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 19,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 20,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 21,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 22,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 23,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 24,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 25,
+                                        "sValue": "0"
+                                    }
+                                ]
+                            }
+                        ]
+                    },
+                    {
+                        "measInfoId": {
+                            "sMeasInfoId": "PM=1,PmGroup=ENodeBFunction"
+                        },
+                        "measTypes": {
+                            "sMeasTypesList": [
+                                "pmCounterNumber359Aas",
+                                "pmCounterNumber360Aas",
+                                "pmCounterNumber554",
+                                "pmCounterNumber555",
+                                "pmCounterNumber365Actual",
+                                "pmCounterNumber366Actual",
+                                "pmCounterNumber558",
+                                "pmCounterNumber559",
+                                "pmCounterNumber560",
+                                "pmCounterNumber561",
+                                "pmCounterNumber562",
+                                "pmCounterNumber563",
+                                "pmCounterNumber564",
+                                "pmCounterNumber565",
+                                "pmCounterNumber566",
+                                "pmCounterNumber567",
+                                "pmCounterNumber568",
+                                "pmCounterNumber569",
+                                "pmCounterNumber570",
+                                "pmCounterNumber571",
+                                "pmCounterNumber572",
+                                "pmCounterNumber573"
+                            ]
+                        },
+                        "measValuesList": [
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,ENodeBFunction=1",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 2,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 3,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 4,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 5,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 6,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 7,
+                                        "sValue": "5"
+                                    },
+                                    {
+                                        "p": 8,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 9,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 10,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 11,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 12,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 13,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 14,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 15,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 16,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 17,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 18,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 19,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 20,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 21,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 22,
+                                        "sValue": "0"
+                                    }
+                                ]
+                            }
+                        ]
+                    },
+                    {
+                        "measInfoId": {
+                            "sMeasInfoId": "PM=1,PmGroup=EUtranCellFDD"
+                        },
+                        "measTypes": {
+                            "sMeasTypesList": [
+                                "pmCounterNumber306",
+                                "pmCounterNumber307",
+                                "pmCounterNumber574",
+                                "pmCounterNumber575",
+                                "pmCounterNumber576",
+                                "pmCounterNumber577",
+                                "pmCounterNumber578",
+                                "pmCounterNumber579",
+                                "pmCounterNumber580",
+                                "pmCounterNumber581",
+                                "pmCounterNumber582",
+                                "pmCounterNumber33",
+                                "pmCounterNumber34",
+                                "pmCounterNumber329",
+                                "pmCounterNumber330",
+                                "pmCounterNumber583",
+                                "pmCounterNumber583Arp",
+                                "pmCounterNumber583Csfb",
+                                "pmCounterNumber583CsfbArp",
+                                "pmCounterNumber583CsfbQci",
+                                "pmCounterNumber583HoOngoing",
+                                "pmCounterNumber583HoOngoingArp",
+                                "pmCounterNumber583HoOngoingQci",
+                                "pmCounterNumber583Qci",
+                                "pmCounterNumber592",
+                                "pmCounterNumber592Arp",
+                                "pmCounterNumber594",
+                                "pmCounterNumber595",
+                                "pmCounterNumber596",
+                                "pmCounterNumber597",
+                                "pmCounterNumber598",
+                                "pmCounterNumber599",
+                                "pmCounterNumber599Arp",
+                                "pmCounterNumber599Qci",
+                                "pmCounterNumber602",
+                                "pmCounterNumber602Arp",
+                                "pmCounterNumber604",
+                                "pmCounterNumber605",
+                                "pmCounterNumber606",
+                                "pmCounterNumber607",
+                                "pmCounterNumber608",
+                                "pmCounterNumber609",
+                                "pmCounterNumber610",
+                                "pmCounterNumber611",
+                                "pmCounterNumber612",
+                                "pmCounterNumber613",
+                                "pmCounterNumber614",
+                                "pmCounterNumber615",
+                                "pmCounterNumber616",
+                                "pmCounterNumber617",
+                                "pmCounterNumber618",
+                                "pmCounterNumber619",
+                                "pmCounterNumber620",
+                                "pmCounterNumber621",
+                                "pmCounterNumber409",
+                                "pmCounterNumber622",
+                                "pmCounterNumber623",
+                                "pmCounterNumber624",
+                                "pmCounterNumber625",
+                                "pmCounterNumber626",
+                                "pmCounterNumber627",
+                                "pmCounterNumber413ResUe",
+                                "pmCounterNumber570",
+                                "pmCounterNumber213Ce",
+                                "pmCounterNumber629",
+                                "pmCounterNumber630",
+                                "pmCounterNumber631",
+                                "pmCounterNumber631Uu",
+                                "pmCounterNumber633",
+                                "pmCounterNumber634",
+                                "pmCounterNumber635",
+                                "pmCounterNumber636",
+                                "pmCounterNumber637",
+                                "pmCounterNumber637FiltQci",
+                                "pmCounterNumber637LastTTI",
+                                "pmCounterNumber637LastTTIQci",
+                                "pmCounterNumber641",
+                                "pmCounterNumber642",
+                                "pmCounterNumber643",
+                                "pmCounterNumber350",
+                                "pmCounterNumber350Ce",
+                                "pmCounterNumber350Dta",
+                                "pmCounterNumber350DtaCe",
+                                "pmCounterNumber350Reatt",
+                                "pmCounterNumber350ReattCe",
+                                "pmCounterNumber350ReattDta",
+                                "pmCounterNumber350ReattDtaCe",
+                                "pmCounterNumber650",
+                                "pmCounterNumber650ActiveUsers",
+                                "pmCounterNumber652",
+                                "pmCounterNumber652Ce",
+                                "pmCounterNumber654",
+                                "pmCounterNumber654Ce",
+                                "pmCounterNumber354",
+                                "pmCounterNumber354Ce",
+                                "pmCounterNumber354Dta",
+                                "pmCounterNumber354DtaCe",
+                                "pmCounterNumber354GummeiNative",
+                                "pmCounterNumber660",
+                                "pmCounterNumber661",
+                                "pmCounterNumber662",
+                                "pmCounterNumber663",
+                                "pmCounterNumber664",
+                                "pmCounterNumber664Ce",
+                                "pmCounterNumber664Dta",
+                                "pmCounterNumber664DtaCe",
+                                "pmCounterNumber664Em",
+                                "pmCounterNumber664Hpa",
+                                "pmCounterNumber664Mod",
+                                "pmCounterNumber664ModCe",
+                                "pmCounterNumber664Mos",
+                                "pmCounterNumber664Mta",
+                                "pmCounterNumber664MtaCe",
+                                "pmCounterNumber675",
+                                "pmCounterNumber675Ce",
+                                "pmCounterNumber677",
+                                "pmCounterNumber677Ce",
+                                "pmCounterNumber677Dta",
+                                "pmCounterNumber677DtaCe",
+                                "pmCounterNumber677Em",
+                                "pmCounterNumber677Hpa",
+                                "pmCounterNumber677Mod",
+                                "pmCounterNumber677ModCe",
+                                "pmCounterNumber677Mos",
+                                "pmCounterNumber677Mta",
+                                "pmCounterNumber677MtaCe",
+                                "pmCounterNumber688",
+                                "pmCounterNumber689",
+                                "pmCounterNumber690",
+                                "pmCounterNumber691",
+                                "pmCounterNumber692",
+                                "pmCounterNumber693",
+                                "pmCounterNumber694",
+                                "pmCounterNumber694Em",
+                                "pmCounterNumber696",
+                                "pmCounterNumber696Em",
+                                "pmCounterNumber698",
+                                "pmCounterNumber699",
+                                "pmCounterNumber699Em",
+                                "pmCounterNumber701",
+                                "pmCounterNumber701Em",
+                                "pmCounterNumber703",
+                                "pmCounterNumber704",
+                                "pmCounterNumber705",
+                                "pmCounterNumber706",
+                                "pmCounterNumber7062",
+                                "pmCounterNumber708",
+                                "pmCounterNumber709",
+                                "pmCounterNumber710",
+                                "pmCounterNumber711",
+                                "pmCounterNumber712",
+                                "pmCounterNumber713",
+                                "pmCounterNumber714",
+                                "pmCounterNumber715",
+                                "pmCounterNumber716",
+                                "pmCounterNumber717",
+                                "pmCounterNumber718",
+                                "pmCounterNumber719",
+                                "pmCounterNumber720"
+                            ]
+                        },
+                        "measValuesList": [
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,ENodeBFunction=1,EUtranCellFDD=2",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 2,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 3,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 4,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 5,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 6,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 7,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 8,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 9,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 10,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 11,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 12,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 13,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 14,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 15,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 16,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 17,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 18,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 19,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 20,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 21,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 22,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 23,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 24,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 25,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 26,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 27,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 28,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 29,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 30,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 31,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 32,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 33,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 34,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 35,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 36,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 37,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 38,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 39,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 40,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 41,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 42,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 43,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 44,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 45,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 46,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 47,
+                                        "sValue": "0,0,0,0"
+                                    },
+                                    {
+                                        "p": 48,
+                                        "sValue": "0,0,0,0"
+                                    },
+                                    {
+                                        "p": 49,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 50,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 51,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 52,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 53,
+                                        "sValue": "0,0,0,0"
+                                    },
+                                    {
+                                        "p": 54,
+                                        "sValue": "0,0,0,0"
+                                    },
+                                    {
+                                        "p": 55,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 56,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 57,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 58,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 59,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 60,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 61,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 62,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 63,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 64,
+                                        "sValue": "0,0,0,0"
+                                    },
+                                    {
+                                        "p": 65,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 66,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 67,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 68,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 69,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 70,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 71,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 72,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 73,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 74,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 75,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 76,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 77,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 78,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 79,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 80,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 81,
+                                        "sValue": "0,0,0,0"
+                                    },
+                                    {
+                                        "p": 82,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 83,
+                                        "sValue": "0,0,0,0"
+                                    },
+                                    {
+                                        "p": 84,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 85,
+                                        "sValue": "0,0,0,0"
+                                    },
+                                    {
+                                        "p": 86,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 87,
+                                        "sValue": "0,0,0,0"
+                                    },
+                                    {
+                                        "p": 88,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 89,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 90,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 91,
+                                        "sValue": "0,0,0,0"
+                                    },
+                                    {
+                                        "p": 92,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 93,
+                                        "sValue": "0,0,0,0"
+                                    },
+                                    {
+                                        "p": 94,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 95,
+                                        "sValue": "0,0,0,0"
+                                    },
+                                    {
+                                        "p": 96,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 97,
+                                        "sValue": "0,0,0,0"
+                                    },
+                                    {
+                                        "p": 98,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 99,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 100,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 101,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 102,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 103,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 104,
+                                        "sValue": "0,0,0,0"
+                                    },
+                                    {
+                                        "p": 105,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 106,
+                                        "sValue": "0,0,0,0"
+                                    },
+                                    {
+                                        "p": 107,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 108,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 109,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 110,
+                                        "sValue": "0,0,0,0"
+                                    },
+                                    {
+                                        "p": 111,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 112,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 113,
+                                        "sValue": "0,0,0,0"
+                                    },
+                                    {
+                                        "p": 114,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 115,
+                                        "sValue": "0,0,0,0"
+                                    },
+                                    {
+                                        "p": 116,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 117,
+                                        "sValue": "0,0,0,0"
+                                    },
+                                    {
+                                        "p": 118,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 119,
+                                        "sValue": "0,0,0,0"
+                                    },
+                                    {
+                                        "p": 120,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 121,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 122,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 123,
+                                        "sValue": "0,0,0,0"
+                                    },
+                                    {
+                                        "p": 124,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 125,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 126,
+                                        "sValue": "0,0,0,0"
+                                    },
+                                    {
+                                        "p": 127,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 128,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 129,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 130,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 131,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 132,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 133,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 134,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 135,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 136,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 137,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 138,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 139,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 140,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 141,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 142,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 143,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 144,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 145,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 146,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 147,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 148,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 149,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 150,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 151,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 152,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 153,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 154,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 155,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 156,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 157,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 158,
+                                        "sValue": "0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 159,
+                                        "sValue": "0"
+                                    }
+                                ]
+                            },
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,ENodeBFunction=1,EUtranCellFDD=1",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 2,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 3,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 4,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 5,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 6,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 7,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 8,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 9,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 10,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 11,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 12,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 13,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 14,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 15,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 16,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 17,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 18,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 19,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 20,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 21,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 22,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 23,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 24,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 25,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 26,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 27,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 28,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 29,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 30,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 31,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 32,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 33,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 34,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 35,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 36,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 37,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 38,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 39,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 40,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 41,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 42,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 43,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 44,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 45,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 46,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 47,
+                                        "sValue": "0,0,0,0"
+                                    },
+                                    {
+                                        "p": 48,
+                                        "sValue": "0,0,0,0"
+                                    },
+                                    {
+                                        "p": 49,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 50,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 51,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 52,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 53,
+                                        "sValue": "0,0,0,0"
+                                    },
+                                    {
+                                        "p": 54,
+                                        "sValue": "0,0,0,0"
+                                    },
+                                    {
+                                        "p": 55,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 56,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 57,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 58,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 59,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 60,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 61,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 62,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 63,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 64,
+                                        "sValue": "0,0,0,0"
+                                    },
+                                    {
+                                        "p": 65,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 66,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 67,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 68,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 69,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 70,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 71,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 72,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 73,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 74,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 75,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 76,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 77,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 78,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 79,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 80,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 81,
+                                        "sValue": "0,0,0,0"
+                                    },
+                                    {
+                                        "p": 82,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 83,
+                                        "sValue": "0,0,0,0"
+                                    },
+                                    {
+                                        "p": 84,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 85,
+                                        "sValue": "0,0,0,0"
+                                    },
+                                    {
+                                        "p": 86,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 87,
+                                        "sValue": "0,0,0,0"
+                                    },
+                                    {
+                                        "p": 88,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 89,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 90,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 91,
+                                        "sValue": "0,0,0,0"
+                                    },
+                                    {
+                                        "p": 92,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 93,
+                                        "sValue": "0,0,0,0"
+                                    },
+                                    {
+                                        "p": 94,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 95,
+                                        "sValue": "0,0,0,0"
+                                    },
+                                    {
+                                        "p": 96,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 97,
+                                        "sValue": "0,0,0,0"
+                                    },
+                                    {
+                                        "p": 98,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 99,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 100,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 101,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 102,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 103,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 104,
+                                        "sValue": "0,0,0,0"
+                                    },
+                                    {
+                                        "p": 105,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 106,
+                                        "sValue": "0,0,0,0"
+                                    },
+                                    {
+                                        "p": 107,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 108,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 109,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 110,
+                                        "sValue": "0,0,0,0"
+                                    },
+                                    {
+                                        "p": 111,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 112,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 113,
+                                        "sValue": "0,0,0,0"
+                                    },
+                                    {
+                                        "p": 114,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 115,
+                                        "sValue": "0,0,0,0"
+                                    },
+                                    {
+                                        "p": 116,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 117,
+                                        "sValue": "0,0,0,0"
+                                    },
+                                    {
+                                        "p": 118,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 119,
+                                        "sValue": "0,0,0,0"
+                                    },
+                                    {
+                                        "p": 120,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 121,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 122,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 123,
+                                        "sValue": "0,0,0,0"
+                                    },
+                                    {
+                                        "p": 124,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 125,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 126,
+                                        "sValue": "0,0,0,0"
+                                    },
+                                    {
+                                        "p": 127,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 128,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 129,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 130,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 131,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 132,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 133,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 134,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 135,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 136,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 137,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 138,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 139,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 140,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 141,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 142,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 143,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 144,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 145,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 146,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 147,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 148,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 149,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 150,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 151,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 152,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 153,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 154,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 155,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 156,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 157,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 158,
+                                        "sValue": "0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 159,
+                                        "sValue": "0"
+                                    }
+                                ]
+                            }
+                        ]
+                    },
+                    {
+                        "measInfoId": {
+                            "sMeasInfoId": "PM=1,PmGroup=BbProcessingResource"
+                        },
+                        "measTypes": {
+                            "sMeasTypesList": [
+                                "pmCounterNumber550Burst",
+                                "pmCounterNumber550Format",
+                                "pmCounterNumber550X2Fwd",
+                                "pmCounterNumber724",
+                                "pmCounterNumber725"
+                            ]
+                        },
+                        "measValuesList": [
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,Equipment=1,FieldReplaceableUnit=BB-1,BbProcessingResource=1",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 2,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 3,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 4,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 5,
+                                        "sValue": "0"
+                                    }
+                                ]
+                            }
+                        ]
+                    },
+                    {
+                        "measInfoId": {
+                            "sMeasInfoId": "PM=1,PmGroup=EUtranCellFDD"
+                        },
+                        "measTypes": {
+                            "sMeasTypesList": [
+                                "pmCounterNumber726",
+                                "pmCounterNumber727",
+                                "pmCounterNumber728",
+                                "pmCounterNumber729",
+                                "pmCounterNumber730",
+                                "pmCounterNumber731",
+                                "pmCounterNumber732",
+                                "pmCounterNumber733",
+                                "pmCounterNumber734",
+                                "pmCounterNumber735",
+                                "pmCounterNumber629CatMDrxNoSyncQci",
+                                "pmCounterNumber629CatMDrxSyncQci",
+                                "pmCounterNumber629CatMNoDrxNoSyncQci",
+                                "pmCounterNumber629CatMNoDrxSyncQci",
+                                "pmCounterNumber629DrxNoSyncQci",
+                                "pmCounterNumber629DrxSync",
+                                "pmCounterNumber629DrxSyncQci",
+                                "pmCounterNumber629NoDrxNoSyncQci",
+                                "pmCounterNumber629NoDrxSyncQci",
+                                "pmCounterNumber629Qci",
+                                "pmCounterNumber630CatMDrxNoSyncQci",
+                                "pmCounterNumber630CatMDrxSyncQci",
+                                "pmCounterNumber630CatMNoDrxNoSyncQci",
+                                "pmCounterNumber630CatMNoDrxSyncQci",
+                                "pmCounterNumber630DrxNoSyncQci",
+                                "pmCounterNumber630DrxSync",
+                                "pmCounterNumber630DrxSyncQci",
+                                "pmCounterNumber630NoDrxNoSyncQci",
+                                "pmCounterNumber630NoDrxSyncQci",
+                                "pmCounterNumber630Qci",
+                                "pmCounterNumber756",
+                                "pmCounterNumber756Qci",
+                                "pmCounterNumber758",
+                                "pmCounterNumber758Qci",
+                                "pmCounterNumber631Qci",
+                                "pmCounterNumber631UuQci",
+                                "pmCounterNumber762",
+                                "pmCounterNumber633Limitations",
+                                "pmCounterNumber633MissingPdus2Qci",
+                                "pmCounterNumber633Qci",
+                                "pmCounterNumber633RohcFail2Qci",
+                                "pmCounterNumber633SrbTooLarge",
+                                "pmCounterNumber768",
+                                "pmCounterNumber769",
+                                "pmCounterNumber770",
+                                "pmCounterNumber771",
+                                "pmCounterNumber771Qci",
+                                "pmCounterNumber634Qci",
+                                "pmCounterNumber635Qci",
+                                "pmCounterNumber775",
+                                "pmCounterNumber637Ca",
+                                "pmCounterNumber637LastTTICa",
+                                "pmCounterNumber637Qci",
+                                "pmCounterNumber637TransPlmn0",
+                                "pmCounterNumber637TransPlmn1",
+                                "pmCounterNumber637TransPlmn2",
+                                "pmCounterNumber637TransPlmn3",
+                                "pmCounterNumber637TransPlmn4",
+                                "pmCounterNumber637TransPlmn5",
+                                "pmCounterNumber637TransPlmn6",
+                                "pmCounterNumber637TransQci",
+                                "pmCounterNumber787",
+                                "pmCounterNumber641Trans",
+                                "pmCounterNumber789",
+                                "pmCounterNumber642Plmn0",
+                                "pmCounterNumber642Plmn1",
+                                "pmCounterNumber642Plmn2",
+                                "pmCounterNumber642Plmn3",
+                                "pmCounterNumber642Plmn4",
+                                "pmCounterNumber642Plmn5",
+                                "pmCounterNumber642Plmn6",
+                                "pmCounterNumber642Qci",
+                                "pmCounterNumber798"
+                            ]
+                        },
+                        "measValuesList": [
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,ENodeBFunction=1,EUtranCellFDD=2",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 2,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 3,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 4,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 5,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 6,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 7,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 8,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 9,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 10,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 11,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 12,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 13,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 14,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 15,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 16,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 17,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 18,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 19,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 20,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 21,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 22,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 23,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 24,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 25,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 26,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 27,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 28,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 29,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 30,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 31,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 32,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 33,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 34,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 35,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 36,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 37,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 38,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 39,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 40,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 41,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 42,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 43,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 44,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 45,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 46,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 47,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 48,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 49,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 50,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 51,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 52,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 53,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 54,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 55,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 56,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 57,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 58,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 59,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 60,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 61,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 62,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 63,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 64,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 65,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 66,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 67,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 68,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 69,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 70,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 71,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 72,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 73,
+                                        "sValue": "0"
+                                    }
+                                ]
+                            },
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,ENodeBFunction=1,EUtranCellFDD=1",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 2,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 3,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 4,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 5,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 6,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 7,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 8,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 9,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 10,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 11,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 12,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 13,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 14,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 15,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 16,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 17,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 18,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 19,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 20,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 21,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 22,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 23,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 24,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 25,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 26,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 27,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 28,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 29,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 30,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 31,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 32,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 33,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 34,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 35,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 36,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 37,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 38,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 39,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 40,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 41,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 42,
+                                        "sValue": "0,0,0,0,0,0,0,0,0,0"
+                                    },
+                                    {
+                                        "p": 43,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 44,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 45,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 46,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 47,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 48,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 49,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 50,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 51,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 52,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 53,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 54,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 55,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 56,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 57,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 58,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 59,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 60,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 61,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 62,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 63,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 64,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 65,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 66,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 67,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 68,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 69,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 70,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 71,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 72,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 73,
+                                        "sValue": "0"
+                                    }
+                                ]
+                            }
+                        ]
+                    },
+                    {
+                        "measInfoId": {
+                            "sMeasInfoId": "PM=1,PmGroup=GNBCUUPFunction_GNBCUUP"
+                        },
+                        "measTypes": {
+                            "sMeasTypesList": [
+                                "pmCounterNumber799",
+                                "pmCounterNumber799Gtpu",
+                                "pmCounterNumber799NoCtxt",
+                                "pmCounterNumber802",
+                                "pmCounterNumber803",
+                                "pmCounterNumber804",
+                                "pmCounterNumber805",
+                                "pmCounterNumber806",
+                                "pmCounterNumber807",
+                                "pmCounterNumber808"
+                            ]
+                        },
+                        "measValuesList": [
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,GNBCUUPFunction=1",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 2,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 3,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 4,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 5,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 6,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 7,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 8,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 9,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 10,
+                                        "sValue": "0"
+                                    }
+                                ]
+                            }
+                        ]
+                    },
+                    {
+                        "measInfoId": {
+                            "sMeasInfoId": "PM=1,PmGroup=NRCellCU_GNBCUCP"
+                        },
+                        "measTypes": {
+                            "sMeasTypesList": [
+                                "pmEndcUeCapabilityUlPdcpDelay"
+                            ]
+                        },
+                        "measValuesList": [
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,GNBCUCPFunction=1,NRCellCU=32",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "0"
+                                    }
+                                ]
+                            },
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,GNBCUCPFunction=1,NRCellCU=31",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "0"
+                                    }
+                                ]
+                            },
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,GNBCUCPFunction=1,NRCellCU=2",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "0"
+                                    }
+                                ]
+                            },
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,GNBCUCPFunction=1,NRCellCU=1",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "0"
+                                    }
+                                ]
+                            }
+                        ]
+                    },
+                    {
+                        "measInfoId": {
+                            "sMeasInfoId": "PM=1,PmGroup=X2UTermination_GNBCUUP"
+                        },
+                        "measTypes": {
+                            "sMeasTypesList": [
+                                "pmCounterNumber802",
+                                "pmCounterNumber803"
+                            ]
+                        },
+                        "measValuesList": [
+                            {
+                                "measObjInstId": "ManagedElement=GNODEB-0,GNBCUUPFunction=1,X2UTermination=1",
+                                "suspectFlag": "false",
+                                "measResults": [
+                                    {
+                                        "p": 1,
+                                        "sValue": "0"
+                                    },
+                                    {
+                                        "p": 2,
+                                        "sValue": "0"
+                                    }
+                                ]
+                            }
+                        ]
+                    }
+                ]
+            }
+        }
+    }
+}
\ No newline at end of file
index 1663194..ac8ce05 100644 (file)
@@ -24,10 +24,6 @@ import (
        "compress/gzip"
        "context"
        "fmt"
-       jsoniter "github.com/json-iterator/go"
-       "github.com/minio/minio-go/v7"
-       "github.com/minio/minio-go/v7/pkg/credentials"
-       log "github.com/sirupsen/logrus"
        "io"
        "main/common/dataTypes"
        "main/components/xmltransform"
@@ -35,8 +31,14 @@ import (
        "os"
        "strings"
        "time"
+
+       jsoniter "github.com/json-iterator/go"
+       "github.com/minio/minio-go/v7"
+       "github.com/minio/minio-go/v7/pkg/credentials"
+       log "github.com/sirupsen/logrus"
 )
 
+// nolint
 func Xml_to_json_conv(evt_data *dataTypes.XmlFileEventHeader) string {
        filestoreUser := os.Getenv("FILESTORE_USER")
        filestorePwd := os.Getenv("FILESTORE_PWD")
@@ -76,6 +78,7 @@ func Xml_to_json_conv(evt_data *dataTypes.XmlFileEventHeader) string {
        return newObjectName
 }
 
+// nolint
 func upload_object(mc *minio.Client, b []byte, objectName string, fsbucket string) {
        contentType := "application/json"
        if strings.HasSuffix(objectName, ".gz") {
@@ -109,6 +112,7 @@ func upload_object(mc *minio.Client, b []byte, objectName string, fsbucket strin
        }
 }
 
+// nolint
 func create_minio_bucket(mc *minio.Client, bucket string) error {
        tctx := context.Background()
        err := mc.MakeBucket(tctx, bucket, minio.MakeBucketOptions{})
@@ -127,6 +131,7 @@ func create_minio_bucket(mc *minio.Client, bucket string) error {
        return nil
 }
 
+// nolint
 func check_minio_bucket(mc *minio.Client, bucket string) bool {
        tctx := context.Background()
        exists, err := mc.BucketExists(tctx, bucket)
@@ -139,6 +144,7 @@ func check_minio_bucket(mc *minio.Client, bucket string) bool {
 }
 
 // Write gzipped data to a Writer
+// nolint
 func gzipWrite(w io.Writer, data *[]byte) error {
        gw, err1 := gzip.NewWriterLevel(w, gzip.BestSpeed)
 
diff --git a/pm-file-converter/components/miniocollector/miniocollector_test.go b/pm-file-converter/components/miniocollector/miniocollector_test.go
new file mode 100644 (file)
index 0000000..17327a8
--- /dev/null
@@ -0,0 +1,175 @@
+package miniocollector
+
+import (
+       "bytes"
+       "context"
+       "io"
+       "log"
+       "os"
+       "testing"
+
+       "github.com/minio/minio-go/v7"
+       "github.com/minio/minio-go/v7/pkg/credentials"
+       "github.com/stretchr/testify/assert"
+)
+
+func TestMake_minio_bucket(t *testing.T) {
+
+       endpoint := "play.min.io:9000"
+       accessKey := "Q3AM3UQ867SPQQA43P2F"
+       secretKey := "zuf+tfteSlswRu7BJ86wekitnifILbZam1KYY3TG"
+
+       minioClient, err := minio.New(endpoint, &minio.Options{
+               Creds:  credentials.NewStaticV4(accessKey, secretKey, ""),
+               Secure: true,
+       })
+       if err != nil {
+               log.Fatalf("Error creating Minio client: %v", err)
+       }
+
+       if _, err := minioClient.ListBuckets(context.Background()); err != nil {
+               log.Fatalf("Error connecting to Minio server: %v", err)
+       }
+
+       // Create a test bucket.
+       bucketName := "my-test-bucket"
+       err = create_minio_bucket(minioClient, bucketName)
+       if err != nil {
+               log.Fatalf("Error creating bucket: %v", err)
+       } else {
+               assert.NoError(t, err)
+       }
+}
+
+func Test_bucket_cannot_empty(t *testing.T) {
+
+       endpoint := "play.min.io:9000"
+       accessKey := "Q3AM3UQ867SPQQA43P2F"
+       secretKey := "zuf+tfteSlswRu7BJ86wekitnifILbZam1KYY3TG"
+
+       minioClient, err := minio.New(endpoint, &minio.Options{
+               Creds:  credentials.NewStaticV4(accessKey, secretKey, ""),
+               Secure: true,
+       })
+       if err != nil {
+               log.Fatalf("Error creating Minio client: %v", err)
+       }
+
+       if _, err := minioClient.ListBuckets(context.Background()); err != nil {
+               log.Fatalf("Error connecting to Minio server: %v", err)
+       }
+
+       // Create a test bucket.
+       bucketName := ""
+       err = create_minio_bucket(minioClient, bucketName)
+       if err != nil {
+               assert.Error(t, err)
+       } else {
+               assert.NoError(t, err)
+       }
+}
+
+func Test_check_minio_bucket(t *testing.T) {
+
+       endpoint := "play.min.io:9000"
+       accessKey := "Q3AM3UQ867SPQQA43P2F"
+       secretKey := "zuf+tfteSlswRu7BJ86wekitnifILbZam1KYY3TG"
+
+       found := false
+
+       minioClient, err := minio.New(endpoint, &minio.Options{
+               Creds:  credentials.NewStaticV4(accessKey, secretKey, ""),
+               Secure: true,
+       })
+       if err != nil {
+               log.Fatalf("Error creating Minio client: %v", err)
+       }
+
+       if _, err := minioClient.ListBuckets(context.Background()); err != nil {
+               log.Fatalf("Error connecting to Minio server: %v", err)
+       }
+
+       // Create a test bucket.
+       bucketName := "my-test-bucket"
+       found = check_minio_bucket(minioClient, bucketName)
+       if found {
+               assert.True(t, found)
+       } else {
+               assert.False(t, found)
+       }
+}
+
+func Test_bucket_not_exists(t *testing.T) {
+
+       endpoint := "play.min.io:9000"
+       accessKey := "Q3AM3UQ867SPQQA43P2F"
+       secretKey := "zuf+tfteSlswRu7BJ86wekitnifILbZam1KYY3TG"
+
+       found := false
+
+       minioClient, err := minio.New(endpoint, &minio.Options{
+               Creds:  credentials.NewStaticV4(accessKey, secretKey, ""),
+               Secure: true,
+       })
+       if err != nil {
+               log.Fatalf("Error creating Minio client: %v", err)
+       }
+
+       if _, err := minioClient.ListBuckets(context.Background()); err != nil {
+               log.Fatalf("Error connecting to Minio server: %v", err)
+       }
+
+       // Create a test bucket.
+       bucketName := "my-test-bucket-not-exists"
+       found = check_minio_bucket(minioClient, bucketName)
+       if found {
+               assert.True(t, found)
+       } else {
+               assert.False(t, found)
+       }
+}
+
+func Test_upload_object(t *testing.T) {
+
+       endpoint := "play.min.io:9000"
+       accessKey := "Q3AM3UQ867SPQQA43P2F"
+       secretKey := "zuf+tfteSlswRu7BJ86wekitnifILbZam1KYY3TG"
+
+       minioClient, err := minio.New(endpoint, &minio.Options{
+               Creds:  credentials.NewStaticV4(accessKey, secretKey, ""),
+               Secure: true,
+       })
+       if err != nil {
+               log.Fatalf("Error creating Minio client: %v", err)
+       }
+
+       if _, err := minioClient.ListBuckets(context.Background()); err != nil {
+               log.Fatalf("Error connecting to Minio server: %v", err)
+       }
+
+       json_filename := "minio_upload_test.json"
+
+       fi, err := os.Open(json_filename)
+
+       if err != nil {
+               t.Fatalf("File %s - cannot be opened  - discarding message, error details: %s", json_filename, err.Error())
+       }
+       defer fi.Close()
+
+       reader := fi
+
+       var buf3 bytes.Buffer
+       _, err2 := io.Copy(&buf3, reader)
+       if err2 != nil {
+               t.Fatalf("File %s - cannot be read, discarding message, %s", json_filename, err.Error())
+               return
+       }
+       file_bytes := buf3.Bytes()
+
+       // Create a test bucket.
+       bucketName := "my-test-bucket"
+       upload_object(minioClient, file_bytes, "minio_upload_test.json", bucketName)
+
+       assert.NoError(t, err)
+
+}
index 8e88d19..e7e04e4 100644 (file)
@@ -35,6 +35,7 @@ import (
        "time"
 )
 
+//lint:ignore S117
 func xml_to_json_conv(f_byteValue *[]byte, xfeh *dataTypes.XmlFileEventHeader) ([]byte, error) {
        var f dataTypes.MeasCollecFile
        start := time.Now()
index 7c5318d..5cb7baf 100644 (file)
@@ -2,38 +2,40 @@ module main
 
 go 1.19
 
-require (
-       github.com/confluentinc/confluent-kafka-go v1.9.2
-       github.com/gorilla/mux v1.8.0
-)
+require github.com/confluentinc/confluent-kafka-go v1.9.2
 
 require (
-       github.com/google/uuid v1.3.0
-       github.com/influxdata/influxdb-client-go/v2 v2.12.2
        github.com/json-iterator/go v1.1.12
-       github.com/minio/minio-go/v7 v7.0.35
+       github.com/minio/minio-go/v7 v7.0.41
        github.com/sirupsen/logrus v1.9.0
-       golang.org/x/oauth2 v0.0.0-20200107190931-bf48bf16ab8d
+       golang.org/x/oauth2 v0.12.0
+)
+
+require (
+       github.com/davecgh/go-spew v1.1.1 // indirect
+       github.com/pmezard/go-difflib v1.0.0 // indirect
+       github.com/rogpeppe/go-internal v1.8.1 // indirect
+       gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c // indirect
+       gopkg.in/yaml.v3 v3.0.1 // indirect
 )
 
 require (
-       github.com/deepmap/oapi-codegen v1.8.2 // indirect
        github.com/dustin/go-humanize v1.0.0 // indirect
-       github.com/golang/protobuf v1.5.2 // indirect
-       github.com/influxdata/line-protocol v0.0.0-20200327222509-2487e7298839 // indirect
-       github.com/klauspost/compress v1.15.9 // indirect
+       github.com/golang/protobuf v1.5.3 // indirect
+       github.com/google/uuid v1.3.0 // indirect
+       github.com/klauspost/compress v1.16.0 // indirect
        github.com/klauspost/cpuid/v2 v2.1.0 // indirect
        github.com/minio/md5-simd v1.1.2 // indirect
        github.com/minio/sha256-simd v1.0.0 // indirect
        github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd // indirect
        github.com/modern-go/reflect2 v1.0.2 // indirect
-       github.com/pkg/errors v0.9.1 // indirect
        github.com/rs/xid v1.4.0 // indirect
-       golang.org/x/crypto v0.0.0-20220722155217-630584e8d5aa // indirect
-       golang.org/x/net v0.0.0-20220722155237-a158d28d115b // indirect
-       golang.org/x/sys v0.0.0-20220722155257-8c9f86f7a55f // indirect
-       golang.org/x/text v0.3.7 // indirect
-       google.golang.org/appengine v1.4.0 // indirect
-       google.golang.org/protobuf v1.28.0 // indirect
-       gopkg.in/ini.v1 v1.66.6 // indirect
+       github.com/stretchr/testify v1.8.4
+       golang.org/x/crypto v0.13.0 // indirect
+       golang.org/x/net v0.15.0 // indirect
+       golang.org/x/sys v0.12.0 // indirect
+       golang.org/x/text v0.13.0 // indirect
+       google.golang.org/appengine v1.6.7 // indirect
+       google.golang.org/protobuf v1.31.0 // indirect
+       gopkg.in/ini.v1 v1.67.0 // indirect
 )
index 9f41053..de3bd33 100644 (file)
@@ -20,13 +20,9 @@ github.com/cncf/xds/go v0.0.0-20211011173535-cb28da3451f1/go.mod h1:eXthEFrGJvWH
 github.com/confluentinc/confluent-kafka-go v1.9.2 h1:gV/GxhMBUb03tFWkN+7kdhg+zf+QUM+wVkI9zwh770Q=
 github.com/confluentinc/confluent-kafka-go v1.9.2/go.mod h1:ptXNqsuDfYbAE/LBW6pnwWZElUoWxHoV8E43DCrliyo=
 github.com/creack/pty v1.1.9/go.mod h1:oKZEueFk5CKHvIhNR5MUki03XCEU+Q6VDXinZuGJ33E=
-github.com/cyberdelia/templates v0.0.0-20141128023046-ca7fffd4298c/go.mod h1:GyV+0YP4qX0UQ7r2MoYZ+AvYDp12OF5yg4q8rGnyNh4=
 github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
 github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c=
 github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
-github.com/deepmap/oapi-codegen v1.8.2 h1:SegyeYGcdi0jLLrpbCMoJxnUUn8GBXHsvr4rbzjuhfU=
-github.com/deepmap/oapi-codegen v1.8.2/go.mod h1:YLgSKSDv/bZQB7N4ws6luhozi3cEdRktEqrX88CvjIw=
-github.com/dgrijalva/jwt-go v3.2.0+incompatible/go.mod h1:E3ru+11k8xSBh+hMPgOLZmtrrCbhqsmaPHjLKYnJCaQ=
 github.com/dustin/go-humanize v1.0.0 h1:VSnTsYCnlFHaM2/igO1h6X3HA71jcobQuxemgkq4zYo=
 github.com/dustin/go-humanize v1.0.0/go.mod h1:HtrtbFcZ19U5GC7JDqmcUSB87Iq5E25KnS6fMYU6eOk=
 github.com/envoyproxy/go-control-plane v0.9.0/go.mod h1:YTl/9mNaCwkRvm6d1a2C3ymFceY/DCBVvsKhRF0iEA4=
@@ -40,14 +36,11 @@ github.com/frankban/quicktest v1.2.2/go.mod h1:Qh/WofXFeiAFII1aEBu529AtJo6Zg2VHs
 github.com/frankban/quicktest v1.7.2/go.mod h1:jaStnuzAqU1AJdCO0l53JDCJrVDKcS03DbaAcR7Ks/o=
 github.com/frankban/quicktest v1.10.0/go.mod h1:ui7WezCLWMWxVWr1GETZY3smRy0G4KWq9vcPtJmFl7Y=
 github.com/frankban/quicktest v1.14.0/go.mod h1:NeW+ay9A/U67EYXNFA1nPE8e/tnQv/09mUdL/ijj8og=
-github.com/getkin/kin-openapi v0.61.0/go.mod h1:7Yn5whZr5kJi6t+kShccXS8ae1APpYTW6yheSwk8Yi4=
 github.com/ghodss/yaml v1.0.0/go.mod h1:4dBDuWmgqj2HViK6kFavaiC9ZROes6MMH2rRYeMEF04=
-github.com/go-chi/chi/v5 v5.0.0/go.mod h1:BBug9lr0cqtdAhsu6R4AAdvufI0/XBzAQSsUqJpoZOs=
-github.com/go-openapi/jsonpointer v0.19.5/go.mod h1:Pl9vOtqEWErmShwVjC8pYs9cog34VGT37dQOVbmoatg=
-github.com/go-openapi/swag v0.19.5/go.mod h1:POnQmlKehdgb5mhVOsnJFsivZCEZ/vjK9gh66Z9tfKk=
 github.com/golang/glog v0.0.0-20160126235308-23def4e6c14b/go.mod h1:SBH7ygxi8pfUlaOkMMuAQtPIUF8ecWP5IEl/CR7VP2Q=
 github.com/golang/mock v1.1.1/go.mod h1:oTYuIxOrZwtPieC+H1uAHpcLFnEyAGVDL/k47Jfbm0A=
 github.com/golang/protobuf v1.2.0/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U=
+github.com/golang/protobuf v1.3.1/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U=
 github.com/golang/protobuf v1.3.2/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U=
 github.com/golang/protobuf v1.3.3/go.mod h1:vzj43D7+SQXF/4pzW/hwtAqwc6iTitCiVSaWz5lYuqw=
 github.com/golang/protobuf v1.4.0-rc.1/go.mod h1:ceaxUfeHdC40wWswd/P6IGgMaK3YpKi5j83Wpe3EHw8=
@@ -59,12 +52,12 @@ github.com/golang/protobuf v1.4.1/go.mod h1:U8fpvMrcmy5pZrNK1lt4xCsGvpyWQ/VVv6QD
 github.com/golang/protobuf v1.4.2/go.mod h1:oDoupMAO8OvCJWAcko0GGGIgR6R6ocIYbsSw735rRwI=
 github.com/golang/protobuf v1.4.3/go.mod h1:oDoupMAO8OvCJWAcko0GGGIgR6R6ocIYbsSw735rRwI=
 github.com/golang/protobuf v1.5.0/go.mod h1:FsONVRAS9T7sI+LIUmWTfcYkHO4aIWwzhcaSAoJOfIk=
-github.com/golang/protobuf v1.5.2 h1:ROPKBNFfQgOUMifHyP+KYbvpjbdoFNs+aK7DXlji0Tw=
 github.com/golang/protobuf v1.5.2/go.mod h1:XVQd3VNwM+JqD3oG2Ue2ip4fOMUkwXdXDdiuN0vRsmY=
+github.com/golang/protobuf v1.5.3 h1:KhyjKVUg7Usr/dYsdSqoFveMYd5ko72D+zANwlG1mmg=
+github.com/golang/protobuf v1.5.3/go.mod h1:XVQd3VNwM+JqD3oG2Ue2ip4fOMUkwXdXDdiuN0vRsmY=
 github.com/golang/snappy v0.0.1/go.mod h1:/XxbfmMg8lxefKM7IXC3fBNl/7bRcc72aCRzEWrmP2Q=
 github.com/golang/snappy v0.0.3/go.mod h1:/XxbfmMg8lxefKM7IXC3fBNl/7bRcc72aCRzEWrmP2Q=
 github.com/golang/snappy v0.0.4/go.mod h1:/XxbfmMg8lxefKM7IXC3fBNl/7bRcc72aCRzEWrmP2Q=
-github.com/golangci/lint-1 v0.0.0-20181222135242-d2cdd8c08219/go.mod h1:/X8TswGSh1pIozq4ZwCfxS0WA5JGXguxk94ar/4c87Y=
 github.com/google/go-cmp v0.2.0/go.mod h1:oXzfMopK8JAjlY9xF4vHSVASa0yLyX7SntLO5aqRK0M=
 github.com/google/go-cmp v0.2.1-0.20190312032427-6f77996f0c42/go.mod h1:8QqcDgzrUqlUb/G2PQTWiueGozuR1884gddMywk6iLU=
 github.com/google/go-cmp v0.3.0/go.mod h1:8QqcDgzrUqlUb/G2PQTWiueGozuR1884gddMywk6iLU=
@@ -73,22 +66,17 @@ github.com/google/go-cmp v0.4.0/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/
 github.com/google/go-cmp v0.5.0/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
 github.com/google/go-cmp v0.5.5/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
 github.com/google/go-cmp v0.5.6/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
+github.com/google/go-cmp v0.5.9 h1:O2Tfq5qg4qc4AmwVlvv0oLiVAGB7enBSJ2x2DqQFi38=
 github.com/google/gofuzz v1.0.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg=
 github.com/google/pprof v0.0.0-20211008130755-947d60d73cc0/go.mod h1:KgnwoLYCZ8IQu3XUZ8Nc/bM9CCZFOyjUNOSygVozoDg=
 github.com/google/uuid v1.1.2/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo=
 github.com/google/uuid v1.3.0 h1:t6JiXgmwXMjEs8VusXIJk2BXHsn+wx8BZdTaoZ5fu7I=
 github.com/google/uuid v1.3.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo=
-github.com/gorilla/mux v1.8.0 h1:i40aqfkR1h2SlN9hojwV5ZA91wcXFOvkdNIeFDP5koI=
-github.com/gorilla/mux v1.8.0/go.mod h1:DVbg23sWSpFRCP0SfiEN6jmj59UnW/n46BH5rLB71So=
 github.com/grpc-ecosystem/grpc-gateway v1.16.0/go.mod h1:BDjrQk3hbvj6Nolgz8mAMFbcEtjT1g+wF4CSlocrBnw=
 github.com/hamba/avro v1.5.6/go.mod h1:3vNT0RLXXpFm2Tb/5KC71ZRJlOroggq1Rcitb6k4Fr8=
 github.com/heetch/avro v0.3.1/go.mod h1:4xn38Oz/+hiEUTpbVfGVLfvOg0yKLlRP7Q9+gJJILgA=
 github.com/iancoleman/orderedmap v0.0.0-20190318233801-ac98e3ecb4b0/go.mod h1:N0Wam8K1arqPXNWjMo21EXnBPOPp36vB07FNRdD2geA=
 github.com/ianlancetaylor/demangle v0.0.0-20210905161508-09a460cdf81d/go.mod h1:aYm2/VgdVmcIU8iMfdMvDMsRAQjcfZSKFby6HOFvi/w=
-github.com/influxdata/influxdb-client-go/v2 v2.12.2 h1:uYABKdrEKlYm+++qfKdbgaHKBPmoWR5wpbmj6MBB/2g=
-github.com/influxdata/influxdb-client-go/v2 v2.12.2/go.mod h1:YteV91FiQxRdccyJ2cHvj2f/5sq4y4Njqu1fQzsQCOU=
-github.com/influxdata/line-protocol v0.0.0-20200327222509-2487e7298839 h1:W9WBk7wlPfJLvMCdtV4zPulc4uCPrlywQOmbFOhgQNU=
-github.com/influxdata/line-protocol v0.0.0-20200327222509-2487e7298839/go.mod h1:xaLFMmpvUxqXtVkUJfg9QmT88cDaCJ3ZKgdZ78oO8Qo=
 github.com/invopop/jsonschema v0.4.0/go.mod h1:O9uiLokuu0+MGFlyiaqtWxwqJm41/+8Nj0lD7A36YH0=
 github.com/jhump/gopoet v0.0.0-20190322174617-17282ff210b3/go.mod h1:me9yfT6IJSlOL3FCfrg+L6yzUEZ+5jW6WHt4Sk+UPUI=
 github.com/jhump/gopoet v0.1.0/go.mod h1:me9yfT6IJSlOL3FCfrg+L6yzUEZ+5jW6WHt4Sk+UPUI=
@@ -100,37 +88,29 @@ github.com/json-iterator/go v1.1.12 h1:PV8peI4a0ysnczrg+LtxykD8LfKY9ML6u2jnxaEnr
 github.com/json-iterator/go v1.1.12/go.mod h1:e30LSqwooZae/UwlEbR2852Gd8hjQvJoHmT4TnhNGBo=
 github.com/juju/qthttptest v0.1.1/go.mod h1:aTlAv8TYaflIiTDIQYzxnl1QdPjAg8Q8qJMErpKy6A4=
 github.com/julienschmidt/httprouter v1.3.0/go.mod h1:JR6WtHb+2LUe8TCKY3cZOxFyyO8IZAc4RVcycCCAKdM=
-github.com/klauspost/compress v1.15.9 h1:wKRjX6JRtDdrE9qwa4b/Cip7ACOshUI4smpCQanqjSY=
-github.com/klauspost/compress v1.15.9/go.mod h1:PhcZ0MbTNciWF3rruxRgKxI5NkcHHrHUDtV4Yw2GlzU=
+github.com/klauspost/compress v1.16.0 h1:iULayQNOReoYUe+1qtKOqw9CwJv3aNQu8ivo7lw1HU4=
+github.com/klauspost/compress v1.16.0/go.mod h1:ntbaceVETuRiXiv4DpjP66DpAtAGkEQskQzEyD//IeE=
 github.com/klauspost/cpuid/v2 v2.0.1/go.mod h1:FInQzS24/EEf25PyTYn52gqo7WaD8xa0213Md/qVLRg=
 github.com/klauspost/cpuid/v2 v2.0.4/go.mod h1:FInQzS24/EEf25PyTYn52gqo7WaD8xa0213Md/qVLRg=
 github.com/klauspost/cpuid/v2 v2.1.0 h1:eyi1Ad2aNJMW95zcSbmGg7Cg6cq3ADwLpMAP96d8rF0=
 github.com/klauspost/cpuid/v2 v2.1.0/go.mod h1:RVVoqg1df56z8g3pUjL/3lE5UfnlrJX8tyFgg4nqhuY=
 github.com/kr/pretty v0.1.0/go.mod h1:dAy3ld7l9f0ibDNOQOHHMYYIIbhfbHSm3C4ZsoJORNo=
 github.com/kr/pretty v0.2.0/go.mod h1:ipq/a2n7PKx3OHsz4KJII5eveXtPO4qwEXGdVfWzfnI=
+github.com/kr/pretty v0.2.1/go.mod h1:ipq/a2n7PKx3OHsz4KJII5eveXtPO4qwEXGdVfWzfnI=
+github.com/kr/pretty v0.3.0 h1:WgNl7dwNpEZ6jJ9k1snq4pZsg7DOEN8hP9Xw0Tsjwk0=
 github.com/kr/pretty v0.3.0/go.mod h1:640gp4NfQd8pI5XOwp5fnNeVWj67G7CFk/SaSQn7NBk=
 github.com/kr/pty v1.1.1/go.mod h1:pFQYn66WHrOpPYNljwOMqo10TkYh1fy3cYio2l3bCsQ=
 github.com/kr/text v0.1.0/go.mod h1:4Jbv+DJW3UT/LiOwJeYQe1efqtUx/iVham/4vfdArNI=
+github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY=
 github.com/kr/text v0.2.0/go.mod h1:eLer722TekiGuMkidMxC/pM04lWEeraHUUmBw8l2grE=
-github.com/labstack/echo/v4 v4.2.1/go.mod h1:AA49e0DZ8kk5jTOOCKNuPR6oTnBS0dYiM4FW1e6jwpg=
-github.com/labstack/gommon v0.3.0/go.mod h1:MULnywXg0yavhxWKc+lOruYdAhDwPK9wf0OL7NoOu+k=
 github.com/linkedin/goavro v2.1.0+incompatible/go.mod h1:bBCwI2eGYpUI/4820s67MElg9tdeLbINjLjiM2xZFYM=
 github.com/linkedin/goavro/v2 v2.10.0/go.mod h1:UgQUb2N/pmueQYH9bfqFioWxzYCZXSfF8Jw03O5sjqA=
 github.com/linkedin/goavro/v2 v2.10.1/go.mod h1:UgQUb2N/pmueQYH9bfqFioWxzYCZXSfF8Jw03O5sjqA=
 github.com/linkedin/goavro/v2 v2.11.1/go.mod h1:UgQUb2N/pmueQYH9bfqFioWxzYCZXSfF8Jw03O5sjqA=
-github.com/mailru/easyjson v0.0.0-20190614124828-94de47d64c63/go.mod h1:C1wdFJiN94OJF2b5HbByQZoLdCWB1Yqtg26g4irojpc=
-github.com/mailru/easyjson v0.0.0-20190626092158-b2ccc519800e/go.mod h1:C1wdFJiN94OJF2b5HbByQZoLdCWB1Yqtg26g4irojpc=
-github.com/matryer/moq v0.0.0-20190312154309-6cfb0558e1bd/go.mod h1:9ELz6aaclSIGnZBoaSLZ3NAl1VTufbOrXBPvtcy6WiQ=
-github.com/mattn/go-colorable v0.1.2/go.mod h1:U0ppj6V5qS13XJ6of8GYAs25YV2eR4EVcfRqFIhoBtE=
-github.com/mattn/go-colorable v0.1.7/go.mod h1:u6P/XSegPjTcexA+o6vUJrdnUu04hMope9wVRipJSqc=
-github.com/mattn/go-colorable v0.1.8/go.mod h1:u6P/XSegPjTcexA+o6vUJrdnUu04hMope9wVRipJSqc=
-github.com/mattn/go-isatty v0.0.8/go.mod h1:Iq45c/XA43vh69/j3iqttzPXn0bhXyGjM0Hdxcsrc5s=
-github.com/mattn/go-isatty v0.0.9/go.mod h1:YNRxwqDuOph6SZLI9vUUz6OYw3QyUt7WiY2yME+cCiQ=
-github.com/mattn/go-isatty v0.0.12/go.mod h1:cbi8OIDigv2wuxKPP5vlRcQ1OAZbq2CE4Kysco4FUpU=
 github.com/minio/md5-simd v1.1.2 h1:Gdi1DZK69+ZVMoNHRXJyNcxrMA4dSxoYHZSQbirFg34=
 github.com/minio/md5-simd v1.1.2/go.mod h1:MzdKDxYpY2BT9XQFocsiZf/NKVtR7nkE4RoEpN+20RM=
-github.com/minio/minio-go/v7 v7.0.35 h1:JuPPxWLdxQmNLSaS8AWZnO5HBadeI1xg6FGrEELQEVU=
-github.com/minio/minio-go/v7 v7.0.35/go.mod h1:nCrRzjoSUQh8hgKKtu3Y708OLvRLtuASMg2/nvmbarw=
+github.com/minio/minio-go/v7 v7.0.41 h1:Qhc82nDRep+VSuDEPSawKUHkARnZI5st7acEqgqVX+k=
+github.com/minio/minio-go/v7 v7.0.41/go.mod h1:nCrRzjoSUQh8hgKKtu3Y708OLvRLtuASMg2/nvmbarw=
 github.com/minio/sha256-simd v1.0.0 h1:v1ta+49hkWZyvaKwrQB8elexRqm6Y0aMLjCNsrYxo6g=
 github.com/minio/sha256-simd v1.0.0/go.mod h1:OuYzVNI5vcoYIAmbIvHPl3N3jUzVedXbKy5RFepssQM=
 github.com/modern-go/concurrent v0.0.0-20180228061459-e0a39a4cb421/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q=
@@ -142,9 +122,6 @@ github.com/modern-go/reflect2 v1.0.2 h1:xBagoLtFs94CBntxluKeaWgTMpvLxC4ur3nMaC9G
 github.com/modern-go/reflect2 v1.0.2/go.mod h1:yWuevngMOJpCy52FWWMvUC8ws7m/LJsjYzDa0/r8luk=
 github.com/nrwiersma/avro-benchmarks v0.0.0-20210913175520-21aec48c8f76/go.mod h1:iKyFMidsk/sVYONJRE372sJuX/QTRPacU7imPqqsu7g=
 github.com/pkg/diff v0.0.0-20210226163009-20ebb0f2a09e/go.mod h1:pJLUxLENpZxwdsKMEsNbx1VGcRFpLqf3715MtcvvzbA=
-github.com/pkg/errors v0.8.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0=
-github.com/pkg/errors v0.9.1 h1:FEBLx1zS214owpjy7qsBeixbURkuhQAwrK5UwLGTwt4=
-github.com/pkg/errors v0.9.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0=
 github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM=
 github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
 github.com/prometheus/client_model v0.0.0-20190812154241-14fe0d1b01d4/go.mod h1:xMI15A0UPsDsEKsMN9yxemIoYk6Tm2C1GtYGdfGttqA=
@@ -152,6 +129,8 @@ github.com/rogpeppe/clock v0.0.0-20190514195947-2896927a307a/go.mod h1:4r5QyqhjI
 github.com/rogpeppe/fastuuid v1.2.0/go.mod h1:jVj6XXZzXRy/MSR5jhDC/2q6DgLz+nrA6LYCDYWNEvQ=
 github.com/rogpeppe/go-internal v1.6.1/go.mod h1:xXDCJY+GAPziupqXw64V24skbSoqbTEfhy4qGm1nDQc=
 github.com/rogpeppe/go-internal v1.8.0/go.mod h1:WmiCO8CzOY8rg0OYDC4/i/2WRWAB6poM+XZ2dLUbcbE=
+github.com/rogpeppe/go-internal v1.8.1 h1:geMPLpDpQOgVyCg5z5GoRwLHepNdb71NXb67XFkP+Eg=
+github.com/rogpeppe/go-internal v1.8.1/go.mod h1:JeRgkft04UBgHMgCIwADu4Pn6Mtm5d4nPKWu0nJ5d+o=
 github.com/rs/xid v1.4.0 h1:qd7wPTDkN6KQx2VmMBLrpHkiyQwgFXRnkOLacUiaSNY=
 github.com/rs/xid v1.4.0/go.mod h1:trrq9SKmegXys3aeAKXMUTdJsYXVwGY3RLcfgqegfbg=
 github.com/santhosh-tekuri/jsonschema/v5 v5.0.0/go.mod h1:FKdcjfQW6rpZSnxxUvEA5H/cDPdvJ/SZJQLWWXWGrZ0=
@@ -160,23 +139,18 @@ github.com/sirupsen/logrus v1.9.0/go.mod h1:naHLuLoDiP4jHNo9R0sCBMtWGeIprob74mVs
 github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME=
 github.com/stretchr/testify v1.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UVUgZn+9EI=
 github.com/stretchr/testify v1.3.1-0.20190311161405-34c6fa2dc709/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UVUgZn+9EI=
-github.com/stretchr/testify v1.4.0/go.mod h1:j7eGeouHqKxXV5pUuKE4zz7dFj8WfuZ+81PSLYec5m4=
 github.com/stretchr/testify v1.5.1/go.mod h1:5W2xD1RspED5o8YsWQXVCued0rvSQ+mT+I5cxcmMvtA=
 github.com/stretchr/testify v1.7.0/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg=
 github.com/stretchr/testify v1.7.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg=
-github.com/stretchr/testify v1.8.0 h1:pSgiaMZlXftHpm5L7V1+rVB+AZJydKsMxsQBIJw4PKk=
-github.com/valyala/bytebufferpool v1.0.0/go.mod h1:6bBcMArwyJ5K/AmCkWv1jt77kVWyCJ6HpOuEn7z0Csc=
-github.com/valyala/fasttemplate v1.0.1/go.mod h1:UQGH1tvbgY+Nz5t2n7tXsz52dQxojPUpymEIMZ47gx8=
-github.com/valyala/fasttemplate v1.2.1/go.mod h1:KHLXt3tVN2HBp8eijSv/kGJopbvo7S+qRAEEKiv+SiQ=
+github.com/stretchr/testify v1.8.4 h1:CcVxjf3Q8PM0mHUKJCdn+eZZtm5yQwehR5yeSVQQcUk=
+github.com/stretchr/testify v1.8.4/go.mod h1:sz/lmYIOXD/1dqDmKjjqLyZ2RngseejIcXlSw2iwfAo=
 github.com/yuin/goldmark v1.1.27/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74=
 go.opentelemetry.io/proto/otlp v0.7.0/go.mod h1:PqfVotwruBrMGOCsRd/89rSnXhoiJIqeYNgFYFoEGnI=
 golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w=
 golang.org/x/crypto v0.0.0-20191011191535-87dc89f01550/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI=
 golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto=
-golang.org/x/crypto v0.0.0-20200820211705-5c72a883971a/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto=
-golang.org/x/crypto v0.0.0-20201221181555-eec23a3978ad/go.mod h1:jdWPYTVW3xRLrWPugEBEK3UY2ZEsg3UU495nc5E+M+I=
-golang.org/x/crypto v0.0.0-20220722155217-630584e8d5aa h1:zuSxTR4o9y82ebqCUJYNGJbGPo6sKVl54f/TVDObg1c=
-golang.org/x/crypto v0.0.0-20220722155217-630584e8d5aa/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4=
+golang.org/x/crypto v0.13.0 h1:mvySKfSWJ+UKUii46M40LOvyWfN0s2U+46/jDd0e6Ck=
+golang.org/x/crypto v0.13.0/go.mod h1:y6Z2r+Rw4iayiXXAIxJIDAJ1zMW4yaTpebo8fPOliYc=
 golang.org/x/exp v0.0.0-20190121172915-509febef88a4/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA=
 golang.org/x/lint v0.0.0-20181026193005-c67002cb31c3/go.mod h1:UVdnD1Gm6xHRNCYTkRU2/jEulfH38KcIWyp/GAMgvoE=
 golang.org/x/lint v0.0.0-20190227174305-5b3e6a55c961/go.mod h1:wehouNa3lNwaWXcvxsM5YxQ5yQlVC4a0KAMCusXpPoU=
@@ -188,19 +162,20 @@ golang.org/x/net v0.0.0-20190108225652-1e06a53dbb7e/go.mod h1:mL1N/T3taQHkDXs73r
 golang.org/x/net v0.0.0-20190213061140-3a22650c66bd/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=
 golang.org/x/net v0.0.0-20190311183353-d8887717615a/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg=
 golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg=
+golang.org/x/net v0.0.0-20190603091049-60506f45cf65/go.mod h1:HSz+uSET+XFnRR8LxR5pz3Of3rY3CfYBVs4xY44aLks=
 golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
 golang.org/x/net v0.0.0-20200226121028-0de0cce0169b/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
 golang.org/x/net v0.0.0-20200505041828-1ed23360d12c/go.mod h1:qpuaurCH72eLCgpAm/N6yyVIVM9cpaDIP3A8BGJEC5A=
 golang.org/x/net v0.0.0-20200625001655-4c5254603344/go.mod h1:/O7V0waA8r7cgGh81Ro3o1hOxt32SMVPicZroKQ2sZA=
 golang.org/x/net v0.0.0-20200822124328-c89045814202/go.mod h1:/O7V0waA8r7cgGh81Ro3o1hOxt32SMVPicZroKQ2sZA=
 golang.org/x/net v0.0.0-20201021035429-f5854403a974/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU=
-golang.org/x/net v0.0.0-20210119194325-5f4716e94777/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg=
 golang.org/x/net v0.0.0-20210405180319-a5a99cb37ef4/go.mod h1:p54w0d4576C0XHj96bSt6lcn1PtDYWL6XObtHCRCNQM=
-golang.org/x/net v0.0.0-20220722155237-a158d28d115b h1:PxfKdU9lEEDYjdIzOtC4qFWgkU2rGHdKlKowJSMN9h0=
-golang.org/x/net v0.0.0-20220722155237-a158d28d115b/go.mod h1:XRhObCWvk6IyKnWLug+ECip1KBveYUHfp+8e9klMJ9c=
+golang.org/x/net v0.15.0 h1:ugBLEUaxABaB5AJqW9enI0ACdci2RUd4eP51NTBvuJ8=
+golang.org/x/net v0.15.0/go.mod h1:idbUs1IY1+zTqbi8yxTbhexhEEk5ur9LInksu6HrEpk=
 golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U=
-golang.org/x/oauth2 v0.0.0-20200107190931-bf48bf16ab8d h1:TzXSXBo42m9gQenoE3b9BGiEpg5IG2JkU5FkPIawgtw=
 golang.org/x/oauth2 v0.0.0-20200107190931-bf48bf16ab8d/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw=
+golang.org/x/oauth2 v0.12.0 h1:smVPGxink+n1ZI5pkQa8y6fZT0RW0MgCO5bFpepy4B4=
+golang.org/x/oauth2 v0.12.0/go.mod h1:A74bZ3aGXgCY0qaIC9Ahg6Lglin4AMAco8cIv9baba4=
 golang.org/x/sync v0.0.0-20180314180146-1d60e4601c6f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
 golang.org/x/sync v0.0.0-20181108010431-42b317875d0f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
 golang.org/x/sync v0.0.0-20181221193216-37e7f081c4d4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
@@ -209,50 +184,40 @@ golang.org/x/sync v0.0.0-20190911185100-cd5d95a43a6e/go.mod h1:RxMgew5VJxzue5/jJ
 golang.org/x/sync v0.0.0-20210220032951-036812b2e83c/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
 golang.org/x/sys v0.0.0-20180830151530-49385e6e1522/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
 golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
-golang.org/x/sys v0.0.0-20190222072716-a9d3bda3a223/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
 golang.org/x/sys v0.0.0-20190412213103-97732733099d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
-golang.org/x/sys v0.0.0-20190813064441-fde4db37ae7a/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
-golang.org/x/sys v0.0.0-20191026070338-33540a1f6037/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
-golang.org/x/sys v0.0.0-20200116001909-b77594299b42/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
-golang.org/x/sys v0.0.0-20200223170610-d5e6a3e2c0ae/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
 golang.org/x/sys v0.0.0-20200323222414-85ca7c5b95cd/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
-golang.org/x/sys v0.0.0-20200826173525-f9321e4c35a6/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
 golang.org/x/sys v0.0.0-20200930185726-fdedc70b468f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
 golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
 golang.org/x/sys v0.0.0-20210119212857-b64e53b001e4/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
-golang.org/x/sys v0.0.0-20210124154548-22da62e12c0c/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
 golang.org/x/sys v0.0.0-20210330210617-4fbd30eecc44/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
 golang.org/x/sys v0.0.0-20210510120138-977fb7262007/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
 golang.org/x/sys v0.0.0-20211007075335-d3039528d8ac/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
 golang.org/x/sys v0.0.0-20220704084225-05e143d24a9e/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
 golang.org/x/sys v0.0.0-20220715151400-c0bba94af5f8/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
-golang.org/x/sys v0.0.0-20220722155257-8c9f86f7a55f h1:v4INt8xihDGvnrfjMDVXGxw9wrfxYyCjk0KbXjhR55s=
-golang.org/x/sys v0.0.0-20220722155257-8c9f86f7a55f/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
-golang.org/x/term v0.0.0-20201117132131-f5c789dd3221/go.mod h1:Nr5EML6q2oocZ2LXRh80K7BxOlk5/8JxuGnuhpl+muw=
+golang.org/x/sys v0.12.0 h1:CM0HF96J0hcLAwsHPJZjfdNzs0gftsLfgKt57wWHJ0o=
+golang.org/x/sys v0.12.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
 golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo=
 golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
 golang.org/x/text v0.3.2/go.mod h1:bEr9sfX3Q8Zfm5fL9x+3itogRgK3+ptLWKqgva+5dAk=
 golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
 golang.org/x/text v0.3.5/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
-golang.org/x/text v0.3.7 h1:olpwvP2KacW1ZWvsR7uQhoyTYvKAupfQrRGBFM352Gk=
-golang.org/x/text v0.3.7/go.mod h1:u+2+/6zg+i71rQMx5EYifcz6MCKuco9NR6JIITiCfzQ=
-golang.org/x/time v0.0.0-20201208040808-7e3f01d25324/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ=
-golang.org/x/time v0.0.0-20210220033141-f8bda1e9f3ba/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ=
+golang.org/x/text v0.13.0 h1:ablQoSUd0tRdKxZewP80B+BaqeKJuVhuRxj/dkrun3k=
+golang.org/x/text v0.13.0/go.mod h1:TvPlkZtksWOMsz7fbANvkp4WM8x/WCo/om8BMLbz+aE=
 golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
 golang.org/x/tools v0.0.0-20190114222345-bf090417da8b/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
 golang.org/x/tools v0.0.0-20190226205152-f727befe758c/go.mod h1:9Yl7xja0Znq3iFh3HoIrodX9oNMXvdceNzlUR8zjMvY=
 golang.org/x/tools v0.0.0-20190311212946-11955173bddd/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs=
 golang.org/x/tools v0.0.0-20190524140312-2c0ae7006135/go.mod h1:RgjU9mgBXZiqYHBnxXauZ1Gv1EHHAz9KjViQ78xBX0Q=
 golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo=
-golang.org/x/tools v0.0.0-20191125144606-a911d9008d1f/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo=
 golang.org/x/tools v0.0.0-20200505023115-26f46d2f7ef8/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE=
 golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
 golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
 golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
 golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
 google.golang.org/appengine v1.1.0/go.mod h1:EbEs0AVv82hx2wNQdGPgUI5lhzA/G0D9YwlJXL52JkM=
-google.golang.org/appengine v1.4.0 h1:/wp5JvzpHIxhs/dumFmF7BXTf3Z+dd4uXta4kVyO508=
 google.golang.org/appengine v1.4.0/go.mod h1:xpcJRLb0r/rnEns0DIKYYv+WjYCduHsrkT7/EB5XEv4=
+google.golang.org/appengine v1.6.7 h1:FZR1q0exgwxzPzp/aF+VccGrSfxfPpkBqjIIEq3ru6c=
+google.golang.org/appengine v1.6.7/go.mod h1:8WjMMxjGQR8xUklV/ARdw2HLXBOI7O7uCIDZVag1xfc=
 google.golang.org/genproto v0.0.0-20180817151627-c66870c02cf8/go.mod h1:JiN7NxoALGmiZfu7CAH4rXhgtRTLTxftemlI0sWmxmc=
 google.golang.org/genproto v0.0.0-20190819201941-24fa4b261c55/go.mod h1:DMBHOl98Agz4BDEuKkezgsaosCRResVns1a3J2ZsMNc=
 google.golang.org/genproto v0.0.0-20200513103714-09dca8ec2884/go.mod h1:55QSHmfGQM9UVYDPBsyGGes0y52j32PQ3BqQfXhyH3c=
@@ -278,26 +243,29 @@ google.golang.org/protobuf v1.25.0/go.mod h1:9JNX74DMeImyA3h4bdi1ymwjUzf21/xIlba
 google.golang.org/protobuf v1.26.0-rc.1/go.mod h1:jlhhOSvTdKEhbULTjvd4ARK9grFBp09yW+WbY/TyQbw=
 google.golang.org/protobuf v1.26.0/go.mod h1:9q0QmTI4eRPtz6boOQmLYwt+qCgq0jsYwAQnmE0givc=
 google.golang.org/protobuf v1.27.1/go.mod h1:9q0QmTI4eRPtz6boOQmLYwt+qCgq0jsYwAQnmE0givc=
-google.golang.org/protobuf v1.28.0 h1:w43yiav+6bVFTBQFZX0r7ipe9JQ1QsbMgHwbBziscLw=
 google.golang.org/protobuf v1.28.0/go.mod h1:HV8QOd/L58Z+nl8r43ehVNZIU/HEI6OcFqwMG9pJV4I=
+google.golang.org/protobuf v1.31.0 h1:g0LDEJHgrBl9N9r17Ru3sqWhkIx2NB67okBHPwC7hs8=
+google.golang.org/protobuf v1.31.0/go.mod h1:HV8QOd/L58Z+nl8r43ehVNZIU/HEI6OcFqwMG9pJV4I=
 gopkg.in/avro.v0 v0.0.0-20171217001914-a730b5802183/go.mod h1:FvqrFXt+jCsyQibeRv4xxEJBL5iG2DDW5aeJwzDiq4A=
 gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
 gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
 gopkg.in/check.v1 v1.0.0-20190902080502-41f04d3bba15/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
+gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c h1:Hei/4ADfdWqJk1ZMxUNpqntNwaWcugrBjAiHlqqRiVk=
+gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c/go.mod h1:JHkPIbrfpd72SG/EVd6muEfDQjcINNoR0C8j2r3qZ4Q=
 gopkg.in/errgo.v1 v1.0.0/go.mod h1:CxwszS/Xz1C49Ucd2i6Zil5UToP1EmyrFhKaMVbg1mk=
 gopkg.in/errgo.v2 v2.1.0/go.mod h1:hNsd1EY+bozCKY1Ytp96fpM3vjJbqLJn88ws8XvfDNI=
 gopkg.in/httprequest.v1 v1.2.1/go.mod h1:x2Otw96yda5+8+6ZeWwHIJTFkEHWP/qP8pJOzqEtWPM=
-gopkg.in/ini.v1 v1.66.6 h1:LATuAqN/shcYAOkv3wl2L4rkaKqkcgTBQjOyYDvcPKI=
-gopkg.in/ini.v1 v1.66.6/go.mod h1:pNLf8WUiyNEtQjuu5G5vTm06TEv9tsIgeAvK8hOrP4k=
+gopkg.in/ini.v1 v1.67.0 h1:Dgnx+6+nfE+IfzjUEISNeydPJh9AXNNsWbGP9KzCsOA=
+gopkg.in/ini.v1 v1.67.0/go.mod h1:pNLf8WUiyNEtQjuu5G5vTm06TEv9tsIgeAvK8hOrP4k=
 gopkg.in/mgo.v2 v2.0.0-20190816093944-a6b53ec6cb22/go.mod h1:yeKp02qBN3iKW1OzL3MGk2IdtZzaj7SFntXj72NppTA=
 gopkg.in/retry.v1 v1.0.3/go.mod h1:FJkXmWiMaAo7xB+xhvDF59zhfjDWyzmyAxiT4dB688g=
 gopkg.in/yaml.v2 v2.2.2/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI=
 gopkg.in/yaml.v2 v2.2.3/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI=
 gopkg.in/yaml.v2 v2.2.7/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI=
 gopkg.in/yaml.v2 v2.2.8/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI=
-gopkg.in/yaml.v2 v2.3.0/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI=
 gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
 gopkg.in/yaml.v3 v3.0.0-20210107192922-496545a6307b/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
 gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA=
+gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
 honnef.co/go/tools v0.0.0-20190102054323-c2f93a96b099/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4=
 honnef.co/go/tools v0.0.0-20190523083050-ea95bdfd59fc/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4=
diff --git a/sonar-project.properties b/sonar-project.properties
new file mode 100644 (file)
index 0000000..63b49bb
--- /dev/null
@@ -0,0 +1,6 @@
+sonar.build.sourceEncoding=UTF-8
+sonar.exclusions=**/*_test.go,**/gentools/**/*,**/mocks/**/*,**/*.gen.go,**/*.html,docs/conf.py
+sonar.sources=collector
+sonar.tests=pm-file-converter
+sonar.test.inclusions=**/*_test.go
+sonar.typescript.lcov.reportPaths=pm-file-converter/coverage.txt