it is useable before modify