added expiration date functionality