added public 'open' method