all functions populated

need debug