add reset and annotation reuse function