class TrieConverter {

    public byte[] getOrchidAccountTrieRoot(Trie src) {
        Metric metric = profiler.start(Profiler.PROFILING_TYPE.TRIE_CONVERTER_GET_ACCOUNT_ROOT);
        byte[] trieRoot =  cacheHashes.computeIfAbsent(src.getHash(), k -> {
            Trie trie = getOrchidAccountTrieRoot(src.getSharedPath(), src, true);
            return trie == null ? HashUtil.EMPTY_TRIE_HASH : trie.getHashOrchid(true).getBytes();
        });
        profiler.stop(metric);
        return trieRoot;
    }

    public  TrieConverter();

}