consensus types