protected OchSignal createOchSignal(JsonNode connectivityReply) throws IllegalArgumentException {
        if (connectivityReply.has("result")
                && connectivityReply.get("result").has("response")) {
            Iterator<JsonNode> elements = connectivityReply.get("result").get("response").elements()
                    .next().get("path-properties").get("path-route-objects").elements();
            Iterable<JsonNode> iterable = () -> elements;
            List<JsonNode> elementsList = StreamSupport
                    .stream(iterable.spliterator(), false)
                    .collect(Collectors.toList());
            int n = 0;
            int m = 0;
            for (JsonNode node : elementsList) {
                if (node.get("path-route-object").has("label-hop")) {
                    n = node.get("path-route-object").get("label-hop").get("N").asInt();
                    m = node.get("path-route-object").get("label-hop").get("M").asInt();
                    break;
                }
            }
            int offset = 193100;

            double centralFreq = offset + (n * CHL_6P25GHZ.frequency().asGHz());
            try {
                int multiplier = getMultplier(centralFreq, GridType.DWDM, CHL_50GHZ);
                return new OchSignal(GridType.DWDM, CHL_50GHZ, multiplier, 4);
            } catch (RuntimeException e) {
                /* catching RuntimeException as both NullPointerException (thrown by
                 * checkNotNull) and IllegalArgumentException (thrown by checkArgument)
                 * are subclasses of RuntimeException.
                 */
                throw new IllegalArgumentException(e);
            }
        }
        return null;
    }
@Test
    public void testCreateOchSignal() throws IOException {
        OchSignal signal = manager.createOchSignal(reply);
        System.out.println(signal);
        assertEquals(signal.gridType(), GridType.DWDM);
        assertEquals(signal.slotWidth().asGHz(), 50.000);
        assertEquals(-35, signal.spacingMultiplier());
    }