forked from: Inverted Octopus

