add setValue(), cleanup example