+
+Behaviour PushL
+ take control: Touched on left
+ action:
+ right motor forward
+ left motor forward with speed 50 acceleration 1000
+
+Behaviour PushR
+ take control: Touched on right
+ action:
+ left motor forward
+ right motor forward with speed 50 acceleration 1000
+
+Behaviour PushB
+ take control: (&& Touched on left Touched on right)
+ action:
+ set flag Pushing
+ left motor forward
+ right motor forward
+ wait forever
+
+Behaviour StopPushing
+ take control: (&& not Touched on left not Touched on right flag set Pushing)
+ action:
+ left motor backward
+ right motor backward
+ wait 1000ms
+ turn left exactly 180 degrees
+ set flag Pushed
+
+Behaviour FoundLineL
+ take control: (&& (|| not flag set LeftLine not flag set RightLine) Light on left not Light on right Color is Black)
+ action:
+ left motor backward with speed 75 acceleration 1000
+ right motor backward with speed 75 acceleration 1000
+ wait 1000 ms
+ set flag LeftLine
+
+Behaviour FoundLineR
+ take control: (&& (|| not flag set LeftLine not flag set RightLine) Light on right not Light on left Color is Black)
+ action:
+ left motor backward with speed 75 acceleration 1000
+ right motor backward with speed 75 acceleration 1000
+ wait 1000 ms
+ set flag RightLine
+
+Behaviour FollowLGood
+ take control: (&& flag set LeftLine Light on left)
+ action:
+ left motor forward with speed 75 acceleration 1000
+ right motor backward with speed 60 acceleration 1000
+
+Behaviour FollowLBad
+ take control: (&& flag set LeftLine not Light on left)
+ action:
+ left motor forward with speed 75 acceleration 1000
+ right motor forward with speed 100 acceleration 1000
+
+Behaviour FollowRGood
+ take control: (&& flag set RightLine Light on right)
+ action:
+ right motor forward with speed 75 acceleration 1000
+ left motor backward with speed 60 acceleration 1000
+
+Behaviour FollowRBad
+ take control: (&& flag set RightLine not Light on right)
+ action:
+ right motor forward with speed 75 acceleration 1000
+ left motor forward with speed 100 acceleration 1000
+
+Behaviour FoundParkingSpace
+ take control: (&& (|| flag set LeftLine flag set RightLine) Color is White)
+ action:
+ set flag Parked