working on undefined functions