private void deserializeSubscription(final MeshModel meshModel, final JsonObject jsonObject) {
        final List<Integer> subscriptions = new ArrayList<>();
        if (!(jsonObject.has("subscribe"))) {
            return;
        }

        final JsonArray jsonArray = jsonObject.get("subscribe").getAsJsonArray();
        for (int i = 0; i < jsonArray.size(); i++) {
            final String hexAddress = jsonArray.get(i).getAsString();
            final int address;
            if (hexAddress.length() == 32) {
                final UUID uuid = UUID.fromString(MeshParserUtils.formatUuid(hexAddress));
                address = MeshAddress.generateVirtualAddress(uuid);
                meshModel.labelUuids.add(uuid);
            } else {
                address = Integer.parseInt(hexAddress, 16);
            }
            subscriptions.add(address);
        }
        meshModel.subscriptionAddresses.addAll(subscriptions);
    }
Sets subscription addresses to a mesh model from json

@param meshModel  Mesh Model
@param jsonObject Json representation of the mesh model
mesh/src/main/java/no/nordicsemi/android/mesh/transport/MeshModelListDeserializer.java