hack and slash -- this is not nice