added class designs for creating output instances