generic output format