Should this use `public_send` maybe?