coverted helpers to new implementation