package com.edinarobotics.zed.subsystems;

import edu.wpi.first.wpilibj.command.Subsystem;

public class Drivetrain extends Subsystem {
    
    public Drivetrain() {
        
    }
    
    public void initDefaultCommand(){
        
    }
}

@@ -36,16 +36,222 @@
 stems;%0A%0A
+import com.edinarobotics.utils.commands.MaintainStateCommand;%0Aimport com.edinarobotics.utils.subsystems.Subsystem1816;%0Aimport edu.wpi.first.wpilibj.RobotDrive;%0Aimport edu.wpi.first.wpilibj.command.Command;%0A
 import e
@@ -336,108 +336,886 @@
 stem
+1816
  %7B%0A    
-%0A    public Drivetrain() %7B%0A        %0A    %7D%0A    %0A    public void initDefaultCommand()%7B%0A        
+private RobotDrive robotDrive;%0A    private double magnitude;%0A    private double direction;%0A    private double rotation;%0A    %0A    public Drivetrain(int frontLeft, int frontRight, int backLeft, int backRight) %7B%0A        super(%22Drivetrain%22);%0A        this.robotDrive = new RobotDrive(frontLeft, backLeft, frontRight, backRight);%0A    %7D%0A    %0A    public void initDefaultCommand()%7B%0A        setDefaultCommand(new MaintainStateCommand(this));%0A    %7D%0A    %0A    %0A    public void setDefaultCommand(Command command)%7B%0A        super.setDefaultCommand(command);%0A    %7D%0A    %0A    public void mecanumPolar(double magnitude, double direction, double rotation)%7B%0A        this.magnitude = magnitude;%0A        this.direction = direction;%0A        this.rotation = rotation;%0A        update();%0A    %7D%0A    %0A    public void update()%7B%0A        robotDrive.mecanumDrive_Polar(magnitude, direction, rotation);
 %0A   

Add mecanum drive definition to Drivetrain.