Added protocol and task