generates output