utils are synchronous