breaking changes, everything is handled through the exported method