added drum and algorithm stuffs