private static RoutingTable createRemoteRT(Host host, Case CASE) throws UnknownHostException {
        // the following are stored in the REMOTE host
        RoutingTable remoteRT = new RoutingTable();
        remoteRT.setLocalhost(host);

        if (CASE.compareTo(Case.BOOTSTRAP_1) == 0 || CASE.compareTo(Case.BOOTSTRAP_2) == 0) {
            return remoteRT;
        }

        // CASE == 2 & 3: local == 0 && remote > 0
        PGridHost host1 = new PGridHost("127.0.0.1", 1001);
        host1.setHostPath("1");
        host1.setUUID(hostUUID_.get(1));
        PGridHost host2 = new PGridHost("127.0.0.1", 1002);
        host2.setHostPath("01");
        host2.setUUID(hostUUID_.get(2));

        remoteRT.addReference(0, host1);
        remoteRT.addReference(1, host2);

        switch (CASE) {
            case CASE_1:
                // CASE == 1: local == 0 && remote == 0
                PGridHost host3 = new PGridHost("127.0.0.1", 1003);
                host3.setHostPath("001");
                remoteRT.addReference(2, host3);
                host3.setUUID(hostUUID_.get(3));
                break;
            case CASE_4:
                // CASE == 4: local > 0 && remote > 0
                PGridHost host6 = new PGridHost("127.0.0.1", 3000); // points to local host
                host6.setHostPath("000");
                host6.setUUID(hostUUID_.get(4));
                remoteRT.addReference(2, host6);
                break;
        }
        return remoteRT;
    }