add init algorithms