@Override
    void remove(final int x, final List<int[]> cycles) {

        final List<PathEdge> edges = remove(x);
        final List<PathEdge> reduced = combine(edges, x);

        for (final PathEdge e : reduced) {
            if (e.len() <= limit) {
                if (e.loop())
                    cycles.add(e.path());
                else
                    add(e);
            }
        }
    }
@ Override void remove ( final int x , final List < int [ ] > cycles ) { final List < PathEdge > edges = remove ( x ) ; final List < PathEdge > reduced = combine ( edges , x ) ; for ( final PathEdge e : reduced ) { if ( e . len ( ) <= limit ) { if ( e . loop ( ) ) cycles . add ( e . path ( ) ) ; else add ( e ) ; } } }
{@inheritDoc}