more protocols, updated tests