//** github.com/tendermint/dex-demo@v0.0.2 **//

{{Types "Apache-2.0"}}

This software is distrbuted under the terms of the terms of Apache License
Version 2.0 and is:

  Copyright __8__

You should have received a copy of the Apache License version 2.0 along with
this program. If not, see <https://www.apache.org/licenses/LICENSE-2.0>.
