<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def git_list_remotes(repo_dir):
 """Return a listing of configured remotes."""

    command = ['git', 'remote', '--verbose', 'show']
    raw = execute_git_command(command, repo_dir=repo_dir).splitlines()
    output = [l.strip() for l in raw if l.strip()]
    # <name> <location> (<cmd>)
    # make a list of lists with clean elements of equal length
    headers = ['name', 'location', 'cmd']
    breakout = [k.split(None, len(headers)) for k in output]
    # use izip_longest so we fill in None if message was empty
    return [dict(zip_longest(headers, vals))
            for vals in breakout]