Code not working correctly

In the middle of the program, the robot rushes forward with 3 motors full speed into the platform and releases both pneumatics, i did not code this

competition Competition;

// User defined function
void myblockfunction_StartOnly();
// User defined function
void myblockfunction_m2();

float myVariable;

bool digitaloutON, Digitalout2;

event message1 = event();
event m2 = event();

// User defined function
void myblockfunction_StartOnly() {
  m2.broadcast();
  wait(0.1, seconds);
}

// User defined function
void myblockfunction_m2() {
  wait(0.5, seconds);
  m2.broadcast();
  wait(0.5, seconds);
}

// "when Controller1 ButtonA released" hat block
void onevent_Controller1ButtonA_released_0() {
  rEings.stop();
}

int whenStarted1() {
  digitaloutON = true;
  DigitalOutA.set(false);
  Digitalout2 = true;
  DigitalOutB.set(false);
  return 0;
}

int ondriver_drivercontrol_0() {
  digitaloutON = true;
  DigitalOutA.set(false);
  Digitalout2 = true;
  DigitalOutB.set(false);
  rEings.setVelocity(100.0, percent);
  RemoteControlCodeEnabled = true;
  Drivetrain.setDriveVelocity(100.0, percent);
  Drivetrain.setTurnVelocity(100.0, percent);
  arm.setVelocity(100.0, percent);
  arm.setMaxTorque(70.0, percent);
  rEings.setVelocity(40.0, percent);
  return 0;
}

int onauton_autonomous_0() {
  digitaloutON = true;
  DigitalOutA.set(false);
  Digitalout2 = true;
  DigitalOutB.set(false);
  wait(0.5, seconds);
  Drivetrain.setHeading(270.0, degrees);
  rEings.setVelocity(100.0, percent);
  RemoteControlCodeEnabled = false;
  arm.setVelocity(100.0, percent);
  arm.setMaxTorque(100.0, percent);
  Drivetrain.setTurnVelocity(90.0, percent);
  Drivetrain.setDriveVelocity(60.0, percent);
  Drivetrain.driveFor(reverse, 15.0, inches, true);
  Drivetrain.setStopping(brake);
  wait(1.0, seconds);
  m2.broadcast();
  wait(1.0, seconds);
  Drivetrain.setDriveVelocity(75.0, percent);
  Drivetrain.driveFor(forward, 10.0, inches, true);
  Drivetrain.turnToHeading(0.0, degrees, true);
  Drivetrain.driveFor(forward, 20.0, inches, true);
  Drivetrain.turnToHeading(0.0, degrees, true);
  Drivetrain.driveFor(forward, 30.0, inches, true);
  Drivetrain.setDriveVelocity(50.0, percent);
  Drivetrain.driveFor(forward, 15.0, inches, true);
  Drivetrain.setDriveVelocity(80.0, percent);
  wait(0.5, seconds);
  message1.broadcast();
  wait(0.5, seconds);
  Drivetrain.turnToHeading(50.0, degrees, true);
  arm.spinFor(reverse, 720.0, degrees, false);
  Drivetrain.driveFor(forward, 50.0, inches, true);
  Drivetrain.setDriveVelocity(20.0, percent);
  Drivetrain.turnToHeading(0.0, degrees, true);
  Drivetrain.drive(forward);
  wait(3.0, seconds);
  Drivetrain.stop();
 // It stops working here
  arm.spinFor(forward, 420.0, degrees, true);
  wait(0.5, seconds);
  message1.broadcast();
  wait(0.5, seconds);
  arm.spinFor(reverse, 420.0, degrees, true);
  return 0;
}

// "when Controller1 ButtonA pressed" hat block
void onevent_Controller1ButtonA_pressed_0() {
  rEings.spin(forward);
}

// "when Controller1 ButtonL1 pressed" hat block
void onevent_Controller1ButtonL1_pressed_0() {
  arm.spin(reverse);
}

// "when Controller1 ButtonY released" hat block
void onevent_Controller1ButtonY_released_0() {
  rEings.stop();
}

// "when Controller1 ButtonL2 pressed" hat block
void onevent_Controller1ButtonL2_pressed_0() {
  arm.spin(forward);
}

// "when Controller1 ButtonB pressed" hat block
void onevent_Controller1ButtonB_pressed_0() {
  rEings.spin(forward);
}

// "when Controller1 ButtonY pressed" hat block
void onevent_Controller1ButtonY_pressed_0() {
  rEings.spin(reverse);
}

// "when Controller1 ButtonR1 pressed" hat block
void onevent_Controller1ButtonR1_pressed_0() {
  m2.broadcast();
}

// "when Controller1 ButtonL2 released" hat block
void onevent_Controller1ButtonL2_released_0() {
  arm.setStopping(hold);
  arm.stop();
}

// "when Controller1 ButtonL1 released" hat block
void onevent_Controller1ButtonL1_released_0() {
  arm.setStopping(hold);
  arm.stop();
}

// "when Controller1 ButtonX pressed" hat block
void onevent_Controller1ButtonX_pressed_0() {
  message1.broadcast();
}

// "when I receive message1" hat block
void onevent_message1_0() {
  if (digitaloutON) {
    DigitalOutA.set(true);
    digitaloutON = false;
  }
  else {
    DigitalOutA.set(false);
    digitaloutON = true;
  }
}

// "when I receive m2" hat block
void onevent_m2_0() {
  if (Digitalout2) {
    DigitalOutB.set(true);
    Digitalout2 = false;
  }
  else {
    DigitalOutB.set(false);
    Digitalout2 = true;
  }
}

void VEXcode_driver_task() {
  // Start the driver control tasks....
  vex::task drive0(ondriver_drivercontrol_0);
  while(Competition.isDriverControl() && Competition.isEnabled()) {this_thread::sleep_for(10);}
  drive0.stop();
  return;
}

void VEXcode_auton_task() {
  // Start the auton control tasks....
  vex::task auto0(onauton_autonomous_0);
  while(Competition.isAutonomous() && Competition.isEnabled()) {this_thread::sleep_for(10);}
  auto0.stop();
  return;
}



int main() {
  vex::competition::bStopTasksBetweenModes = false;
  Competition.autonomous(VEXcode_auton_task);
  Competition.drivercontrol(VEXcode_driver_task);

  // Calibrate the Drivetrain
  calibrateDrivetrain();

  // register event handlers
  Controller1.ButtonA.released(onevent_Controller1ButtonA_released_0);
  Controller1.ButtonA.pressed(onevent_Controller1ButtonA_pressed_0);
  Controller1.ButtonL1.pressed(onevent_Controller1ButtonL1_pressed_0);
  Controller1.ButtonY.released(onevent_Controller1ButtonY_released_0);
  Controller1.ButtonL2.pressed(onevent_Controller1ButtonL2_pressed_0);
  Controller1.ButtonB.pressed(onevent_Controller1ButtonB_pressed_0);
  Controller1.ButtonY.pressed(onevent_Controller1ButtonY_pressed_0);
  Controller1.ButtonR1.pressed(onevent_Controller1ButtonR1_pressed_0);
  Controller1.ButtonL2.released(onevent_Controller1ButtonL2_released_0);
  Controller1.ButtonL1.released(onevent_Controller1ButtonL1_released_0);
  Controller1.ButtonX.pressed(onevent_Controller1ButtonX_pressed_0);
  message1(onevent_message1_0);
  m2(onevent_m2_0);

  wait(15, msec);
  // post event registration

  // set default print color to black
  printf("\033[30m");

  // wait for rotation sensor to fully initialize
  wait(30, msec);

  whenStarted1();
}