reduced to 3 arguments
uses o.display now