An offer by a merchant to buy or sell goods in a signed writing that by its terms gives assurance that it will be held open is not revocable, for lack of consideration, during the time stated or if no time is stated for a reasonable time, but in no event may the period or irrevocability exceed three months. A term of assurance on a form supplied by the offeree must be separately signed by the offeror.