Okay, I didn’t think about transition animations; automatic blending from prone to stand etc. will probably look bad.
So you can create a 1d blendspace for idle/walk/jog, and set the rest in the state machine. I’d recommend using an Int or Byte (or even a custom Enum not to mix them up?) variable to indicate the position (Stand/Crouch/Prone) instead of using bools for each state, then you’ll only have to read two variables: speed and position.
E.g. when you press Crouch, set Int/Byte to 1, and the transition rule will be: If Position == 1 => Stand to Crouch animation => Crouch animation, and the same with the rest of interconnections.