changed main:: and main:: to protected