@blakewatters aren't we trying to stay away from `typedef`ing blocks?