add var name, numeric var and mapped var are tested and well commented