updated core API