with put_val, get_val
Tested