/**
 * Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE
 * file distributed with this work for additional information regarding copyright ownership. The ASF licenses this file
 * to You under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the
 * License. You may obtain a copy of the License at
 *
 * http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on
 * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the
 * specific language governing permissions and limitations under the License.
 */
rootProject.name='tuweni'
include 'bytes'
include 'concurrent'
include 'concurrent-coroutines'
include 'config'
include 'crypto'
include 'devp2p'
include 'dist'
include 'eth'
include 'eth-reference-tests'
include 'eth-repository'
include 'gossip'
include 'io'
include 'junit'
include 'kademlia'
include 'kv'
include 'les'
include 'merkle-trie'
include 'net'
include 'net-coroutines'
include 'plumtree'
include 'progpow'
include 'rlp'
include 'rlpx'
include 'scuttlebutt'
include 'scuttlebutt-discovery'
include 'scuttlebutt-handshake'
include 'scuttlebutt-rpc'
include 'ssz'
include 'toml'
include 'units'
