loops, functions, format