need to clean this, will branch before sorcery