Revert #588 because of being not protocol-agnostic, sorry.