added the possibility to pass opts to format methods