<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def __embed_branch(dfs_data):
 """Builds the combinatorial embedding of the graph. Returns whether the graph is planar."""

    u = dfs_data['ordering'][0]
    dfs_data['LF'] = []
    dfs_data['RF'] = []
    dfs_data['FG'] = {}
    n = dfs_data['graph'].num_nodes()
    f0 = (0, n)
    g0 = (0, n)
    L0 = {'u': 0, 'v': n}
    R0 = {'x': 0, 'y': n}
    dfs_data['LF'].append(f0)
    dfs_data['RF'].append(g0)
    dfs_data['FG'][0] = [L0, R0]
    dfs_data['FG']['m'] = 0
    dfs_data['FG']['l'] = 0
    dfs_data['FG']['r'] = 0

    #print 'DFS Ordering: {}'.format(dfs_data['ordering'])
    #for node in dfs_data['ordering']:
        #print '{}: {}'.format(node, dfs_data['adj'][node])

    nonplanar = __embed_branch_recursive(u, dfs_data)

    #print "Nonplanar:", nonplanar

    return not nonplanar