reuse  instead of recomputing it