Added print and open functionality to protocols