Python 100% fastest with comments
\nclass Solution(object):\n    def addNegabinary(self, arr1, arr2):\n        """\n        :type arr1: List[int]\n        :type arr2: List[int]\n        :rtype: 
```\nclass Solution(object):\n    def addNegabinary(self, arr1, arr2):\n        """\n        :type arr1: List[int]\n        :type arr2: List[int]\n        :rtype: List[int]\n        """\n        # get lengths\n        m, n = len(arr1), len(arr2)\n        \n        # carry for positive and negative places\n        c_pos, c_neg = 0, 0 \n        \n        # reverse arrays for easier indexing\n        arr1[:], arr2[:] = arr1[::-1], arr2[::-1]\n        \n        # define starting place and output variables\n        i, out = 0, []\n        \n        # loop over all indices and sum\n        while i < max(m, n) or c_pos or c_neg:    \n            # extract number at each place handing indexing\n            n1 = 0 if i >= m else arr1[i]\n            n2 = 0 if i >= n else arr2[i]\n            \n            # handle case of even bases\n            if not i % 2:   \n                res = c_pos + n1 + n2\n                if res in [0, 1]:\n                    out.append(res)\n                    c_pos = 0\n                elif res > 1:\n                    out.append(res % 2)\n                    c_pos = 1\n                    c_neg = 1\n                else:\n                    out.append(-res)\n                    c_pos = 0\n                    c_neg = 1\n                \n            # handle case of odd bases\n            else:\n                res = c_neg + n1 + n2\n                if res in [0, 1]:\n                    out.append(res)\n                    c_neg = 0\n                else:\n                    out.append(res % 2)\n                    c_pos -= 1\n                    c_neg = 0\n            i += 1\n                \n        # remove any leading 0\'s due to handling carries:\n        while len(out) > 1 and not out[-1]:\n            out.pop()\n            \n        # reverse and return out array\n        out[:] = out[::-1]\n        return out\n                    \n```
[]