func ExactIn(route *Route, amountIn *TokenAmount) (*Trade, error) {
	return NewTrade(route, amountIn, constants.ExactInput)
}
Constructs an exact in trade with the given amount in and route
@param route route of the exact in trade
@param amountIn the amount being passed in
package entities
import (
	"fmt"
	"github.com/miraclesu/uniswap-sdk-go/constants"
)
var (
	ErrInvalidSlippageTolerance = fmt.Errorf("invalid slippage tolerance")
)
type Trade struct {
	Route *Route
	TradeType constants.TradeType
	inputAmount *TokenAmount
	outputAmount *TokenAmount
	ExecutionPrice *Price
	NextMidPrice *Price
	PriceImpact *Percent
}
func (t *Trade) InputAmount() *TokenAmount {
	return t.inputAmount
}
func (t *Trade) OutputAmount() *TokenAmount {
	return t.outputAmount
}