Allowing the timeout to be a function so that ttl can be specified dynamically
0.0.2