add protocol & remove unused code