forked from: WireForest

