class LHSGeneratorContextFactory {

    public List<LHSGeneratorContext> getPeers(final LHSGeneratorContext peer) {
        final List<LHSGeneratorContext> peers = new ArrayList<LHSGeneratorContext>();
        for (LHSGeneratorContext c : contexts) {
            if (c.getDepth() == peer.getDepth()) {
                peers.add(c);
            }
        }
        peers.remove(peer);
        return peers;
    }

}