generate outputs