function vestedAmount() public returns (uint256) {
    
    currentBalance = token.balanceOf(this);
    totalBalance = currentBalance.add(released[token]);
    if (block.timestamp < cliff) {
      return 0;
    } else if (block.timestamp >= start.add(duration) || revoked[token]) {
      return totalBalance;
    } else {
        
      return totalBalance.mul(block.timestamp.sub(start)).div(duration);
    }
  }