sorcery implemented