use protocol launcher class