decorator with timer