protein has