Usual algorithms implement