def METHOD_NAME(data: bytes) -> Metadata:
    img = png.Png(KaitaiStream(io.BytesIO(data)))
    parts = [
        ("Format", "Portable network graphics"),
        ("Size", f"{img.ihdr.width} x {img.ihdr.height} px"),
    ]
    for chunk in img.chunks:
        if chunk.type == "gAMA":
            parts.append(("gamma", str(chunk.body.gamma_int / 100000)))
        elif chunk.type == "pHYs":
            aspectx = chunk.body.pixels_per_unit_x
            aspecty = chunk.body.pixels_per_unit_y
            parts.append(("aspect", f"{aspectx} x {aspecty}"))
        elif chunk.type == "tEXt":
            parts.append((chunk.body.keyword, chunk.body.text))
        elif chunk.type == "iTXt":
            parts.append((chunk.body.keyword, chunk.body.text))
        elif chunk.type == "zTXt":
            parts.append(
                (chunk.body.keyword, chunk.body.text_datastream.decode("iso8859-1"))
            )
    return parts