      def __call__(self, X):
          return self.begin_update(X)[0]
  
      def begin_update(self, token_ids, drop=0.):
          cdef np.ndarray state_vector = numpy.zeros((token_ids.shape[0], self.nO*self.nP), dtype='f')
          # This is tricky, but (assuming GPU available);
          # - Input to forward on CPU
          # - Output from forward on CPU
          # - Input to backward on GPU!
          # - Output from backward on GPU
 
</s> remove             state_vector = state_vector.reshape(
                (state_vector.shape[0], self.nO, self.nP))
 </s> add  </s> remove                 d_vector = self.ops.backprop_maxout(d_best, mask, self.nP)
                return d_vector.reshape((d_vector.shape[0], self.nO*self.nP))
 </s> add                 return self.ops.backprop_maxout(d_best, mask, self.nP) </s> remove         lower = PrecomputableAffine(hidden_width * parser_maxout_pieces,
                    nF=cls.nr_feature, nI=token_vector_width)
 </s> add         lower = PrecomputableAffine(hidden_width,
                    nF=cls.nr_feature, nI=token_vector_width,
                    nP=parser_maxout_pieces)
        cdef np.ndarray state_vector = numpy.zeros(
            (token_ids.shape[0], self.nO, self.nP), dtype='f')
      def __call__(self, X):
          return self.begin_update(X)[0]
  
      def begin_update(self, token_ids, drop=0.):
        cdef np.ndarray state_vector = numpy.zeros(
            (token_ids.shape[0], self.nO, self.nP), dtype='f')
          # This is tricky, but (assuming GPU available);
          # - Input to forward on CPU
          # - Output from forward on CPU
          # - Input to backward on GPU!
          # - Output from backward on GPU
keep keep keep keep replace keep keep keep keep keep
 Make parser consistent if maxout==1 
spacy/syntax/nn_parser.pyx