First real attempt although given arm 1 is doing essentially the same thing twice I believe it should be doable in 3 or even 2