import calendar


def utc_to_ts(y, m, d, hrs_utc):
    """Converts from a UTC tuple-time to unix epoch time.
    
    y,m,d: The year, month, day for which the conversion is desired.
    
    hrs_tc: Floating point number with the number of hours since midnight in UTC.
    
    Returns: The unix epoch time.
    
    >>> print(utc_to_ts(2009, 3, 27, 14.5))
    1238164200
    """
    # Construct a time tuple with the time at midnight, UTC:
    daystart_utc_tt = (y, m, d, 0, 0, 0, 0, 0, -1)
    # Convert the time tuple to a time stamp and add on the number of seconds since midnight:
    time_ts = int(calendar.timegm(daystart_utc_tt) + hrs_utc * 3600.0 + 0.5)
    return time_ts