<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def get_end_start_epochs(year, month, day, direction, unit, count):
 """ Gets epoch from a start date and epoch from a shifted date Args: year: Int between 1 and 9999. month: Int between 1 and 12. day: Int between 1 and 31. direction: String to shift time forwards or backwards. Valid values: 'last', 'next'. unit: String of time period unit for count argument. How far back to check historical market data. Valid values: 'hour', 'day', 'week', 'month', 'year'. count: Int of units. How far back to check historical market data? Returns: Dict of int epochs in UTC with keys 'initial' and 'shifted' """

    if year or month or day: # Date is specified
        if not year:
            year = 2017
        if not month:
            month = 1
        if not day:
            day = 1
        initial_delorean = date_to_delorean(year, month, day)
    else: # Date is not specified, get current date
        count += 1 # Get another date because market is still open
        initial_delorean = now_delorean()
    
    initial_epoch = int(initial_delorean.epoch)
    shifted_epoch = shift_epoch(initial_delorean, direction, unit, count)
    return { 'initial': initial_epoch, 'shifted': shifted_epoch }