refactored cthulhu