cache expiration time (#4); check expiration (#2)