2moon implementation