human
Solve the following python programming problem given the following code:
def add_geographic_data(output) : 
    print ('adding geographic data') 
    def get_gis_data(name, layer) : 
        gisdata = json.load (urlopen (('http://gis.govtrack.us/boundaries/dc-%s-2013/%s' % (layer, name.lower ())))) 
        ret = OrderedDict () 
        ret ['bounds'] = gisdata ['extent'] 
        ret ['area'] = gisdata ['metadata'] ['area_sq_m'] 
        return ret 
for ward in list (output.values ()) : 
        for anc in list (ward ['ancs'].values ()) : 
            anc.update (get_gis_data (anc ['anc'], 'anc')) 
            for smd in list (anc ['smds'].values ()) : 
                smd.update (get_gis_data (anc ['smd'], 'smd')) 

    
    

    Fix the buggy line: smd.update (get_gis_data (anc ['smd'], 'smd'))
assistant
#Here is Python program to fix the buggy line: smd.

smd.update (get_gis_data (smd ['smd'], 'smd'))