Adapted multiple classes to the new protocols (still WIP)