forked from: TypeShoot

