<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def setXYAxesAutoRangeOn(commonCti, xAxisRangeCti, yAxisRangeCti, axisNumber):
 """ Turns on the auto range of an X and Y axis simultaneously. It sets the autoRangeCti.data of the xAxisRangeCti and yAxisRangeCti to True. After that, it emits the sigItemChanged signal of the commonCti. Can be used with functools.partial to make a slot that atomically resets the X and Y axis. That is, only one sigItemChanged will be emitted. This function is necessary because, if one would call PgAxisRangeCti.sigItemChanged separately on the X and Y axes the sigItemChanged signal would be emitted twice. This in not only slower, but autoscaling one axis may slightly change the others range, so the second call to sigItemChanged may unset the autorange of the first. axisNumber must be one of: 0 (X-axis), 1 (Y-axis), 2, (Both X and Y axes). """

    assert axisNumber in VALID_AXIS_NUMBERS, \
        "Axis number should be one of {}, got {}".format(VALID_AXIS_NUMBERS, axisNumber)

    logger.debug("setXYAxesAutoRangeOn, axisNumber: {}".format(axisNumber))
    if axisNumber == X_AXIS or axisNumber == BOTH_AXES:
        xAxisRangeCti.autoRangeCti.data = True

    if axisNumber == Y_AXIS or axisNumber == BOTH_AXES:
        yAxisRangeCti.autoRangeCti.data = True

    commonCti.model.sigItemChanged.emit(commonCti)