fixed the def macro; tinkering with quasiquote