I must lower letters in a list if the occupy a certain position given in a previous function I did. The function I must program is `lower_words`.

I'm having an issue: every time I lower an element the row is repeated.

I don't need to use the list "words" for this. Just left it there so you could understand better what the function does/must do. Can someone help me?

```
words= ["PATO", "GATO", "BOI", "CAO"]

grid1= ["PIGATOS", 
       "ANRBKFD", 
       "TMCAOXA", 
       "OOBBYQU", 
       "MACOUIV", 
       "EEJMIWL"]

 positions_words_occupy = ((0, 0), (1, 0), (2, 0), (3, 0), (0, 2), (0, 3), (0, 4), (0, 5), (3, 2), (4, 3), (5, 4), (2, 2), (2, 3), (2, 4)) #these are the positions the words occupy. I have determined these positions with a previous function. first is the line, second the column  

def lower_words(grid, positions_words_occupy):

    new= []

    for position in positions_words_occupy:

        line= position[0]
        column= position[1]

        row= grid[line]
        element= row[column]

        new.append(row.replace(element, element.lower()))

    return new

```

Expected output:

```
['pIgatoS', 'aNRBKFD', 'tMcaoXA', 'oObBYQU', 'MACoUIV', 'EEJMiWL']

```

Actual output:

```
['pIGATOS', 'aNRBKFD', 'tMCAOXA', 'ooBBYQU', 'PIgATOS', 'PIGaTOS', 'PIGAtOS', 'PIGAToS', 'OObbYQU', 'MACoUIV', 'EEJMiWL', 'TMcAOXA', 'TMCaOXa', 'TMCAoXA']

```

Changing the perspective, you can see it lowers the words I have in the list words:

```
 ['pIgatoS', 
  'aNRBKFD', 
  'tMcaoXA', 
  'oObBYQU', 
  'MACoUIV', 
  'EEJMiWL']

```