magic handling of get_* and set_*