Do not rely on side-effect