Add Adopt algorithm