class GarbageCollector implements InternalService {

    private void collect(long untilBlock) {
        BlockHeader untilHeader = blockStore.getChainBlockByNumber(untilBlock).getHeader();
        multiTrieStore.collect(repositoryLocator.snapshotAt(untilHeader).getRoot());
    }

    public  GarbageCollector(CompositeEthereumListener emitter,
                            int blocksPerEpoch,
                            int numberOfEpochs,
                            MultiTrieStore multiTrieStore,
                            BlockStore blockStore,
                            RepositoryLocator repositoryLocator);

}