prompt: We are currently solving the following issue within our repository. Here is the issue text:
  --- BEGIN ISSUE ---
  [Device Support Request] Phillips Button (ROM001) Missing support for manufactuer specific button events
  **Is your feature request related to a problem? Please describe.**
  I have just started migrating my devices from deconz to ZHA and had success with the hue dimmer remote event codes.
  However, the hue button which also supports the 64512 is not configured for it.
  
  **Describe the solution you'd like**
  Add the 64512 (0xfc00) cluster to the hue button.
  
  **Device signature - this can be acquired by removing the device from ZHA and pairing it again from the add devices screen. Be sure to add the entire content of the log panel after pairing the device to a code block below this line.**
  
  Button:
  ```
  {
    "node_descriptor": "NodeDescriptor(byte1=2, byte2=64, mac_capability_flags=128, manufacturer_code=4107, maximum_buffer_size=82, maximum_incoming_transfer_size=128, server_mask=11264, maximum_outgoing_transfer_size=128, descriptor_capability_field=0)",
    "endpoints": {
      "1": {
        "profile_id": 260,
        "device_type": "0x0830",
        "in_clusters": [
          "0x0000",
          "0x0001",
          "0x0003",
          "0x1000",
          "0xfc00"
        ],
        "out_clusters": [
          "0x0000",
          "0x0003",
          "0x0004",
          "0x0005",
          "0x0006",
          "0x0008",
          "0x0019",
          "0x1000"
        ]
      }
    },
    "manufacturer": "Philips",
    "model": "ROM001",
    "class": "zhaquirks.philips.rom001.PhilipsROM001"
  }
  ```
  
  Dimmer:
  ```
  {
    "node_descriptor": "NodeDescriptor(byte1=2, byte2=64, mac_capability_flags=128, manufacturer_code=4107, maximum_buffer_size=89, maximum_incoming_transfer_size=63, server_mask=0, maximum_outgoing_transfer_size=63, descriptor_capability_field=0)",
    "endpoints": {
      "1": {
        "profile_id": 49246,
        "device_type": "0x0830",
        "in_clusters": [
          "0x0000"
        ],
        "out_clusters": [
          "0x0000",
          "0x0003",
          "0x0004",
          "0x0005",
          "0x0006",
          "0x0008"
        ]
      },
      "2": {
        "profile_id": 260,
        "device_type": "0x000c",
        "in_clusters": [
          "0x0000",
          "0x0001",
          "0x0003",
          "0x000f",
          "0xfc00"
        ],
        "out_clusters": [
          "0x0019"
        ]
      }
    },
    "manufacturer": "Philips",
    "model": "RWL021",
    "class": "zhaquirks.philips.rwl021.PhilipsRWL021"
  }
  ```
  **Additional context**
  Add any other context or screenshots about the feature request here.
  
  This should be a simple case of importing PhilipsRemoteCluster and applying it
  https://github.com/zigpy/zha-device-handlers/blob/71d4dcb9c8f502dee7f73ac4bbf1593b916e794e/zhaquirks/philips/rwl020.py#L80
  
  https://github.com/zigpy/zha-device-handlers/blob/71d4dcb9c8f502dee7f73ac4bbf1593b916e794e/zhaquirks/philips/rom001.py#L75
  
  
  --- END ISSUE ---
  
  Below are some code segments, each from a relevant file. One or more of these files may contain bugs.
  --- BEGIN FILES ---
  Path: `zhaquirks/philips/rom001.py`
  Content:
  ```
  1 """Philips ROM001 device."""
  2 from zigpy.profiles import zha
  3 from zigpy.quirks import CustomDevice
  4 from zigpy.zcl.clusters.general import (
  5     Basic,
  6     Groups,
  7     Identify,
  8     LevelControl,
  9     OnOff,
  10     Ota,
  11     PowerConfiguration,
  12     Scenes,
  13 )
  14 from zigpy.zcl.clusters.lightlink import LightLink
  15 
  16 from ..const import (
  17     COMMAND,
  18     COMMAND_OFF_WITH_EFFECT,
  19     COMMAND_ON,
  20     DEVICE_TYPE,
  21     ENDPOINTS,
  22     INPUT_CLUSTERS,
  23     OUTPUT_CLUSTERS,
  24     PROFILE_ID,
  25     SHORT_PRESS,
  26     TURN_OFF,
  27     TURN_ON,
  28 )
  29 
  30 DEVICE_SPECIFIC_UNKNOWN = 64512
  31 
  32 
  33 class PhilipsROM001(CustomDevice):
  34     """Philips ROM001 device."""
  35 
  36     signature = {
  37         #  <SimpleDescriptor endpoint=1 profile=260 device_type=2096
  38         #  device_version=1
  39         #  input_clusters=[0, 1, 3, 64512, 4096]
  40         #  output_clusters=[25, 0, 3, 4, 6, 8, 5, 4096]>
  41         ENDPOINTS: {
  42             1: {
  43                 PROFILE_ID: zha.PROFILE_ID,
  44                 DEVICE_TYPE: zha.DeviceType.NON_COLOR_SCENE_CONTROLLER,
  45                 INPUT_CLUSTERS: [
  46                     Basic.cluster_id,
  47                     PowerConfiguration.cluster_id,
  48                     Identify.cluster_id,
  49                     DEVICE_SPECIFIC_UNKNOWN,
  50                     LightLink.cluster_id,
  51                 ],
  52                 OUTPUT_CLUSTERS: [
  53                     Ota.cluster_id,
  54                     Basic.cluster_id,
  55                     Identify.cluster_id,
  56                     Groups.cluster_id,
  57                     OnOff.cluster_id,
  58                     LevelControl.cluster_id,
  59                     Scenes.cluster_id,
  60                     LightLink.cluster_id,
  61                 ],
  62             }
  63         }
  64     }
  65 
  66     replacement = {
  67         ENDPOINTS: {
  68             1: {
  69                 PROFILE_ID: zha.PROFILE_ID,
  70                 DEVICE_TYPE: zha.DeviceType.NON_COLOR_SCENE_CONTROLLER,
  71                 INPUT_CLUSTERS: [
  72                     Basic.cluster_id,
  73                     PowerConfiguration.cluster_id,
  74                     Identify.cluster_id,
  75                     DEVICE_SPECIFIC_UNKNOWN,
  76                     LightLink.cluster_id,
  77                 ],
  78                 OUTPUT_CLUSTERS: [
  79                     Ota.cluster_id,
  80                     Basic.cluster_id,
  81                     Identify.cluster_id,
  82                     Groups.cluster_id,
  83                     OnOff.cluster_id,
  84                     LevelControl.cluster_id,
  85                     Scenes.cluster_id,
  86                     LightLink.cluster_id,
  87                 ],
  88             }
  89         }
  90     }
  91 
  92     device_automation_triggers = {
  93         (SHORT_PRESS, TURN_ON): {COMMAND: COMMAND_ON},
  94         (SHORT_PRESS, TURN_OFF): {COMMAND: COMMAND_OFF_WITH_EFFECT},
  95     }
  96
  ```
  --- END FILES ---
  
  Please first localize the bug based on the issue statement, and then generate a patch according to the `git diff` format fenced by three backticks.
  
  Here is an example:
  
  ```diff
  diff --git a/examples/server_async.py b/examples/server_async.py
  --- a/examples/server_async.py
  +++ b/examples/server_async.py
  @@ -313,4 +313,4 @@
   
   
   if __name__ == "__main__":
  -    asyncio.run(run_async_server("."), debug=True)
  +    asyncio.run(run_async_server(), debug=True)
  diff --git a/examples/server_sync.py b/examples/server_sync.py
  --- a/examples/server_sync.py
  +++ b/examples/server_sync.py
  @@ -313,5 +313,5 @@
   
   
   if __name__ == "__main__":
  -    server = run_sync_server(".")
  +    server = run_sync_server()
       server.shutdown()
  
  ```
  
golden_diff: diff --git a/zhaquirks/philips/rom001.py b/zhaquirks/philips/rom001.py
  --- a/zhaquirks/philips/rom001.py
  +++ b/zhaquirks/philips/rom001.py
  @@ -13,6 +13,7 @@
   )
   from zigpy.zcl.clusters.lightlink import LightLink
   
  +from . import PhilipsBasicCluster, PhilipsRemoteCluster
   from ..const import (
       COMMAND,
       COMMAND_OFF_WITH_EFFECT,
  @@ -69,10 +70,10 @@
                   PROFILE_ID: zha.PROFILE_ID,
                   DEVICE_TYPE: zha.DeviceType.NON_COLOR_SCENE_CONTROLLER,
                   INPUT_CLUSTERS: [
  -                    Basic.cluster_id,
  +                    PhilipsBasicCluster,
                       PowerConfiguration.cluster_id,
                       Identify.cluster_id,
  -                    DEVICE_SPECIFIC_UNKNOWN,
  +                    PhilipsRemoteCluster,
                       LightLink.cluster_id,
                   ],
                   OUTPUT_CLUSTERS: [
  
verification_info: {"golden_diff": "diff --git a/zhaquirks/philips/rom001.py b/zhaquirks/philips/rom001.py\n--- a/zhaquirks/philips/rom001.py\n+++ b/zhaquirks/philips/rom001.py\n@@ -13,6 +13,7 @@\n )\n from zigpy.zcl.clusters.lightlink import LightLink\n \n+from . import PhilipsBasicCluster, PhilipsRemoteCluster\n from ..const import (\n     COMMAND,\n     COMMAND_OFF_WITH_EFFECT,\n@@ -69,10 +70,10 @@\n                 PROFILE_ID: zha.PROFILE_ID,\n                 DEVICE_TYPE: zha.DeviceType.NON_COLOR_SCENE_CONTROLLER,\n                 INPUT_CLUSTERS: [\n-                    Basic.cluster_id,\n+                    PhilipsBasicCluster,\n                     PowerConfiguration.cluster_id,\n                     Identify.cluster_id,\n-                    DEVICE_SPECIFIC_UNKNOWN,\n+                    PhilipsRemoteCluster,\n                     LightLink.cluster_id,\n                 ],\n                 OUTPUT_CLUSTERS: [\n", "issue": "[Device Support Request] Phillips Button (ROM001) Missing support for manufactuer specific button events\n**Is your feature request related to a problem? Please describe.**\r\nI have just started migrating my devices from deconz to ZHA and had success with the hue dimmer remote event codes.\r\nHowever, the hue button which also supports the 64512 is not configured for it.\r\n\r\n**Describe the solution you'd like**\r\nAdd the 64512 (0xfc00) cluster to the hue button.\r\n\r\n**Device signature - this can be acquired by removing the device from ZHA and pairing it again from the add devices screen. Be sure to add the entire content of the log panel after pairing the device to a code block below this line.**\r\n\r\nButton:\r\n```\r\n{\r\n  \"node_descriptor\": \"NodeDescriptor(byte1=2, byte2=64, mac_capability_flags=128, manufacturer_code=4107, maximum_buffer_size=82, maximum_incoming_transfer_size=128, server_mask=11264, maximum_outgoing_transfer_size=128, descriptor_capability_field=0)\",\r\n  \"endpoints\": {\r\n    \"1\": {\r\n      \"profile_id\": 260,\r\n      \"device_type\": \"0x0830\",\r\n      \"in_clusters\": [\r\n        \"0x0000\",\r\n        \"0x0001\",\r\n        \"0x0003\",\r\n        \"0x1000\",\r\n        \"0xfc00\"\r\n      ],\r\n      \"out_clusters\": [\r\n        \"0x0000\",\r\n        \"0x0003\",\r\n        \"0x0004\",\r\n        \"0x0005\",\r\n        \"0x0006\",\r\n        \"0x0008\",\r\n        \"0x0019\",\r\n        \"0x1000\"\r\n      ]\r\n    }\r\n  },\r\n  \"manufacturer\": \"Philips\",\r\n  \"model\": \"ROM001\",\r\n  \"class\": \"zhaquirks.philips.rom001.PhilipsROM001\"\r\n}\r\n```\r\n\r\nDimmer:\r\n```\r\n{\r\n  \"node_descriptor\": \"NodeDescriptor(byte1=2, byte2=64, mac_capability_flags=128, manufacturer_code=4107, maximum_buffer_size=89, maximum_incoming_transfer_size=63, server_mask=0, maximum_outgoing_transfer_size=63, descriptor_capability_field=0)\",\r\n  \"endpoints\": {\r\n    \"1\": {\r\n      \"profile_id\": 49246,\r\n      \"device_type\": \"0x0830\",\r\n      \"in_clusters\": [\r\n        \"0x0000\"\r\n      ],\r\n      \"out_clusters\": [\r\n        \"0x0000\",\r\n        \"0x0003\",\r\n        \"0x0004\",\r\n        \"0x0005\",\r\n        \"0x0006\",\r\n        \"0x0008\"\r\n      ]\r\n    },\r\n    \"2\": {\r\n      \"profile_id\": 260,\r\n      \"device_type\": \"0x000c\",\r\n      \"in_clusters\": [\r\n        \"0x0000\",\r\n        \"0x0001\",\r\n        \"0x0003\",\r\n        \"0x000f\",\r\n        \"0xfc00\"\r\n      ],\r\n      \"out_clusters\": [\r\n        \"0x0019\"\r\n      ]\r\n    }\r\n  },\r\n  \"manufacturer\": \"Philips\",\r\n  \"model\": \"RWL021\",\r\n  \"class\": \"zhaquirks.philips.rwl021.PhilipsRWL021\"\r\n}\r\n```\r\n**Additional context**\r\nAdd any other context or screenshots about the feature request here.\r\n\r\nThis should be a simple case of importing PhilipsRemoteCluster and applying it\r\nhttps://github.com/zigpy/zha-device-handlers/blob/71d4dcb9c8f502dee7f73ac4bbf1593b916e794e/zhaquirks/philips/rwl020.py#L80\r\n\r\nhttps://github.com/zigpy/zha-device-handlers/blob/71d4dcb9c8f502dee7f73ac4bbf1593b916e794e/zhaquirks/philips/rom001.py#L75\r\n\n", "before_files": [{"content": "\"\"\"Philips ROM001 device.\"\"\"\nfrom zigpy.profiles import zha\nfrom zigpy.quirks import CustomDevice\nfrom zigpy.zcl.clusters.general import (\n    Basic,\n    Groups,\n    Identify,\n    LevelControl,\n    OnOff,\n    Ota,\n    PowerConfiguration,\n    Scenes,\n)\nfrom zigpy.zcl.clusters.lightlink import LightLink\n\nfrom ..const import (\n    COMMAND,\n    COMMAND_OFF_WITH_EFFECT,\n    COMMAND_ON,\n    DEVICE_TYPE,\n    ENDPOINTS,\n    INPUT_CLUSTERS,\n    OUTPUT_CLUSTERS,\n    PROFILE_ID,\n    SHORT_PRESS,\n    TURN_OFF,\n    TURN_ON,\n)\n\nDEVICE_SPECIFIC_UNKNOWN = 64512\n\n\nclass PhilipsROM001(CustomDevice):\n    \"\"\"Philips ROM001 device.\"\"\"\n\n    signature = {\n        #  <SimpleDescriptor endpoint=1 profile=260 device_type=2096\n        #  device_version=1\n        #  input_clusters=[0, 1, 3, 64512, 4096]\n        #  output_clusters=[25, 0, 3, 4, 6, 8, 5, 4096]>\n        ENDPOINTS: {\n            1: {\n                PROFILE_ID: zha.PROFILE_ID,\n                DEVICE_TYPE: zha.DeviceType.NON_COLOR_SCENE_CONTROLLER,\n                INPUT_CLUSTERS: [\n                    Basic.cluster_id,\n                    PowerConfiguration.cluster_id,\n                    Identify.cluster_id,\n                    DEVICE_SPECIFIC_UNKNOWN,\n                    LightLink.cluster_id,\n                ],\n                OUTPUT_CLUSTERS: [\n                    Ota.cluster_id,\n                    Basic.cluster_id,\n                    Identify.cluster_id,\n                    Groups.cluster_id,\n                    OnOff.cluster_id,\n                    LevelControl.cluster_id,\n                    Scenes.cluster_id,\n                    LightLink.cluster_id,\n                ],\n            }\n        }\n    }\n\n    replacement = {\n        ENDPOINTS: {\n            1: {\n                PROFILE_ID: zha.PROFILE_ID,\n                DEVICE_TYPE: zha.DeviceType.NON_COLOR_SCENE_CONTROLLER,\n                INPUT_CLUSTERS: [\n                    Basic.cluster_id,\n                    PowerConfiguration.cluster_id,\n                    Identify.cluster_id,\n                    DEVICE_SPECIFIC_UNKNOWN,\n                    LightLink.cluster_id,\n                ],\n                OUTPUT_CLUSTERS: [\n                    Ota.cluster_id,\n                    Basic.cluster_id,\n                    Identify.cluster_id,\n                    Groups.cluster_id,\n                    OnOff.cluster_id,\n                    LevelControl.cluster_id,\n                    Scenes.cluster_id,\n                    LightLink.cluster_id,\n                ],\n            }\n        }\n    }\n\n    device_automation_triggers = {\n        (SHORT_PRESS, TURN_ON): {COMMAND: COMMAND_ON},\n        (SHORT_PRESS, TURN_OFF): {COMMAND: COMMAND_OFF_WITH_EFFECT},\n    }\n", "path": "zhaquirks/philips/rom001.py"}], "after_files": [{"content": "\"\"\"Philips ROM001 device.\"\"\"\nfrom zigpy.profiles import zha\nfrom zigpy.quirks import CustomDevice\nfrom zigpy.zcl.clusters.general import (\n    Basic,\n    Groups,\n    Identify,\n    LevelControl,\n    OnOff,\n    Ota,\n    PowerConfiguration,\n    Scenes,\n)\nfrom zigpy.zcl.clusters.lightlink import LightLink\n\nfrom . import PhilipsBasicCluster, PhilipsRemoteCluster\nfrom ..const import (\n    COMMAND,\n    COMMAND_OFF_WITH_EFFECT,\n    COMMAND_ON,\n    DEVICE_TYPE,\n    ENDPOINTS,\n    INPUT_CLUSTERS,\n    OUTPUT_CLUSTERS,\n    PROFILE_ID,\n    SHORT_PRESS,\n    TURN_OFF,\n    TURN_ON,\n)\n\nDEVICE_SPECIFIC_UNKNOWN = 64512\n\n\nclass PhilipsROM001(CustomDevice):\n    \"\"\"Philips ROM001 device.\"\"\"\n\n    signature = {\n        #  <SimpleDescriptor endpoint=1 profile=260 device_type=2096\n        #  device_version=1\n        #  input_clusters=[0, 1, 3, 64512, 4096]\n        #  output_clusters=[25, 0, 3, 4, 6, 8, 5, 4096]>\n        ENDPOINTS: {\n            1: {\n                PROFILE_ID: zha.PROFILE_ID,\n                DEVICE_TYPE: zha.DeviceType.NON_COLOR_SCENE_CONTROLLER,\n                INPUT_CLUSTERS: [\n                    Basic.cluster_id,\n                    PowerConfiguration.cluster_id,\n                    Identify.cluster_id,\n                    DEVICE_SPECIFIC_UNKNOWN,\n                    LightLink.cluster_id,\n                ],\n                OUTPUT_CLUSTERS: [\n                    Ota.cluster_id,\n                    Basic.cluster_id,\n                    Identify.cluster_id,\n                    Groups.cluster_id,\n                    OnOff.cluster_id,\n                    LevelControl.cluster_id,\n                    Scenes.cluster_id,\n                    LightLink.cluster_id,\n                ],\n            }\n        }\n    }\n\n    replacement = {\n        ENDPOINTS: {\n            1: {\n                PROFILE_ID: zha.PROFILE_ID,\n                DEVICE_TYPE: zha.DeviceType.NON_COLOR_SCENE_CONTROLLER,\n                INPUT_CLUSTERS: [\n                    PhilipsBasicCluster,\n                    PowerConfiguration.cluster_id,\n                    Identify.cluster_id,\n                    PhilipsRemoteCluster,\n                    LightLink.cluster_id,\n                ],\n                OUTPUT_CLUSTERS: [\n                    Ota.cluster_id,\n                    Basic.cluster_id,\n                    Identify.cluster_id,\n                    Groups.cluster_id,\n                    OnOff.cluster_id,\n                    LevelControl.cluster_id,\n                    Scenes.cluster_id,\n                    LightLink.cluster_id,\n                ],\n            }\n        }\n    }\n\n    device_automation_triggers = {\n        (SHORT_PRESS, TURN_ON): {COMMAND: COMMAND_ON},\n        (SHORT_PRESS, TURN_OFF): {COMMAND: COMMAND_OFF_WITH_EFFECT},\n    }\n", "path": "zhaquirks/philips/rom001.py"}]}