25        SimDuration 
const delay =
 
   26            round<milliseconds>(0.2 * parms.ledgerGRANULARITY);
 
   27        PeerGroup a = sim.createGroup(1);
 
   28        PeerGroup b = sim.createGroup(1);
 
   29        PeerGroup c = sim.createGroup(1);
 
   30        PeerGroup d = sim.createGroup(1);
 
   31        PeerGroup e = sim.createGroup(1);
 
   32        PeerGroup f = sim.createGroup(1);
 
   33        PeerGroup g = sim.createGroup(1);
 
   35        a.trustAndConnect(a + b + c + g, delay);
 
   36        b.trustAndConnect(b + a + c + d + e, delay);
 
   37        c.trustAndConnect(c + a + b + d + e, delay);
 
   38        d.trustAndConnect(d + b + c + e + f, delay);
 
   39        e.trustAndConnect(e + b + c + d + f, delay);
 
   40        f.trustAndConnect(f + d + e + g, delay);
 
   41        g.trustAndConnect(g + a + f, delay);
 
   43        PeerGroup network = a + b + c + d + e + f + g;
 
   47        sim.collectors.add(sc);
 
   49        for (TrustGraph<Peer*>::ForkInfo 
const& fi :
 
   50             sim.trustGraph.forkablePairs(0.8))
 
   52            std::cout << 
"Can fork " << PeerGroup{fi.unlA} << 
" " 
   53                      << 
" " << PeerGroup{fi.unlB} << 
" overlap " << fi.overlap
 
   54                      << 
" required " << fi.required << 
"\n";
 
   60        PeerGroup byzantineNodes = a + b + c + g;
 
   62        for (
Peer* peer : network)
 
   67            if (byzantineNodes.contains(peer))
 
   69                peer->txInjections.emplace(
 
   70                    peer->lastClosedLedger.seq(), Tx{42});
 
   74        std::cout << 
"Branches: " << sim.branches() << 
"\n";
 
   76                  << sim.synchronized() << 
"\n";