finished implementing lowering for values