Simple Python Solution With Comment
\nclass Solution:\n    def addNegabinary(self, arr1: [int], arr2: [int]) -> [int]:\n        result_len = max(len(arr1), len(arr2)) + 2\n\t\t# reverse both array
```\nclass Solution:\n    def addNegabinary(self, arr1: [int], arr2: [int]) -> [int]:\n        result_len = max(len(arr1), len(arr2)) + 2\n\t\t# reverse both array\n        arr1 = arr1[::-1] + [0] * (result_len - len(arr1))\n        arr2 = arr2[::-1] + [0] * (result_len - len(arr2))\n\t\t# simply sum, then deal with 2s\n        result = [arr1[i] + arr2[i] for i in range(result_len)]\n\n\t\t# note [2, 1] becomes [0, 0]\n\t\t#  and [2, 0] becomes [0, 1, 1]\n        for i in range(result_len-2):\n            if result[i] >= 2:\n                if result[i + 1]:\n                    result[i] -= 2\n                    result[i + 1] -= 1\n                else:\n                    result[i] -= 2\n                    result[i + 1] += 1\n                    result[i + 2] += 1\n\t\t\n\t\t# remove extra 0s\n        while result != [0] and result[-1] == 0:\n            result = result[:-1]\n\n\t\t# reverse again\n        return result[::-1]\n```
['Python']