Rewrite Value interface -> use properties