#include <Servo.h>

class ServoManager{
  public:
    Servo FrontRightThigh;
    Servo FrontRightKnee;

    Servo BackRightThigh;
    Servo BackRightKnee;

    Servo FrontLeftThigh;
    Servo FrontLeftKnee;

    Servo BackLeftThigh;
    Servo BackLeftKnee;

    void setup(){
      FrontRightThigh.attach(2);
      BackRightThigh.attach(3);
      FrontLeftThigh.attach(4);
      BackLeftThigh.attach(5);

      FrontRightKnee.attach(8);
      BackRightKnee.attach(9);
      FrontLeftKnee.attach(10);
      BackLeftKnee.attach(11);

    }

    void writeLegs(int FRT, int BRT, int FLT, int BLT, 
                  int FRK, int BRK, int FLK, int BLK ){

                    FrontRightThigh.write(FRT);
                    BackRightThigh.write(BRT);
                    FrontLeftThigh.write(FLT);
                    BackLeftThigh.write(BLT);

                    FrontRightKnee.write(FRK);
                    BackRightKnee.write(BRK);
                    FrontLeftKnee.write(FLK);
                    BackLeftKnee.write(BLK);
    }

};

ServoManager Manager;

void setup(){
Manager.setup();
}

void loop(){
  Manager.writeLegs(90,90,90,90,90+30,90-35,90-30,90+35);
  delay(1000);
  Manager.writeLegs(60,90,110,90,90+15,90-35,90-30,90+35);
  delay(5000);
  Manager.writeLegs(90,60,110,90,90+30,90-65,90-30,90+35);
  delay(1000);
  Manager.writeLegs(70,60,110,90,90+30,90-65,90-30,90+35);
  delay(1000);
  Manager.writeLegs(70,60,110,120,90+30,90-65,90-30,90+35);
  delay(1000);
  Manager.writeLegs(90,90,90,90,90+30,90-35,90-30,90+35);
  delay(1000);
}