(distance ?Ghost ?Dist0&:(betweenRange ?Dist0 3.75 5.0)) (distance ?PowerDot ?Dist1&:(betweenRange ?Dist1 2.5 7.5)) (ghost ?Ghost) (powerDot ?PowerDot) (not (edible ?Ghost)) => (moveTo ?PowerDot ?Dist1)
(distance ?Ghost ?Dist0&:(betweenRange ?Dist0 0.0 2.5)) (distance ?PowerDot ?Dist1&:(betweenRange ?Dist1 0 10)) (ghost ?Ghost) (powerDot ?PowerDot) (not (edible ?Ghost)) => (moveTo ?PowerDot ?Dist1)
(distance ?X ?__Num0&:(betweenRange ?__Num0 38.671875 40.390625)) (ghost ?X) (not (edible ?X)) => (moveFrom ?X ?__Num0)
(distance ?Ghost ?Dist0&:(betweenRange ?Dist0 5.0 10.0)) (distance ?PowerDot ?Dist1&:(betweenRange ?Dist1 5.0 10.0)) (ghost ?Ghost) (powerDot ?PowerDot) (not (edible ?Ghost)) => (moveTo ?PowerDot ?Dist1)
(distance ?X ?__Num1&:(betweenRange ?__Num1 0.0 55.0)) (dot ?X) => (moveTo ?X ?__Num1)
(distance ?X ?__Num0&:(betweenRange ?__Num0 0.0 13.75)) (ghost ?X) (not (blinking ?X)) (not (edible ?X)) => (moveFrom ?X ?__Num0)
(junctionSafety ?X ?__Num2&:(betweenRange ?__Num2 -5.75 18.75)) => (toJunction ?X ?__Num2)
(distance ?X ?__Num0&:(betweenRange ?__Num0 0.0 27.5)) (powerDot ?X) => (moveFrom ?X ?__Num0)