Vance claims US 'has all the cards' in deal with Iran