add array protocol type