like a normal function