added duration management