I am updating a greasemonkey script:
```
 // New code to download all images found
                // image class: fui-Image
                const imageButtons = document.evaluate(
                    "//*[@id='root']/div/div/div/div[3]/div[3]/div/div/div",
                    // "/html/body/div[1]/div/div/div/div[3]/div[3]/div/div/div[1]/button",
                    //"/html/body/div[1]/div/div/div/div[3]/div[3]/div/div/div[1]",
                    document,
                    null,
                    XPathResult.ORDERED_NODE_SNAPSHOT_TYPE,
                    null
                );
                const numImages = imageButtons.snapshotLength;

                console.logWithTimestamp(`What did we find? numImages=${numImages}`);

                for (let i = 0; i < numImages; i++) {
                    console.logWithTimestamp(`Pressing image ${i + 1}`);
                    const button = imageButtons.snapshotItem(i);
                    button.click();
                    await new Promise((resolve) => setTimeout(resolve, 5000)); // Wait for 5 seconds

                    console.logWithTimestamp("Pressing download");
                    await clickElementContainingText("Download", "button");
                    await new Promise((resolve) => setTimeout(resolve, 5000)); // Wait for 5 seconds

                    console.logWithTimestamp("Testing for second download button.");
                    //if (await clickSecondDownloadButton()) {
                    //    await new Promise((resolve) => setTimeout(resolve, 5000)); // Wait for 5 seconds
                    //}
                    try {
                        await clickSecondDownloadButtonText();
                    } catch (error) {
                        console.error("Error while clicking the second download button:", error);
                    }
                    await new Promise((resolve) => setTimeout(resolve, 5000)); // Wait for 5 seconds

                    console.logWithTimestamp("Pressing close");
                    await clickElementByAttributeText("Close", "button", "aria-label");
                    await new Promise((resolve) => setTimeout(resolve, 5000)); // Wait for 5 seconds
                }
            }
```
Before, the document.evaluate would use "//*[@id='root']/div/div/div/div[3]/div[3]/div/div/button" to get a list of buttons and put it in imageButtons, but now, it has moved to a list of divs with the button inside, which is the XPath I am using now, the issue is I don't think it can run the click() function on the div, and have it behave the same, so since now the imageButtons contains a list of divs(unless you can make it get the buttons), when we do "const button = imageButtons.snapshotItem(i);" we need to instead get the child <button> element.
There is another option.
Here is the HTML code for one of the buttons:
```
<div class="___1n6g137 f1ox1ljg fz58gqq f1aa9q02 f16jpd5f f1jar5jt fyu767a" data-testid="media-asset-tile-0"><button type="button" class="fui-Button r1alrhcs ___m826de0 fqrijq1 fly5x3f f1k6fduh f1l02sjl f122n59 f4d9j23 f1ewtqcl f10pi13n f1dmdbja f4dsrxa fywypte f1v2quxs fetxo7e f1095b9v fre7gi1 f1358rze fqdk4by f1rvrf73 fyh5r1j f1w0o6b2 f162n42q f129lbdi f1e7yr9r frhlv0q f1icko90 ffzw24k f1aa9q02 f16jpd5f f1jar5jt fyu767a f43nh00 f9vq01i f1eopwpg f1dgl66e" data-testid="media-asset-button-0" style="aspect-ratio: 512 / 512; animation-delay: 0s;" data-tabster="{&quot;restorer&quot;:{&quot;type&quot;:1}}"><img src="data:image/png;base64" alt="A tableau unfolds where a Weeping Angel the statue women from &quot;Doctor Who&quot;, exuding celestial poise, assumes the role of a healer in nurse’s attire." class="fui-Image ___hy70eu0 fj3muxo f1akhkt f1aperda f1lxtadh fzi6hpg fyowgf4 f3fg2lr f13av6d4 f1ewtqcl f14t3ns0 fk116j8 f1a1bgx f1icko90 ffzw24k fly5x3f f1kle4es f1l02sjl" draggable="false"></button></div>
<div class="___1n6g137 f1ox1ljg fz58gqq f1aa9q02 f16jpd5f f1jar5jt fyu767a" data-testid="media-asset-tile-1"><button type="button" class="fui-Button r1alrhcs ___m826de0 fqrijq1 fly5x3f f1k6fduh f1l02sjl f122n59 f4d9j23 f1ewtqcl f10pi13n f1dmdbja f4dsrxa fywypte f1v2quxs fetxo7e f1095b9v fre7gi1 f1358rze fqdk4by f1rvrf73 fyh5r1j f1w0o6b2 f162n42q f129lbdi f1e7yr9r frhlv0q f1icko90 ffzw24k f1aa9q02 f16jpd5f f1jar5jt fyu767a f43nh00 f9vq01i f1eopwpg f1dgl66e" data-testid="media-asset-button-1" style="aspect-ratio: 512 / 512; animation-delay: 0.02s;" data-tabster="{&quot;restorer&quot;:{&quot;type&quot;:1}}"><img src="data:image/png;base64" alt="A tableau unfolds where a Weeping Angel the statue women from &quot;Doctor Who&quot;, exuding celestial poise, assumes the role of a healer in nurse’s attire." class="fui-Image ___hy70eu0 fj3muxo f1akhkt f1aperda f1lxtadh fzi6hpg fyowgf4 f3fg2lr f13av6d4 f1ewtqcl f14t3ns0 fk116j8 f1a1bgx f1icko90 ffzw24k fly5x3f f1kle4es f1l02sjl" draggable="false"></button></div>
```
I cut out the img src full base64 encoded value, but it is basically the image thumbnail, but as you can see, each button has the div with `data-testid="media-asset-tile-0"`, with the number being a number from 0-9, what I would love is to build a list of the <button> elements that have this data-testid = "media-asset-tile-{image_number]", and then click each of those button elements.