crazy simulate read-only once set