common alg for myself