<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def create_replication_schedule(self, start_time, end_time, interval_unit, interval, paused, arguments, alert_on_start=False, alert_on_success=False, alert_on_fail=False, alert_on_abort=False):
 """ Create a new replication schedule for this service. The replication argument type varies per service type. The following types are recognized: - HDFS: ApiHdfsReplicationArguments - Hive: ApiHiveReplicationArguments @type start_time: datetime.datetime @param start_time: The time at which the schedule becomes active and first executes. @type end_time: datetime.datetime @param end_time: The time at which the schedule will expire. @type interval_unit: str @param interval_unit: The unit of time the `interval` represents. Ex. MINUTE, HOUR, DAY. See the server documentation for a full list of values. @type interval: int @param interval: The number of time units to wait until triggering the next replication. @type paused: bool @param paused: Should the schedule be paused? Useful for on-demand replication. @param arguments: service type-specific arguments for the replication job. @param alert_on_start: whether to generate alerts when the job is started. @param alert_on_success: whether to generate alerts when the job succeeds. @param alert_on_fail: whether to generate alerts when the job fails. @param alert_on_abort: whether to generate alerts when the job is aborted. @return: The newly created schedule. @since: API v3 """

    schedule = ApiReplicationSchedule(self._get_resource_root(),
      startTime=start_time, endTime=end_time, intervalUnit=interval_unit, interval=interval,
      paused=paused, alertOnStart=alert_on_start, alertOnSuccess=alert_on_success,
      alertOnFail=alert_on_fail, alertOnAbort=alert_on_abort)

    if self.type == 'HDFS':
      if isinstance(arguments, ApiHdfsCloudReplicationArguments):
        schedule.hdfsCloudArguments = arguments
      elif isinstance(arguments, ApiHdfsReplicationArguments):
        schedule.hdfsArguments = arguments
      else:
        raise TypeError, 'Unexpected type for HDFS replication argument.'
    elif self.type == 'HIVE':
      if not isinstance(arguments, ApiHiveReplicationArguments):
        raise TypeError, 'Unexpected type for Hive replication argument.'
      schedule.hiveArguments = arguments
    else:
      raise TypeError, 'Replication is not supported for service type ' + self.type

    return self._post("replications", ApiReplicationSchedule, True, [schedule],
        api_version=3)[0]