Brokened, working on rewrite.